【发布时间】:2019-11-17 22:51:40
【问题描述】:
我目前正在尝试实现一个“删除”按钮,用于清除 MySQL 表中的所有数据。我发现它比提交按钮要困难得多。
研究过的例子都显示了如何逐行执行,但我只有一个“删除”按钮。我相信我目前还有很长的路要走,因为我正试图提出一个基于提交 Ajax 功能的解决方案。
目前:
HTML
<button class="myButton" id="delete" type="delete">DELETE</button>
JavaScript(我认为这是我挂断的地方)
function deleteMessage() {
$.ajax({
type: 'POST',
url: 'info_message.php',
async: false,
//data: ,
success: function(response) {
if (response == "success") {
successPopup("Successfully deleted message");
}
else {
alert("Unable to delete message. " + response);
}
}
});
}
PHP(或这里???)
if (isset($_POST['deleteMessage'])) {
$message = $_POST['message'];
// Deletes all records in Announcement table
$query = "DELETE from Announcement";
if ($dbc->query($query) === FALSE) {
echo "Error: " . $query . "<br>" . $dbc->error;
}
else {
echo "success";
}
exit();
}
【问题讨论】:
-
您没有在 ajax 调用中将任何数据传递给 PHP 文件...
//data: , -
@Nick 好的,我想这让我想到了这个问题。我将如何传递或传递什么数据以使其从 sql 表中删除所有数据?
-
您的查询是否有效? @flyboy 你也看到下面给出的答案了吗?
-
顺便说一句,如果它是一个大表,并且你不关心其他并发事务,'TRUNCATE TABLE Announcement'会更快。它可能需要对用户额外的 GRANT 才能运行(如果原始数据库用户根据最佳实践受到限制)。
标签: javascript php html mysql ajax