[ad_1]
Estoy seguro de dos cosas: funcionó para mi profesor pero no para mí, y estoy seguro de que el error proviene de la parte de eco en este código a continuación, no de otro lugar.
Para que puedas probar cosas tú mismo, te proporcioné mi trabajo en un enlace. http://agencedevoyages.tk/[^]
introduce la dirección: abc@gmail.com
y la contraseña es: 2
o inicia sesión con un nuevo usuario de tu elección.
Código de error:
<?php session_start(); ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Accueil</title> </head> <body> <?php if(isset($_SESSION['email']) AND isset($_SESSION['password'])) { echo "<b>Bienvenue ".$_SESSION['prenom']." ".$_SESSION['nom']." !"; echo "<div align='right'><a align='right' href='deconnect.php'><button type='button'>Se déconnecter</button></a></div>"; ?> <table border="1" align="center"> <caption><b><h1>La liste des étudiants</h1></caption> <tr><td align="center"><b>Photo</td> <td align="center"><b>Matricule</td> <td align="center"><b>Nom</td> <td align="center"><b>Prénom</td> <td align="center"><b>Adress</td> <td align="center"><b>Birthday</td> <td align="center"><b>E-mail</td> <td align="center" colspan="2"><b>Option</td> <td align="center"><b>Multiple Deletion</td> <td align="center"><b>Upload</td></tr> <?php include 'connect.php'; $sql = "SELECT * FROM etudiant"; $res = mysqli_query($connect, $sql); if (mysqli_num_rows($res)>0){ while($row = mysqli_fetch_assoc($res)) { echo "<tr><td>"; ?> <?php if(empty($row['photo'])) { ?> <img src='photos/image.jpg' width="100" height="100"> <?php } else { ?> <img src='photos/<?php echo $row['photo'] ?>' width="100" height="100"> <?php } echo "</td>"; echo "<td align='center'>".$row['matricule']."</td>"; echo "<td align='center'>".$row['nom']."</td>"; echo "<td align='center'>".$row['prenom']."</td>"; echo "<td align='center'>".$row['adresse']."</td>"; echo "<td align='center'>".$row['date_naissance']."</td>"; echo "<td align='center'>".$row['email']."</td>"; if($_SESSION['email']==$row['email'] OR $_SESSION['email']=='abc@gmail.com') { echo "<td><a href='modif.php?id=".$row['id']."'><button type='button'>Edit</button></a></td>"; echo "<td><a href='supp.php?id=".$row['id']."'><button type='button'>Delete</button></a></td>"; // error part echo "<form method='post' action='supp3.php'><td align='center'><input type='checkbox' name='sup[]' value='".$row['id']."'></td></form>"; echo "<form method='post' action='upload.php' enctype='multipart/form-data'><td align='center'><input type='file' name='fichier'><input type='submit' value='Confirm'></td><input type='hidden' name='id' value='".$row['id']."'></td></tr>"; } } echo "<tr><td colspan='9'></td><td colspan='1' align='center'><button>Multiple Deletion</button></td></tr></form>"; } //end of error part else { echo "<tr><td colspan ='10' align='center'>No users.</td></tr>"; $sql = "TRUNCATE etudiant"; $res = mysqli_query($connect, $sql); } ?> </table> <p align="center"><a href="ajout.php"><button>Add a user</button></a></p> <?php } else { echo "<div align='center'><b><h1>Not allowed."; echo "<br><a href='index.php'><button type='button'>Back</button></a></div>"; } ?> </body> </html>
Lo que he probado:
– Cerrar < / form > en la condición de eco de Eliminación múltiple, y no en la de carga, me permite eliminar varios usuarios pero no puedo cargar imágenes.
– Lo mismo pasa cuando lo guardo para ambos.
– Eliminar < / form > del eco de eliminación múltiple y mantenerlo en la condición de eco de Uplaod me impide eliminar varios usuarios, pero sí puedo cambiar la imagen del usuario (lo que significa que la carga funciona y la eliminación no).
– Quitar el
cerrado de ambas condiciones hace que MD funcione y no se cargue.
Todavía estoy tratando de encontrar una manera de hacer que ambos funcionen al mismo tiempo.
Solución 1
Lo que has demostrado ciertamente no trabajo para tu profesor:
- no puedes anidar
<form>
elementos. Su formulario de “carga” nunca se cierra, por lo que cada formulario posterior se anida dentro de los formularios de las filas anteriores. - A
<form>
El elemento no puede aparecer directamente dentro de un<tr>
elemento. Solo<td>
y<th>
Se permiten elementos dentro de un<tr>
elemento.
Para empezar, necesitarás mover el <form>
elementos adentro el <td>
elementos y asegúrese de que estén cerrados en el orden correcto.
<td><form> ... </form></td>
Sin embargo, no está claro qué debe hacer la casilla de verificación. Si desea enviar el ID de varias filas, esto no funcionará: cada formulario solo contendrá la casilla de verificación de su propia fila.
[ad_2]
コメント