我正在尝试使用带有jquery的表单提交而不刷新页面,如本教程所示: submite a form without page refresh using jquery demo
它使用$ .ajax函数发布值,我在下面包含这些值:
$.ajax({
type: "POST",
url: update.php,
data: dataString, // dataString's value is 'id=5'
success: function() { ... };
});
这对我来说是交换我在表单周围的包装器...
然而,当我尝试处理update.php中的数据中的dataString时(我用它来更新MySQL数据库中的条目),我什么都没得到。
在update.php中,
我有......
<?php
require_once('DB.php');
$dbh = DB:: connect(...);
if (DB::iserror($dbh)) {
die(...);
}
$aid = isset($_POST['id']);
// 'id' column datatype is INT
$sql = "UPDATE [table] SET x = 'blah' WHERE id = ".aid.";";
$result = $dbh->query($sql);
- 无论如何,数据库都不会更新。有没有人看到一个我没有的明显问题(请注意:我是jquery和AJAX等的新手)看到了什么?我尝试使用Safari的开发人员菜单来跟踪错误,但我无法弄清楚如何跟踪update.php组件。另外,我不确定如何将print_r或var_dump应用于update.php页面中的变量,因为我是在调用我的.js文件中的函数的页面中单独发布的。我接近这个错误吗?任何帮助将不胜感激 - 提前致谢!
答案 0 :(得分:1)
:
$aid = isset($_POST['id']);
而不是(我猜):
$aid = intval($_POST['id']);
答案 1 :(得分:0)
知道了......你不可能看到问题,因为我没有在这里输入它...我最近有一些'$'添加到我的某些功能上的倾向 - _-然而,我确实遇到了“curl”,让我直接在shell环境中发布到文件中,看到我通常无法看到的输出......这是最有用的。