管理员登录就是根据用户输入的信息对数据库进行比对返回处理结果
数据库连接处理放在模型model中
新建登录对应的控制器文件controller/Login.php
,模型文件model/Login.php
,视图view/Login/login.html
模型用于接收从控制器传过来的数据进行处理
<?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;
}
}
}
?>
返回视图模板,并引入模型获取处理数据的结果返回给视图
<?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');
}
}
<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>
本文地址:https://www.zhuimengzhu.com/details/188.html
转载地址:https://blog.csdn.net/weixin_36185028/article/details/78389298
转载说明:转载时请在文首注明来源zhuimengzhu.com 及教程作者,并附本文链接。谢谢各位编辑同仁配合。zhuimengzhu 保留追究相应责任的权利。