[thinkPHP5项目实战_22]管理员登录

[thinkPHP5项目实战_22]管理员登录

管理员登录就是根据用户输入的信息对数据库进行比对返回处理结果

数据库连接处理放在模型model中

新建登录对应的控制器文件controller/Login.php,模型文件model/Login.php,视图view/Login/login.html

1.模型

模型用于接收从控制器传过来的数据进行处理


<?php 
namespace app\admin\model;
use think\Model;
class Login extends Model
{
//登录数据处理函数
//获取控制器传过来的登录名和密码,根据登录名在数据库中获取密码
//若密码一样则给控制器返回1,若密码存在但是不一样返回2,或密码不存在,返回3
    public function login($username,$password){
        $admin = \think\DB::name('admin')->where('username','=',$username)->find();
        if($admin){
            if($admin['password'] === md5($password)){
                return 1;
            }else{
                return 2;
            }
        }else{
            return 3;
        }
    }
}
 
?>



2.控制器

返回视图模板,并引入模型获取处理数据的结果返回给视图


<?php
namespace app\admin\controller;
use think\Controller;
use app\admin\model\Login as Log;//引入登录模型重命名防止与类名冲突
class Login extends Controller
{
    public function login()
    {
        if(request()->isPost()){
            $login=new Log;//实例化模型
            $status = $login->login(input('username'),input('password'));//调用模型方法进行数据库核对
            //根据模型返回的结果进行判断
            if($status === 1){
                return $this->success('登录成功,正在跳转','Index/index');
            }elseif ($status === 2) {
                return $this->error('账号或密码错误');
            }else{
                return $this->error('用户不存在');
            }
        }
        return $this->fetch('login');
    }
}


3.视图

<form action="" method="post">
    <ul class="admin_items">
        <li>
            <label for="user">用户名:</label>
            <input type="text" name="username" value="" id="user" size="35" class="admin_input_style" />
        </li>
        <li>
            <label for="pwd">密码:</label>
            <input type="password" name="password" value="" id="pwd" size="35" class="admin_input_style" />
        </li>
        <li>
            <input type="submit" tabindex="3" value="提交" class="btn btn-primary" />
        </li>
    </ul>
</form>


20171030000105996.gif

原文链接:https://blog.csdn.net/weixin_36185028/article/details/78389298


追梦猪网站致力于前端分享申明:本站内容搜集整理而来请勿商业用途,仅供交流所用,如若侵犯您的权益请邮件站长进行删除!

文明浏览请勿传播非法内容