これが初心者の質問である場合は申し訳ありませんが、私はまだ PHP に慣れていないため、この質問に対する答えが見つかりません。
mySQL テーブルをクエリし、結果から HTML テーブルを作成する php スクリプトがあります。これはすべて正常に機能します。そのスクリプトの一部として、ユーザーが選択した場合にデータベースから特定のレコードを 1 つずつ削除する機会をユーザーに与えるa<td>
を eachに追加します。<tr>
これを機能させるには、値の 1 つとして存在する、そのレコードの一意の識別子を php スクリプトに渡すことができる必要があります。問題は、この値を渡す方法がわからないことです。
HTML テーブルを構築する私の php スクリプトは次のとおりです。
while ($row = mysql_fetch_array($result)) {
echo
"<tr class=\"datarow\">" .
"<td id=\"id_hdr\">" . $row['id'] . "</td>" .
"<td id=\"name_hdr\">" . $row['name'] . "</td>" .
"<td id=\"btn_delete\">
<form action=\"delete_item.php\">
<input type=\"image\" src=\"images/delete.png\">
</form>
</td>" .
"</tr>";
}
したがって、どういうわけか、「delete_item.php」とともに「id」を明示的に渡すか、php 側でこの値を変数に取り込む方法を見つける必要があります。それを達成できれば、私は家から解放されます。
編集: 以下の両方の提案を実装しようとしていますが、そこに到達できません。これらの提案を読んだ方法に基づいてフォームを更新した方法は次のとおりです。
"<td id='btn_delete'>".
"<form action='scripts/delete_item.php'>".
"<img src='images/delete.png'>".
"<input type='hidden' id='uid' value='" . $row['id'] . "'>".
"<input type='submit' value='Submit'/>".
"</form>".
"</td>" .
次に、delete_item.php に次のように記述します。
$id = $_POST['uid'];
$sql = "DELETE FROM myTable WHERE id=$id";
$result = mysql_query($sql);
if (!$result) {
die("<p>Error removing item: " . mysql_error() . "</p>");
}
しかし、実行すると、次のエラーが表示されます。
アイテムの削除中にエラーが発生しました: SQL 構文にエラーがあります。1 行目の near '' を使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください。
そして最後にもう 1 つ: このアプローチにより、画像のすぐ下に「送信」という単語が表示されたボタンが表示されます。これはできれば持たないほうがいいです。
再度、感謝します!