我只是尝试使用php和ajax从表中删除其行ID,但是当我点击按钮时它既没有显示错误也没有执行操作。
这是我的delete.php代码:
<?php
session_start();
include 'db.php';
if(isset($_GET['name'])){
$user = $_GET['name'];
$query = mysqli_query($con, "SELECT * FROM login WHERE username='$user'") or die (mysqli_error());
$result = mysqli_num_rows($query);
while($row = mysqli_fetch_array($query)){
$_SESSION['user'] = $row['username'];
}
}
$query = mysqli_query($con, "SELECT * FROM pm WHERE touser = '".$_SESSION['user']."' ORDER BY pmdate DESC" ) or die (mysqli_error());
$result = mysqli_num_rows($query);
while($row = mysqli_fetch_array($query)){
$id = $row['id'];
$delquery = mysqli_query($con, "DELETE * FROM pm WHERE id ='$id'") or die (mysqli_error());
$delresult = mysqli_num_rows($delquery);
}
?>
这里是html的ajax和删除代码
<a href="home.php?name='.$_SESSION['user'].'-delid='.$id.'" type="button" class="btn btn-danger btn-sm" id="delete"></a>
<script>
$("#delete").click(function() {
$.ajax({
type: "POST",
url: "delete.php",
success: function(response){
$("#messages").html(response);
}
});
});
</script>
<div id="messages"></div>
任何人都有任何想法吗?
答案 0 :(得分:0)
更改您的查询
- &GT;你的"DELETE * FROM pm WHERE id ='$id'"
- &GT;纠正"DELETE FROM pm WHERE id ='$id'"
你发送POST方法真正的AJAX,并在PHP代码中编写GET,更改它。
答案 1 :(得分:0)
您的代码中几乎没有问题
1.您没有向delete.php页面发送任何参数。请将记录ID发送到delete.php页面
2.从DELETE查询中删除*
3.您在HTML锚标记中添加PHP变量而不使用PHP标记。你需要更正链接
4.您需要在函数
答案 2 :(得分:0)
你设置 - &gt;键入:“POST”并在链接中使用GET方法 然后你用 - &gt; $ user = $ _GET ['name']; +您是否尝试在查询并回显查询之前回显GET / POST变量? +我猜您没有向您的页面发送任何内容...... +不要在DELETE查询中使用*