前述两篇文章“使用BootStrap制作用户登录UI”和“使用BootStrapValidator来完成前端输入验证@H_301_3@@H_301_3@ ”已经将用户登陆的界面和验证进行了实现,现在看看后端要做的事情(基于ThinkPHP5)。举例来说,比如当学生登陆成功后则进入学生界面,在这个界面中,学生可以提交作业,查看自己作业的批改情况。当用户在前述界面中输入了用户名和密码,选择了学生用户后,点登陆,会进入dologin方法(位于controller\index\account\dologin),代码如下:
- public function dologin()
- {
- $kind=$_POST['kind'];
- if($kind=='tea')
- {
- $user=UserModel::get(['username'=>$_POST['username'],'password'=>md5($_POST['pwd'])]);
- if($user)
- {
- if($user->power=='common')
- echo '教师登陆成功';
- else
- echo '管理员登陆成功';
- }
- }else
- {
- $stu=StuModel::get(['stu_no'=>$_POST['username'],'password'=>md5($_POST['pwd'])]);
- if($stu)
- {
- $_SESSION['stuno']=$stu->stu_no;
- $this->success('登陆成功','Student/'.$stu->stu_no);
- }
- else
- {
- $this->error('用户名或密码错误');
- }
- }
- }
这里只对学生逻辑进行了简单的实现。当学生登陆成功后会进入 Student控制器的index方法中,当然需要在rote.PHP中配置如下路由:
- 'index/student/:stuno'=>'index/student/index'
在Student控制器中可以如下处理:
- <?PHP
- namespace app\index\controller;
- use think\Controller;
- use app\index\model\Student as StuModel;
- class Student extends Controller{
- public function index($stuno)
- {
- $stu=StuModel::get(['stu_no'=>$stuno]);
- echo "欢迎登陆学生界面 ".$stu->stu_name;
- }
- }
这里只是简单的阐述了处理和跳转逻辑,当然实际开发中肯定有更丰富的功能和逻辑,以点盖面吧,希望对你有所帮助。
下面是登陆成功后的页面:
本文首发顶求网,由作者原创,如需转载请注明出处。