思路:前台输入账号密码,后台自定义一个函数checkNamePwd()用于验证账号密码正确与否,在控制器里调用,其中,checkNamePwd()方法验证账号密码正确性是首先通过账号查找密码,然后把查找出来的密码和用户输入的密码比较,相同则登陆成功,否则登录失败!
首先在模型类定义一个函数checkNamePwd()
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
public function checkNamePwd( $name , $pwd )
{
//①先根据$name查询是否存在指定名字的记录
//通过$name查找整条记录
$res = $this ->where( "mg_name='$name'" )->find();
if ( $res ) {
//②把查询到的记录的密码与用户输入的密码比较
if ( $res [ 'mg_pwd' ]=== $pwd ) {
return $res ;
}
} else {
return null;
}
}
|
控制器接收用户输入的信息并调用checkNamePwd()方法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
$manager = new \Model\ManagerModel();
$name = $_POST [ 'admin_user' ];
$pwd = $_POST [ 'admin_psd' ];
//验证成功返回整条记录,否则返回null
$info = $manager ->checkNamePwd( $name , $pwd );
if ( $info ) {
//验证成功,给用户信息session持久化操作(name,id)
session( 'admin_id' , $info [ 'mg_id' ]);
session( 'admin_name' , $info [ 'mg_name' ]);
//跳转后台首页
$this ->redirect( 'Index/index' );
} else {
echo "用户名或密码错误" ;
}
|
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。