【发布时间】:2013-11-16 16:09:49
【问题描述】:
我正在尝试将 ajax 发布到同一个 php 页面。
阿贾克斯:
$("#loginForm").submit(function(e) {
e.preventDefault();
var postData = $(this).serialize();
$.post("login.php", postData);
});
postData 正确,格式如下:
username=john&password=123123
PHP(同一页面):
if (!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {
echo 'Ajax Request Detected';
}
然而,这个 if-check 总是返回 false 并且永远不会执行 echo 行。我在这里做错了什么?
【问题讨论】:
-
我可能会看看现有的代码,比如ZF's ContextSwitch helper。我认为非常简单:
return ($this->getHeader('X_REQUESTED_WITH') == 'XMLHttpRequest');假设答案也确实取决于服务器。
标签: php jquery ajax forms login