首页 > Web开发 > 详细

ThinkPHP中使用ajaxReturn进行ajax交互

时间:2015-10-08 16:03:49      阅读:223      评论:0      收藏:0      [点我收藏+]
以管理员登录为例来介绍下$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交互

原文:http://www.cnblogs.com/qhorse/p/4861042.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!