ci检测是ajax还是页面post提交数据的方法
程序员文章站
2022-12-23 23:12:17
本文实例讲述了ci检测是ajax还是页面post提交数据的方法。分享给大家供大家参考。具体实现方法如下:
一、问题:
因为项目需要我们希望知道提交数据来源是由ajax提...
本文实例讲述了ci检测是ajax还是页面post提交数据的方法。分享给大家供大家参考。具体实现方法如下:
一、问题:
因为项目需要我们希望知道提交数据来源是由ajax提交过来的数据还是由页面的post提交过来的数据从而进行不同层面上的处理。
二、解决方法:
在php中解决方法如下:
如果是ajax请求,以下表达式的值为真
复制代码 代码如下:
$_server["http_x_requested_with"]=="xmlhttprequest"
就是一个php的环境变量。
ci中处理办法:
复制代码 代码如下:
define('is_ajax', isset($_server['http_x_requested_with']) && strtolower($_server['http_x_requested_with']) == 'xmlhttprequest');
define("is_post", strtolower($_server['request_method']) == 'post');
define("is_post", strtolower($_server['request_method']) == 'post');
记得在用thinkphp的时候有内置两个常量 is_ajax 与 is_post,想在ci中使用查了半天好像没有找到,那就自动动手丰衣足食
在项目的config/constants.php 配置文件加上上边两行代码,这下你就可以在所有的方法中直接调用
例如:
复制代码 代码如下:
if(is_post){
...
}
if(is_ajax){
...
}
...
}
if(is_ajax){
...
}
希望本文所述对大家的ci框架程序设计有所帮助。