さて、昨日、ユーザーが書いたブログ記事を保存する方法について質問しました。私はそれのデータベース側を理解しました、そしてそれはうまくいきます。ここで、onclick ボタンをクリックした後にブログ投稿を削除したいと考えています。Web を何時間も掘り下げた結果、jQuery AJAX 関数を呼び出すことが最善の方法であることがわかりました。私はそれを使いこなしてきましたが、これを機能させることはできません。
blog.php のデータベースから取得したブログ コード:
$connection = mysql_connect("...", "...", "...") or die(mysql_error());
$database = mysql_select_db("...") or die(mysql_error());
$query = mysql_query("SELECT * FROM template") or die(mysql_error());
$template = mysql_fetch_array($query);
$loop = mysql_query("SELECT * FROM content ORDER BY content_id DESC") or die (mysql_error());
while ($row = mysql_fetch_array($loop))
{
print $template['Title_Open'];
print $row['title'];
print '<button class="deletePost" onClick="deleteRow(' . $row['content_id'] . ')">Remove Post</button>';
print $template['Title_Close'];
print $template['Body_Open'];
print $row['body'];
print $template['Body_Close'];
}
mysqli_close($connection);
これにより、home.php に次の HTML が作成されます。
<div class="blogtitle" class="post3">Title
<button class="deletePost" onClick="deleteRow(3)">Remove Post</button></div>
<div class="blogbody" class="post3">Content</div>
ボタンがクリックされたときに私のremove.jsを呼び出す必要があります(これは、私がやっていることを失い始める場所です):
$function deleteRow(id){
$.ajax({
url: "remove.php",
type: "POST",
data: {action: id}
});
return false;
};
remove.php の呼び出し (私が何をしているのかわかりません):
$con=mysqli_connect("...","...","...","...");
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$id = $_POST['action'];
$query = mysql_query("DELETE FROM content WHERE content_id=$id") or die(mysql_error());
ここでの私の目標は、テーブルから ID を持つ行を削除することです。これにより、データベース テーブルをループするときに行が表示されないため、ブログ投稿が完全に削除されます。
何か案は?
助けてくれてありがとう、カイル