ci检测是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){
...
}
时间: 2024-11-03 23:00:04

ci检测是ajax还是页面post提交数据的相关文章

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

本文实例讲述了ci检测是ajax还是页面post提交数据的方法.分享给大家供大家参考.具体实现方法如下: 一.问题: 因为项目需要我们希望知道提交数据来源是由ajax提交过来的数据还是由页面的post提交过来的数据从而进行不同层面上的处理. 二.解决方法: 在php中解决方法如下: 如果是ajax请求,以下表达式的值为真 复制代码 代码如下: $_SERVER["HTTP_X_REQUESTED_WITH"]=="XMLHttpRequest" 就是一个PHP的环境

用struts1框架对JSP页面注册提交数据问题

问题描述 用struts1框架对JSP页面注册提交数据问题 在JSP页面实现注册功能,在注册内容里有多选框,怎么把多选框的数据插入到数据库,使用struts1框架做的,是在action里面处理吗,还是form? 求大牛帮帮忙,谢谢! 解决方案 在form表单里面用action,method传输方式 解决方案二: action中通过requst获得参数

myeclipse-mysql+Myeclipse 在页面上提交数据的时候出错

问题描述 mysql+Myeclipse 在页面上提交数据的时候出错 Servlet.service() for servlet [default] in context with path [/tushu] threw exception [java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)] with root causejava.sql.SQLException: Ac

ajax post get方式提交数据详解

ajax有两种提交数据的方式,分别为get和post.post方法可传输大于2K的数据,在Ajax里的应用不同之处在于:"post方法的请求地址与传输的数据是放在两个对象里--请求地址放在open对象里,传输的数据放在send对象里:并且在传输数据之前定义一个传输文件HTTP头信息(setRequestHeader)" 用上循环就是为了在数据发送前进行合理的处理,解决在脚本语言对数据进行另外需求处理时出现的超时现象.处于对ajax认识未深,如有说得不对或不到位的,还请指教. ajax中

webapi-.NET MVC4.0如何从后台POST提交数据给WEBapi,不用AJAX 形式 post 提交?

问题描述 .NET MVC4.0如何从后台POST提交数据给WEBapi,不用AJAX 形式 post 提交? .NET MVC4.0如何从后台POST提交数据给WEBapi,不用AJAX 形式 post 提交? 解决方案 http://www.asp.net/web-api/overview/web-api-clients/calling-a-web-api-from-a-net-client 微软给的例子 解决方案二: 后台用httpwebrequest对象,前台才是ajax,这个要分清出来

插件-ajax html页面之间的提交与接收

问题描述 ajax html页面之间的提交与接收 使用了lhgdialog.min.js插件,需要将父页面的一个参数传到子页面,两个页面都是html的 ,想到了用ajax传,但是一直不成功,不知道是没发出去还是没接收到,急求代码,c币有限但已经是全部了,谢谢 解决方案 可以通过 HTML 的URL 带参数 解决方案二: 如果你的子页面是iframe加载的,在iframe中通过parent得到父页的window作用域,直接调用父页的变量什么的就行,前提是没有跨域 跨域了可以使用url传递参数 解决

ajax跨页面提交表单_AJAX相关

前面提到过重复提交表单问题,处理token口令校验.重定向之外,还有一种经常使用到的方法就是新页面处理表单提交,完成后关闭当前页面,并刷新之前发送请求的页面. 这里使用了artDialog.js 1.文件结构 2.user.jsp <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@ taglib uri="/struts-ta

ajax 注册页面检测效果二

ajax 注册页面检测效果二   function check_id(id_name,n){   var sd="lifont"+n;       obj = document.getElementById(''+sd+'');       var reId=/^[wu0391-uFFE5]+$/;     var b_id=reId.test(id_name);     if(!b_id){      obj.innerHTML="<li><div id=

ajax 注册页面检测效果

ajax 注册页面检测效果,今天我们就来看看这种效果的吧. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <