thinkphp验证是否登录并跳转
生活随笔
收集整理的这篇文章主要介绍了
thinkphp验证是否登录并跳转
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
CommonController.class.php
<?php namespace Admin\Controller; use Think\Controller; class CommonController extends Controller {//初始化public function _initialize(){$uid = session('uid'); //验证控制器名和方法名if(empty($uid) && ('Index' != CONTROLLER_NAME || !in_array(ACTION_NAME,array('mian','login','ajaxGetAdminInfo')))){$this->redirect("/Index/login");}}public function _empty(){$this->error('工程师正在维护,请稍后!!!');} } IndexController.class.php
<?php namespace Admin\Controller; use Home\Controller\CommonController;class IndexController extends CommonController {public function mian(){$this->display();}public function login(){$this->display();}//ajax验证登录public function ajaxGetAdminInfo(){$username = strtolower(I('username','','strip_tags'));$password = strtolower(I('password','','strip_tags'));$adminM = M('admin');$map['username'] = $username;$admin = $adminM->where($map)->find();if(!empty($admin)){$password = md5(md5($password).C('CIPHERTEXT'));if($admin['password'] == $password){session('uid',$admin['uid']);session('username',$username);$this->ajaxReturn(array('flag'=>'success','message'=>'确认成功'));} else {$this->ajaxReturn(array('flag'=>'error','message'=>'密码不正确'));}} else {$this->ajaxReturn(array('flag'=>'error','message'=>'账号不存在'));}public function logout(){session("uid","");$this->success('退出成功',U('Index/login'));}} html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>login-Admin</title> <script src="__JS__/jquery-2.1.4.min.js"></script> </head> <body><form action="" method="post" name="loginForm">账号:<br><input type="text" name="username" class="username" ><br><span class="user"></span><br>密码:<br><input type="password" name="password" class="password"> <br><span class="pass"></span><br><br><input type="button" value="登录" οnclick="checkData()"></form><br><br> <script>function checkData(){var username = $('.username').val();var password = $('.password').val();if(username == ""){$('.user').text("请填写账号");return false;}if(password == ""){$('.pass').text("请填写密码");return false;}var url = '__APP__/Index/ajaxGetAdminInfo';var data = {'username':username,'password':password};$.post(url,data,function(result){if(result.flag == 'success'){setTimeout("location.reload()",2000); location.href="__APP__/Index/mian";} else {if(result.message == '账号不存在'){$('.user').text("账号不存在");return false;} else {$('.user').text("账号或密码错误");return false;} }}); } </script> </body> </html>
<?php namespace Admin\Controller; use Think\Controller; class CommonController extends Controller {//初始化public function _initialize(){$uid = session('uid'); //验证控制器名和方法名if(empty($uid) && ('Index' != CONTROLLER_NAME || !in_array(ACTION_NAME,array('mian','login','ajaxGetAdminInfo')))){$this->redirect("/Index/login");}}public function _empty(){$this->error('工程师正在维护,请稍后!!!');} } IndexController.class.php
<?php namespace Admin\Controller; use Home\Controller\CommonController;class IndexController extends CommonController {public function mian(){$this->display();}public function login(){$this->display();}//ajax验证登录public function ajaxGetAdminInfo(){$username = strtolower(I('username','','strip_tags'));$password = strtolower(I('password','','strip_tags'));$adminM = M('admin');$map['username'] = $username;$admin = $adminM->where($map)->find();if(!empty($admin)){$password = md5(md5($password).C('CIPHERTEXT'));if($admin['password'] == $password){session('uid',$admin['uid']);session('username',$username);$this->ajaxReturn(array('flag'=>'success','message'=>'确认成功'));} else {$this->ajaxReturn(array('flag'=>'error','message'=>'密码不正确'));}} else {$this->ajaxReturn(array('flag'=>'error','message'=>'账号不存在'));}public function logout(){session("uid","");$this->success('退出成功',U('Index/login'));}} html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>login-Admin</title> <script src="__JS__/jquery-2.1.4.min.js"></script> </head> <body><form action="" method="post" name="loginForm">账号:<br><input type="text" name="username" class="username" ><br><span class="user"></span><br>密码:<br><input type="password" name="password" class="password"> <br><span class="pass"></span><br><br><input type="button" value="登录" οnclick="checkData()"></form><br><br> <script>function checkData(){var username = $('.username').val();var password = $('.password').val();if(username == ""){$('.user').text("请填写账号");return false;}if(password == ""){$('.pass').text("请填写密码");return false;}var url = '__APP__/Index/ajaxGetAdminInfo';var data = {'username':username,'password':password};$.post(url,data,function(result){if(result.flag == 'success'){setTimeout("location.reload()",2000); location.href="__APP__/Index/mian";} else {if(result.message == '账号不存在'){$('.user').text("账号不存在");return false;} else {$('.user').text("账号或密码错误");return false;} }}); } </script> </body> </html>
转载于:https://www.cnblogs.com/qhorse/p/5509431.html
总结
以上是生活随笔为你收集整理的thinkphp验证是否登录并跳转的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 转:从零开始开发一款Android Ap
- 下一篇: 如何屏蔽PHP浏览器头信息X-Power