【发布时间】:2021-05-28 21:43:45
【问题描述】:
我很想从我的数据库中删除一些记录,但没有转到 delete.php 文件或刷新页面。
我试过这个代码:
lieferant.php
<td> <?php echo $row['lieferantID']; ?> </td>
<td> <?php echo $row['lieferantname']; ?> </td>
<td> <?php echo $row['kontakt']; ?> </td>
<td> <?php echo $row['mail']; ?> </td>
<td> <button type="button" id="<?php echo $row['lieferantID']; ?>" class="delete-btn">Delete</button></td>
<script type="text/javascript" >
$(function() {
$(".delete-btn").click(function() {
var del_id = $(this).attr("id");
var info = {"lieferantID": del_id};
if (confirm("Are you sure?")) {
$.ajax({
type : "POST",
url : "delete.php", //URL to the delete php script
data : info,
success : function() {
}
});
$(this).parents(".record").animate("fast").animate({
opacity : "hide"
}, "slow");
}
return false;
});
});
</script>
删除.php
$lieferantID=$_POST['lieferantID'];
$delete=mysqli_query($connection,"DELETE FROM 'lieferant' WHERE lieferantID='$lieferantID'");
$result = mysqli_query($delete) or die(mysqli_error());
不幸的是,它不起作用。当我将行的 ID 手动放入查询中时,它将被删除而无需转到 delete.php,但我仍然必须刷新页面才能看到记录已消失,所以我的问题是:
1.如何将'lieferantID'(行的ID)传递给我的delete.php,以便它自动工作 2.页面如何“刷新”自身?
感谢您的帮助:)
【问题讨论】:
-
var del_id = $(this).attr("lieferantID");你的按钮是否真的有一个名为lieferantID的属性? -
您好,
$(this).attr("lieferantID")应该是$(this).attr("id")。还要将此type="button"添加到您的按钮 -
你有一个错误。
mysqli_error()需要一个参数。请考虑打开错误模式。 How to get the error message in MySQLi? -
错字:
'lieferantID' + del_id;应该是'lieferantID=' + del_id;或者更好地将其维护为对象而不是字符串 -
@Swati 我改变了你们所说的一切,但它仍然不起作用:/
标签: javascript php sql mysqli