我精简了代码以使这个问题变得更简单。
这是我在文件顶部的 PHP...
if (isset($_POST['action'])) {
$field = $_POST['db_field'];
$value = $_POST['db_value'];
$fields=array('points'=>($value));
$db->update('teams',$field,$fields);
}
然后我在同一页面上有这个脚本...
<script type="text/javascript">
function performAjaxSubmission() {
$.ajax({
url: 'points3.php',
method: 'POST',
data: {
action: 'save',
field: $(this).attr("db_field"),
val: $(this).attr("db_value")
},
success: function() {
alert("success!");
}
});
return false; // <--- important, prevents the link's href (hash in this example) from executing.
}
jQuery(document).ready(function() {
$(".linkToClick").click(performAjaxSubmission);
});
</script>
然后我有 2 个 super 简单的按钮用于测试目的...... 点击这里-1 点击这里-2
目前,它基本上只是将 null 传递给数据库并给我一条成功消息。
如果我改变...
$field = $_POST['db_field'];
$value = $_POST['db_value'];
致...
$field = 233;
$value = 234;
它按照我的意愿将数字 234 放入我的数据库中项目 233 的正确列中。所以基本上该链接中的任何内容都没有正确传递到帖子中,但我不知道如何修复它。任何帮助都会很棒。
最佳答案
将数据变量更改为此
data: {
action: 'save',
db_field: $(this).attr("db_field"),
db_val: $(this).attr("db_value")
},
并且它不会发送空值
关于javascript - AJAX Sql 更新不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34538748/