ci检测是ajax还是页面post提交数据的方法


Posted in PHP onNovember 10, 2014

本文实例讲述了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');

记得在用THINKPHP的时候有内置两个常量 IS_AJAX 与 IS_POST,想在ci中使用查了半天好像没有找到,那就自动动手丰衣足食
在项目的config/constants.php 配置文件加上上边两行代码,这下你就可以在所有的方法中直接调用
例如:

if(IS_POST){

 ...

}

if(IS_AJAX){

...

}

希望本文所述对大家的CI框架程序设计有所帮助。

PHP 相关文章推荐
PHP中的加密功能
Oct 09 PHP
在数据量大(超过10万)的情况下
Jan 15 PHP
PHP 根据IP地址控制访问的代码
Apr 22 PHP
几款免费开源的不用数据库的php的cms
Dec 19 PHP
兼容性最强的PHP生成缩略图的函数代码(修改版)
Jan 18 PHP
php入门学习知识点八 PHP中for循环基本应用之九九乘法口绝表
Jul 14 PHP
解析php中反射的应用
Jun 18 PHP
php实现12306余票查询、价格查询示例
Apr 17 PHP
PHP滚动日志的代码实现
Jun 10 PHP
Yii2 输出xml格式数据的方法
May 03 PHP
php 解决substr()截取中文字符乱码问题
Jul 18 PHP
PHP laravel中的多对多关系实例详解
Jun 07 PHP
php采用ajax数据提交post与post常见方法总结
Nov 10 #PHP
php学习笔记之面向对象
Nov 08 #PHP
php学习笔记之基础知识
Nov 08 #PHP
推荐一款MAC OS X 下php集成开发环境mamp
Nov 08 #PHP
php使用fgetcsv读取csv文件出现乱码的解决方法
Nov 08 #PHP
php中file_get_contents与curl性能比较分析
Nov 08 #PHP
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 2611816 bytes)
Nov 08 #PHP
You might like
PHP序列号生成函数和字符串替换函数代码
2012/06/07 PHP
php控制linux服务器常用功能 关机 重启 开新站点等
2012/09/05 PHP
thinkphp浏览历史功能实现方法
2014/10/29 PHP
深入解析PHP的Laravel框架中的event事件操作
2016/03/21 PHP
Yii实现简单分页的方法
2016/04/29 PHP
golang与PHP输出excel示例
2016/07/22 PHP
php使用curl_init()和curl_multi_init()多线程的速度比较详解
2018/08/15 PHP
用php实现分页效果的示例代码
2020/12/10 PHP
Javascript实例教程(19) 使用HoTMetal(2)
2006/12/23 Javascript
javascript 面向对象编程 聊聊对象的事
2009/09/17 Javascript
Jquery命名冲突解决的五种方案分享
2012/03/16 Javascript
IE事件对象(The Internet Explorer Event Object)
2012/06/27 Javascript
AngularJS的内置过滤器详解
2015/05/14 Javascript
js文本框走动跑马灯效果代码分享
2015/08/25 Javascript
JavaScript定义数组的三种方法(new Array(),new Array('x','y')
2016/10/04 Javascript
在vue.js中抽出公共代码的方法示例
2017/06/08 Javascript
基于bootstrap页面渲染的问题解决方法
2018/08/09 Javascript
Nodejs模块的调用操作实例分析
2018/12/25 NodeJs
微信小程序(订阅消息)功能
2019/10/25 Javascript
JS+html5实现异步上传图片显示上传文件进度条功能示例
2019/11/09 Javascript
Python字符串、元组、列表、字典互相转换的方法
2016/01/23 Python
Python使用matplotlib绘制随机漫步图
2018/08/27 Python
python实现把两个二维array叠加成三维array示例
2019/11/29 Python
Python while循环使用else语句代码实例
2020/02/07 Python
快速解决jupyter启动卡死的问题
2020/04/10 Python
使用CSS变量实现炫酷惊人的悬浮效果
2019/04/26 HTML / CSS
马来西亚最大的电器网站:Senheng
2017/10/13 全球购物
自1926年以来就为冰岛保持温暖:66°North
2020/11/27 全球购物
股权转让协议书
2014/04/12 职场文书
优秀少先队辅导员先进事迹材料
2014/05/18 职场文书
保洁公司服务承诺书
2014/05/28 职场文书
实习单位鉴定意见
2015/06/04 职场文书
2019森林防火宣传标语大全!
2019/07/03 职场文书
基于PostgreSQL/openGauss 的分布式数据库解决方案
2021/12/06 PostgreSQL
httpclient调用远程接口的方法
2022/08/14 Java/Android
CSS 鼠标点击拖拽效果的实现代码
2022/12/24 HTML / CSS