ThinkPHP中使用ajaxReturn进行ajax交互
以管理员登录为例来介绍下$this->ajaxReturn与模板页进行ajax交互使用方法
首先看PHP控制器的处理,在application/Admin/Controller/LoginController.class.php控制器里加入登录验证方法
//ajax检验管理员登录是否正确
public function check()
{
$user = M('User');
if(!IS_AJAX){
$this->ajaxReturn(array(
'info' => '非法的请求方式'
)); }
$user_name = I('user_name', '');
$user_password = I('user_password', ''); $user_password = md5($user_password); $filter = array(
'user_name' => $user_name,
'user_password' => $user_password
); $user_info = $user->where($filter)->find(); if (1 == $user_info['type']) {
$this->ajaxReturn(array(
'info' => '你无权登录后台'
));
} if($user_info){
// 更新登录ip
$info['ip'] = get_client_ip();
//更新登录时间
$info['update_time'] = date('Y-m-d H:i:s', time()); $user->where(array('id' => $user_info['id']))->save($info); session('user_id',$user_info['id']); $data = array(
'info' => 'ok',
'callback' => U('user/index/index')
);
}else{
$data = array(
'info' => '登录失败,请检查登录名和密码是否正确'
); } $this->ajaxReturn($data);
}
登录模板页
$('.submit').click(function(event){
//阻止表单默认提交事件
event.preventDefault();
var userName=$("#user_name").val();
var userPassword=$("#user_password").val();
if(userPassword==""||userName==""){
alert('登录名与密码不能为空 ');
$("#user_name").focus();
return false;
}else{
var url = "{U('Admin/Login/check')}";
$.post(url, { user_name:userName, user_password:userPassword}, function(msg){
if(msg.info == 'ok') {
//alert('登录成功,正在转向后台主页!');
window.location.href = msg.callback;
} else {
alert(msg.info);
}
}, 'json').error(function(){
alert("网络连接错误,请稍后再试");
}); }
})
ThinkPHP中使用ajaxReturn进行ajax交互的更多相关文章
- 哈哈,找到一种方式来简单模拟EXTJS中与服务器的AJAX交互啦。
一直在测试客户端的EXTJS,但遇到服务器端就麻烦了,要建库,要写JSON,要有HTTP返回值. 今天测试了一个简单的方法,经过测试是OK了. 那,就是Python的SimpleHTTPServer模 ...
- thinkphp中AJAX返回ajaxReturn()方法分析
本文分析了thinkphp中AJAX返回ajaxReturn()方法.分享给大家供大家参考,具体如下: 系统支持任何的AJAX类库,Action类提供了ajaxReturn方法用于AJAX调用后返回数 ...
- thinkphp中的AJAX返回ajaxReturn()
系统支持任何的AJAX类库,Action类提供了ajaxReturn方法用于AJAX调用后返回数据给客户端.并且支持JSON.XML和EVAL三种方式给客户端接受数据,通过配置DEFAULT_AJAX ...
- ThinkPHP中ajax提交数据
最近在做项目时遇到了一些需要从页面用ajax提交数据到后台的操作,无奈本人技术有限,网上苦寻,研究了一下ajax和thinkPHP的结合,黄天不负苦心人,终于搞定了. 闲话少叙,进入正题:我需要从页面 ...
- thinkphp中ajax使用实例(thinkphp内置支持ajax)
thinkphp中ajax使用实例(thinkphp内置支持ajax) 一.总结 1.thinkphp应该是内置支持ajax的,所以请求类型里面才会有是否是ajax // 是否为 Ajax 请求 if ...
- struts2中使用json插件实现ajax交互
json插件可以简单的实现ajax交互,避免了使用struts2-dojo-plugin.jar包时带来的struts2.x版本冲突问题.并且减少了使用ajax标签时需要的繁琐的配置包括web.xml ...
- ThinkPHP中使用ajax接收json数据的方法
本文实例讲述了ThinkPHP中使用ajax接收json数据的方法.分享给大家供大家参考.具体分析如下: 这里通过ThinkPHP+jquery实现ajax,扩展了下,写了个查询,前台代码如下: 首先 ...
- thinkphp中的ajax分页
thinkphp中用ajax分页和普通的ajax分页的区别在于处理位置的不同,thinkphp是在控制器的方法中处理ajax传的值,然后返回数据.下面是一个点击事件触发后,显示的内容用ajax分页. ...
- ThinkPHP 中使用 IS_AJAX 判断原生 JS 中的 Ajax 出现问题
问题: 在 ThinkPHP 中使用原生 js 发起 Ajax 请求的时候.在控制器无法使用 IS_AJAX 进行判断.而使用 jQuery 中的 ajax 是没有问题的. 在ThinkPHP中.有一 ...
随机推荐
- peewee 字段属性help_text的支持问题
至少在__version__ = '2.6.0'的时候,给字段添加help_text的时候,在数据库的ddl语句里面是没有comment的. 看了下源码,顺藤摸瓜,最终定位到了字段(Field类)的_ ...
- Linux下多网卡同网段多IP网络分流设定方法
Linux下多网卡同网段多IP网络分流设定方法 -- :: 标签:Linux下多网卡同网段多IP网络分流设定方法 当服务器需要较高的网络流量时,在其它资源不造成瓶颈的情况下无疑会用到多网卡. 第1选项 ...
- 《oracle每日一练》oralce数据库的导入导出
今天尝试了数据库的导出,直接在命令行里面使用了导出指令: exp uname/pwd@127.0.0.1:1521/orcl file='xx.dmp' 出现的问题: 直接@tnsnames里面配的 ...
- Qt5.4 MSVC mysql驱动编译;
http://www.mysql.com/ 下载mysql http://download.qt.io/archive/qt/ Qt 下载 1. mysql安装源码 注意勾选这一步,将mysq ...
- python virtualenv环境运行django
python virtualenv环境运行django 安装前准备 检查pip版本与python版本是否一致 [root@localhost bin]# whereis pip pip: /usr/b ...
- vc++创建文件目录
#include "stdafx.h" #include <iostream> #include <fstream> #include <string ...
- JavaScript高级程序设计学习笔记--面向对象程序设计
工厂模式 虽然Object构造函数或对象字面量都可以用来创建单个对象,但这些方式有个明显的缺点:使用同一个接口创建很多对象,会产生大量的重复代码.为解决这个问题,人们开始使用 工厂模式的一种变体. f ...
- POJ 3185 The Water Bowls (高斯消元)
题目链接 题意:翻译过来就是20个0或1的开关,每次可以改变相邻三个的状态,问最小改变多少次使得所有开关都置为0,题目保证此题有解. 题解:因为一定有解,所以我们可以正序逆序遍历两次求出较小值即可.当 ...
- IOS-Gesture(手势识别)
手势识别——Gesture Recognizer •iOS3.2版本之后,苹果推出了手势识别(Gesture Recognizer),其目的是: –简化开发者的开发难度 –统一用户体验 • •iOS目 ...
- xmpp xml基本语义
基本语义 9.2.1 消息语义 <message/>节种类可被看作“推”机制,一个实体推信息给其它实体,与 EMAIL 系统中发生的通信类似.所有消息节应该拥有‘to’ 属性,指定有意的消 ...