【解決方法】1 つのテーブルで 2 つの を使用するにはどうすればよいですか

プログラミングQA


私の教授ではうまくいきましたが、私ではうまくいきませんでした。エラーは、別の場所からではなく、以下のコードのエコー部分から発生していると確信しています。

自分で試していただけるように、リンクで私の作品を提供しました http://agencedevoyages.tk/[^]

アドレスを入力してください: abc@gmail.com
パスワードは次のとおりです。2
または、選択した新しいユーザーでサインインします。

エラーコード:

PHP
<?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>

私が試したこと:

– 複数の削除エコー状態で を閉じると、アップロード状態ではなく、複数のユーザーを削除できますが、写真をアップロードできません。
– 両方に保管しても同じことが起こります。
– < / form > を複数削除エコーから削除し、アップロード エコー状態のままにすると、複数のユーザーを削除できなくなりますが、ユーザーの画像を変更できます (つまり、アップロードは機能し、削除は機能しません)。
– 閉じた を両方の条件から削除すると、MD が機能し、アップロードが機能しなくなります。

両方を同時に機能させる方法をまだ見つけようとしています。

解決策 1

あなたが確かに示したこと しませんでした あなたの教授のために働く:

  • 入れ子にすることはできません <form> 要素。 「アップロード」フォームが閉じられることはないため、後続の各フォームは前の行のフォーム内にネストされます。
  • <form> 要素内に直接表示することはできません <tr> エレメント。 それだけ <td><th> 要素は <tr> エレメント。

まず、移動する必要があります <form> 要素 中身<td> 要素を正しい順序で閉じていることを確認してください。

HTML
<td><form> ... </form></td>

ただし、チェックボックスの目的が明確ではありません。 複数の行から ID を送信したい場合、これは機能しません。各フォームには、その行のチェックボックスのみが含まれます。

コメント

タイトルとURLをコピーしました