PHP+MySQLで掲示板を作ろう⑥ データの削除
2020年08月06日
「削除」リンクについて
すでに「index.php」にリンクがありますが、これは delete.php へ値を渡しているコードです。
送りたいファイルに、?を付けて「id」 の値を持たせています。
<a href='delete.php?id={$row['id']}'>削除</a>
リンクにカーソルを持っていくと、 「id=1」 と表示されます。
delete.php を作成する
save.php をコピーして貼り付け、名前を delete.php に変更します。
削除と変更
下図のように削除します
続けて、下図のように変更・追加します。
フォームから値を受け取るときは、$_POST[~] ですが、
リンクから値を受け取るときは、$_GET[~] になります。
クエリの発行
//記事削除
$sql = "delete from bbs_data where id = :id";
$stmt = $dbh->prepare($sql);
$stmt -> bindValue(':id', $id, PDO::PARAM_STR);
$stmt -> execute();
echo "<p>削除しました<p>";
}else{
echo "<p>削除できませんでした<p>";
}
$sql = "DELETE FROM bbs_data WHERE id = :id";
送られてきた「id」と同じ「id」 のデータをbbs_dataテーブルから消してね、
という内容。
試しに消してみます。
テーブルを確認
データが削除されたので、HOMEで戻ると データは表示されません。
以上で「PHP+MySQLで掲示板を作ろう」は終了です。
お疲れ様でした。
今回は最初から作成するのではなく「改造」をしてみました。
いきなりコツをつかむのは難しいと思いますが、コードが何をしているのか把握すると理解しやすいと思います。
これで終わりではなく、ダイレクトに削除をしているので、確認画面などを挟んだり、 セキュリティを考慮してパスワードの入力をするなど、さらにアレンジをしてみてください。
長丁場、お付き合いいただきありがとうございました。参考になれば幸いです。
最終更新日:2023/07/20