为了方便,我们可以重新建立一个名为LoginController.class.php的控制器;其内容如下:
<?php
namespace Admin\Controller;//设置命名空间
use Think\Controller;
class LoginController extends Controller{
public function index(){
//这是登入成功后跳转的界面,需要模板渲染,然后调用
$this->display();//渲染模板
}
public function login(){
$this->display();
//登入界面的
}
public function logindo(){//这个是登陆界面ajax提交的处理方法,
$username=$_POST[‘username‘];
$password=I(‘post.password‘,‘‘);
$verify=$_POST[‘verify‘];
$verif = new \Think\Verify();
//实例化tp框架里面的关于验证码验证的方法,
$data=array();//初始化数组
if(empty($username)||empty($password)||empty($verify)){
//二验证次前台提交过来的数据,保证安全
$data=array(
‘status‘=>1,
‘msg‘=>"信息不全"
);
}else{
if($verif->check($verify)){
//括号中是调用tp方法验证验证码是否正确,正确返回true,错误false,在正确是情况下才能进一步验证前台的用户名和密码是否正确
$inf=M("manager")->where(array(‘username‘=>$username,‘password‘=>$password))->find();
if(!$inf){
$data[‘status‘]=2;
$data["msg"]=‘用户名或密码错误‘;
}else{
$data[‘status‘]=3;
$_SESSION["mamagername"]=$inf[‘username‘];
//设置session的值,为后台操作的前提,如果没有session,则先登入
$_SESSION["id"]=$inf[‘uid‘];
$_SESSION[‘a_time‘] = $inf[‘time‘];
M(‘manager‘)->where(‘uid=‘ . $inf[‘uid‘])->save(array(‘time‘ => time()));
//把这次登入的时间戳保存到数据库中
}
}else{
$data["msg"]="验证码错误";
}
}
$this->ajaxReturn($data);
}
public function loginout(){
session_destroy();
$this->redirect(‘Login/login‘);
}
public function verify(){
$config = array( ‘fontSize‘ => 70, // 验证码字体大小
‘length‘ => 3, // 验证码位数
‘useNoise‘ => false, // 关闭验证码杂点
);
$Verify = new \Think\Verify($config);
$Verify->entry();
}
}
?>