下面是视觉我的网站看起来像此刻:如何使用AJAX和PHP通过仅使用ID删除MySQL数据库和屏幕上的文件?
为视图/ HTML PHP代码:
<?php
$sth = $db->prepare("SELECT id, first_name, last_name FROM wlist");
$sth->execute();
$results = $sth->fetchAll();
foreach ($results as $result) {
echo "<tr><td>".$result['first_name']."</td><td>".$result['last_name']."</td><td><button class=\"delete_class\" id=\"".$result['id']."\" >DELETE</button></td></tr>";
}
?>
此PHP页面的底部,是此javascript F(X):
<script>
$(".delete_class").click(function(){
var del_id = $(this).attr('id');
$.ajax({
type:'POST',
url:'delete_page.php',
data: {delete_id : del_id},
success: function (data) {
if (data) {
tx.executeSql('DELETE from MYDBTABLE WHERE id = ?', [delete_id], success, error);
}
else { // DO SOMETHING ON FAILURE
}
}
});
});
</script>
与上面的代码的问题是,成功无论结果如何,总会回来。这和我有点困惑,只有彻底删除该行/表的父母属性的正确方法
我在与包含所有上述代码的PHP文件相同的文件夹中的“delete_page.php”。此文件有此代码:
<?php
$id = $_POST['delete_id'];
$query = "DELETE from MYDBTABLE where ID = $id";
?>
我在寻找最有效的方式来格式化我的delete.php文件以及ajax函数。
有你的调试器去?是否有任何XHR活动? –
要更新网页(屏幕)上的内容而不点击浏览器刷新按钮,应该在DOM上使用JavaScript。 jQuery是DOM操作中的一个很好的库,additionnaly,你已经通过'$ .ajax'使用它了,所以用jquery(比如'$ .remove()'或'$ .empty()')搜索元素删除函数。 –
是根据URL结构在同一个文件夹中的“delete_page.php”吗?如果原始脚本是example.com/list.php,但您的网址是example.com/admin/list-users/,那么此JS代码将搜索example.com/admin/list-users/delete_page.php – PetrHejda