很抱歉发布一个已经在 SO 上多次被问过的问题,但我已经经历了许多这些问题,但仍然无法解决我自己的问题。
我有一个索引页面“index.php”,其中包含一个 JQuery 脚本,旨在将 ID 号发布到同一目录中的“delete.php”。'delete.php' 然后应该从 MySQL 数据库中删除与该 ID 号匹配的行。“index.php”还应该从 HTML 中删除已删除的项目。
最后一点,从 HTML 中删除项目,虽然我在错误控制台中得到“200 OK”响应,但“delete.php”什么也没做——我已经检查了 echo 语句并且不运行。
代码索引.php:
<!DOCTYPE html>
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.min.js"> </script>
<script>
jQuery(document).ready(function(){
$(".deleteitem").click(function(){
var parent = $(this).closest('tr');
var id = parent.attr('id');
$.ajax({
type: "POST",
URL: "delete.php",
data: "id=" +id,
success: function(data){
$('#'+id).remove();
}
});
});
});
</script>
</head>
<body>
<table>
<tr id="1">
<td>Milk</td>
<td>3.99</td>
<td><button class="deleteitem"><img src="deletebutton.gif"></button></td>
</tr>
<tr id="2">
<td>Bread</td>
<td>1.99</td>
<td><button class="deleteitem"><img src="deletebutton.gif"></button></td>
</tr>
</table>
</body>
</html>
删除.php:
<?php
mysql_connect("localhost", "root", "") or die(mysql_error());
mysql_select_db("tryit") or die(mysql_error());
$id = $_POST[id];
echo "DELETE.PHP HAS RUN<br>";
echo "ID = $id";
if (isset($id)) {
$query = "DELETE FROM tryit WHERE id = '$id'";
mysql_query($query) or die('Error, query failed');
}
?>
任何关于为什么这不起作用的线索都非常感谢 - 这让我很生气!