hi,欢迎访问本站!
当前位置: 首页php教程正文

php怎么判断是不是ajax请求

xiaoqihv php教程 170阅读

在php脚本中,可以通过判断 $_SERVER["HTTP_X_REQUESTED_WITH"] 是否存在以及其值的类型,来判断数据是不是通过 js ajax方法来提交的,这对php的安全性是很有帮助的。

php 判断是否ajax提交的方法

当 $_SERVER["HTTP_X_REQUESTED_WITH"] 存在并且其值为"xmlhttprequest"时,可认为数据是通过ajax提交的。

例1:

//73so.comif(isset($_SERVER["HTTP_X_REQUESTED_WITH"]) && strtolower($_SERVER["HTTP_X_REQUESTED_WITH"]) == 'xmlhttprequest'){    echo '是ajax的请求!';}else{    echo '不是ajax的请求';}

例2:

/** * @name 判断是否为 ajax 提交 *  * @return bool  * @host 73so.com */function isAjax(){    return isset($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest';}

PS:如果ajax是跨域提交的数据,php通过上面的方法是无法来判断是否为ajax提交的。即使在提交时,html头中包含了'HTTP_X_REQUESTED_WITH' 协议,也是无法做出判断的,这一点要注意。

标签:
声明:无特别说明,转载请标明本文来源!