我正在通过jQuery的AJAX方法调用一个文件,如下所示:
$is_ajax = $_REQUEST['is_ajax'];
if(isset($is_ajax) && $is_ajax)
{
echo 'its ajax!';
}
else echo 'im called, but not via ajax';和我的AJAX调用:
jQuery.ajax({
type: 'POST',
url: 'my-service.php',
data: data,
success: function(response) {
alert(response);
}
});但是alert总是显示'not ajax‘消息。我做错了什么?
发布于 2012-10-23 18:12:27
需要添加通过AJAX调用发送的数据中的is_ajax: 1。
发布于 2012-10-23 18:15:23
您检测AJAX的方法似乎是错误的。如果你的服务器支持HTTP_X_REQUESTED_WITH,那么这就是解决之道:
if(!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {
/* special ajax here */
die($content);
}来源:Detect an AJAX Request
发布于 2012-10-23 18:12:56
试试这个:
jQuery.ajax({
type: 'POST',
url: 'my-service.php',
data: {is_ajax:1},
success: function(response) {
alert(response);
}
});https://stackoverflow.com/questions/13028092
复制相似问题