TP中登录验证

loginpro

1、建立控制器 loginController.calss.php

<?php
namespace Admin\Controller;
header('Content-type:text/html;charset=utf-8');
use Think\Controller;
class LoginController extends Controller {
    
    public function index(){
        $this->display('login');
    }

        public function login(){
            $username = I("post.username");
            $pass = I("post.pass");
            $post = [
                'username'=> $username,
                'pass' => md5($pass)
            ];
 
            $model = D("admins");
            $data = $model->where($post)->find();
            $_SESSION['id'] = $data['id'];   //写入session
            
            if($data == Null){
                $this->error("登录失败",U("login/index"));
            }else{
                $this->success('登录成功',U("Index/index"));
            }
    }
   
        public function login_out(){
         $_SESSION['id'] = null;
         $this->display('login');
    }
}

2、视图view 建立login文件夹  建立login.html //登录页面的全部内容放在这个里面

action="__URL__/login" method="POST"

3、

写一个自动验证的方法_initialize()
要写一个公共的控制器 CommonController.class.php
建议写两个方法 一个是empty空方法 一个是自动验证

CommonController.class.php

 

<?php
namespace Admin\Controller;
header('Content-type:text/html;charset=utf-8');
use Think\Controller;
class CommonController extends Controller {
        public function _initialize(){
            if(empty($_SESSION['id'])){
                $this->error("请登录",U("login/index"));
            }
        }
}

 

 

 4、

修改下后台主页的控制器
extends CommonController 需要验证的,都需要继承他
访问任何一个控制器 只要继承的是CommonController 都会判断登录

例如:

use Think\Controller;

class GoodsController extends CommonController {  //都继承这个CommonController 

    public function index() {

 

 

class IndexController extends CommonController {
    public function index(){

 

posted @ 2015-08-11 23:18  __Rain丶  阅读(660)  评论(0编辑  收藏  举报