php ajax跳转页面,AJAX用户如何登录后跳转页面?ajax用户跳转页面的解释(附实例)...

本文探讨了在使用TP框架时遇到的Ajax用户登录后无法跳转到后台管理页面的问题。通过分析,发现原因是后台的重定向被包含在了返回的JSON数据流中。解决方案是利用JavaScript的window.location.href进行页面重定向。文中提供了前端和后台的代码示例,详细解释了如何处理登录验证及错误信息,并展示了如何在验证成功后正确跳转。
摘要由CSDN通过智能技术生成

本篇文章主要的介绍了关于ajax用户登录后跳转的情况,下面有详细的代码实例,有需要的朋友赶紧看过来。现在就开始本篇文章的介绍吧

最近在学习TP框架的使用,在做后台管理系统的时候做了个后台登录页面,想实时的提示用户输入信息的返回情况

9fa6a025b65f6667c2ce768229fa2ff0.png

当然判断同户名密码错误要经过后台验证并且不刷新的情况下显示在页面上,那么首先就想到异步处理(这是门艺术)

TP上的$this_ajaxReturn();方法就可以将信息返回到前段,并用jq判断局部刷新出相应的信息。

但是当我真正的输入正确的用户名密码时却无法跳转到后台管理页面只是返回一条json数据流

a6263676cf27bcaf8558bf13e4467907.png

0b17530950b76bd20882624e97339ed1.png

原来使用异步在收到后台返回数据的时候,交给js代码处理,返回json流,那么后台的重定向就进入了流里面,而不会刷新出页面,只能通过收到的相应看到页面信息。(想看更多就到PHP中文网AJAX开发手册栏目中学习)

那么我们知道在js里面处理 那么就可以用js的重定向Windows.location.href=’url’;跳转到指定页面

js代码$(function(){

$('button').click(function(){

var user = $('input[name=user]'); var pwd = $('input[name=pwd]'); var verify = $('input[name=verify]'); if(user.val() == ''|| pwd.val() == '')

{

$('[name=user]').focus();

$('#errormsg').html("用户名或密码不能为空"); return false;

} else if(verify.val() == '')

{

$('#errormsg').html("验证码不能为空"); return false;

} else{

$.ajax({

url: handle,

data:{'user':user.val(),'pwd':pwd.val(),'verify':verify.val()},

type: "POST",

dataType:'json',

success:function(data){

if(data.status == '1'){

window.location.href = dr;

} else if (data.status == '2') {

$('#errormsg').html("验证码错误");

}else if (data.status == '0') {

$('#errormsg').html("用户名或密码错误!");

}

},

error : function(data) {

alert("出错:" + data.code);

}

});

}

});

})

后台代码$verify = I('verify','','md5'); if($verify !== $_SESSION['verify'])

{ $this->ajaxReturn(array('status' =>'2')); die();

} $username=I('user','',''); $passward=I('pwd','',''); $date=M('admin',NULL); $date->where(array('username' => $username))->find(); if($date and $date->passward == $passward)

{ $id = $date->id; $login_time = time() ; $login_ip = get_client_ip(); $date = array('id' => $id,'login_ip' => $login_ip,'login_time' => $login_time );

M('admin')->save($date);

session('uid',$date['id']);

session('ip',$date['login_ip']); // $this->ajaxReturn(array('status' =>'1'));

// $this->success('登陆成功',U('Admin/Admin/index'));

} else

{ $this->ajaxReturn(array('status' =>'0')); $this->redirect('Admin/Index/index');

}

}

以上也有接受后台数据判断用户名密码是否正确的流程

本篇文章到这就结束了(想看更多就到PHP中文网AJAX使用手册栏目中学习),有问题的可以在下方留言提问。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值