zoukankan      html  css  js  c++  java
  • 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("网络连接错误,请稍后再试");
        });
    
      }
    })
  • 相关阅读:
    2017微软骇客马拉松精彩大回Fun:不一样的Hacker,一Young的Cool
    老板这种生物:只看结果,不问过程
    小目标 | 分解任务,聪明人只设达得到的“小目标”
    本号讯 | 微软被 Forrester 评为销售服务自动化解决方案领导者
    IT圈网红,抢鲜围观
    云时代“非诚勿扰”
    安装conda后去除终端出现的(base)字样
    Ubuntu18.04 安装 Anaconda3
    高斯模糊
    准确率(Accuracy) 精确率(Precision) 与 召回率(Recall)
  • 原文地址:https://www.cnblogs.com/qhorse/p/4861042.html
Copyright © 2011-2022 走看看