本篇文章主要的介紹了關於ajax使用者登入後跳轉的情況,下面有詳細的代碼執行個體,有需要的朋友趕緊看過來。現在就開始本篇文章的介紹吧
最近在學習TP架構的使用,在做後台管理系統的時候做了個後台登入頁面,想即時的提示使用者輸入資訊的返回情況
當然判斷同戶名密碼錯誤要經過後台驗證並且不重新整理的情況下顯示在頁面上,那麼首先就想到非同步處理(這是門藝術)
TP上的$this_ajaxReturn();方法就可以將資訊返回到前段,並用jq判斷局部重新整理出相應的資訊。
但是當我真正的輸入正確的使用者名稱密碼時卻無法跳轉到後台管理頁面只是返回一條json資料流
原來使用非同步在收到後台返回資料的時候,交給js代碼處理,返回json流,那麼背景重新導向就進入了流裡面,而不會重新整理出頁面,只能通過收到的相應看到頁面資訊。(想看更多就到topic.alibabacloud.comAJAX開發手冊欄目中學習)
那麼我們知道在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("<strong>使用者名稱或密碼不可為空<strong>"); return false; } else if(verify.val() == '') { $('#errormsg').html("<strong>驗證碼不可為空<strong>"); 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("<strong>驗證碼錯誤<strong>"); }else if (data.status == '0') { $('#errormsg').html("<strong>使用者名稱或密碼錯誤!<strong>"); } }, 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'); } }
以上也有接受後台資料判斷使用者名稱密碼是否正確的流程
本篇文章到這就結束了(想看更多就到topic.alibabacloud.comAJAX使用手冊欄目中學習),有問題的可以在下方留言提問。