【发布时间】:2014-03-20 18:45:38
【问题描述】:
我一直在努力让 AJAX 与 Jquery 一起工作。到目前为止,我最大的问题是我真的不知道如何找出我在哪里犯了错误。我真的没有调试 AJAX 调用的好方法。
我正在尝试设置一个管理页面,其中我想要执行的功能之一是更改我的 SQL 数据库中设置的权限。我知道 .click 函数正在被触发,所以我缩小了范围,但我不确定从 AJAX 调用到 SQL 查询的链中哪里出错了。
我的 .js 代码:
$('#ChangePermission').click(function(){
$.ajax({
url: 'change_permission.php',
type: 'POST',
data: {
'user': document.GetElementById("user").value,
'perm': document.GetElementById("perm").value
}
})
})
我的 .php 处理程序:
<?php
require_once(functions.php);
echo $_POST["user"];
try{
$DBH = mysql_start();
$STH = $DBH->prepare("INSERT INTO people ( username, permissions ) values (?, ?)");
$STH->bindParam(1, $_POST["user"]);
$STH->bindParam(2, $_POST["perm"]);
$STH->execute();
}
catch(PDOException $e){
echo $e->getMessage;
}?>
mysql_start 是为我在其他 SQL 调用中成功使用的 PDO 函数设置的。
我这几天一直在研究和查找教程,但我终生无法弄清楚出了什么问题。是否有工具可以用来找出错误发生的位置?我显然对这个特定问题的答案很感兴趣,但我认为我在这里更大的问题是我不知道从哪里开始调试。感谢您的帮助!
【问题讨论】:
-
require_once('functions.php');? -
看看这篇文章是否有帮助:stackoverflow.com/questions/6991306/…
-
首先,你的
$_POST["user"]真的有价值吗? -
为 ajax 调用设置成功和错误处理程序,并将日志记录在两者中。然后你可以看到发生了什么。
-
在 IE 中使用 F12,Network Sniffer。 或者当今所有浏览器中嵌入的网络嗅探器。但您实际上可能会问如何跟踪 Ajax 调用的结果,而不是调试它...
标签: javascript php jquery ajax