[thinkPHP5项目实战_22]管理员登录
管理员登录就是根据用户输入的信息对数据库进行比对返回处理结果
数据库连接处理放在模型model中
新建登录对应的控制器文件controller/Login.php,模型文件model/Login.php,视图view/Login/login.html
1.模型
模型用于接收从控制器传过来的数据进行处理
<?php
namespace appadminmodel;
use thinkModel;
class Login extends Model
{
//登录数据处理函数
//获取控制器传过来的登录名和密码,根据登录名在数据库中获取密码
//若密码一样则给控制器返回1,若密码存在但是不一样返回2,或密码不存在,返回3
public function login($username,$password){
$admin = hinkDB::name("admin")->where("username","=",$username)->find();
if($admin){
if($admin["password"] === md5($password)){
return 1;
}else{
return 2;
}
}else{
return 3;
}
}
}
?>2.控制器
返回视图模板,并引入模型获取处理数据的结果返回给视图
<?php
namespace appadmincontroller;
use thinkController;
use appadminmodelLogin 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>声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: c# 一维数组和二维数组的定义几种方式
- 下一篇: C++中引用(&)的用法和拷贝/赋值函数的区别
