我如何识别对同一页面的ajax调用

时间:2012-12-11 06:15:27

标签: javascript ajax jquery

$(document).ready(function(){
    var temp='getUser';
    $.ajax ({
                type:'GET';
                url: 'listdetails.php?ud=temp';

                success:function(data)
                        {
                            alert(data);
                        }

           });

});

通过使用这个jquery,我调用相同的页面“listdetails.php”(即:这个jquery在listdetails.php中)。这是我在页面开头输入的代码

if($_GET['ud'] =="getUser")
{

    echo "ok";
}

当我加载页面时,它显示错误“注意:未定义的索引:第8行的C:\ wamp \ www \ listdetails.php中的ud”

即:变量ud未定义。如何避免此错误。我认为,如果条件需要仅在页面请求是ajax时检查,是否可以检查页面请求是ajax?

2 个答案:

答案 0 :(得分:0)

使用isset

if(isset($_GET['ud']) && $_GET['ud'] =="getUser")
{

    echo "ok";
}

要专门检查AJAX请求,请尝试

if(isset($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest')

但HTTP标头很容易被欺骗。

答案 1 :(得分:0)

你肯定不会进入$ _GET bcoz的if循环,ajax的url没有正确制作。我写了下面的代码,检查一下

var temp='getUser';
$.ajax ({
        type:'GET',
        url: 'listdetails.php?ud='+temp, // your code --- url: 'listdetails.php?ud=temp';

        success:function(data)
        {
              alert(data);
        }

});