在关注本网站的几个例子后,我想我即将这样做,但仍然无法做到。
我有这段代码:
HTML
...
<a href="javascript:void(0);" class="button red big" style="font-size:24px;" onclick="update_it(<?=$_REQUEST["yeah"]["id"];?>);">Pay</a>
...
AJAX
function update_it(n_id){
$.ajax({
type: 'POST',
url: 'update_yes.php',
data: {idd: n_id},
success: function(output)
{
alert('Updated, server says '+n_id);
}, error: function()
{
alert('Wrong!');
}
});
}
PHP
<?php
$link = mysqli_connect("localhost", "root", "****", "****");
$sql = "DELETE FROM stuff WHERE id = " .$_POST["idd"];
mysqli_query($link,$sql) or die(mysql_error());
?>
一切都有效,但PHP(我认为)。我这样说是因为我可以看到HTML如何正常工作以及AJAX函数如何返回成功消息,但数据库中仍然没有任何反应。
我在AJAX函数的数据字段中尝试了不同的结构,如data: 'idd': n_id,
或data: 'idd=' n_id,
,但似乎没有任何效果。
我做错了什么?任何提示或建议?提前谢谢。
答案 0 :(得分:1)
我在Winodws上使用apache MySQL和php。我有同样的问题。 我有我的更新脚本,由AJAX调用
然后......我没有得到任何更新,因为它是AJAX查询中的错误,它在服务器端脚本中调用UPDATE语句。但是,如果您在任何保存(更新)数据之前对其进行了一些更改,它将会起作用。
我使用REPLACE
语句而不是UPDATE
。
我花了很多时间寻找这个解决方案,真的太多了。我无法理解为什么会发生这种情况,因为当我在服务器上使用自己的params调试整个脚本并且一切正常时,但是当Ajax然后只帮助REPLACE时。
答案 1 :(得分:0)
你应该添加退出; php代码末尾的语句。回应一些成功的声明。然后你应该在javascript中警告输出变量。这样你就可以确保调用php代码了。
答案 2 :(得分:0)