TP框架中如何使用SESSION限制登錄?


TP框架中如何使用SESSION限制登錄?

之前總是被問題今天才明白,最高效的來做頁面訪問限制問題。

OOP思想中的繼承特性,實現驗證,是否已經登錄,不必每個頁面都進行判斷。

實現如下:

 

繼承Controller

 

CommonController

 

<?php
/**
 * User:...
 */

namespace Home\Controller;
use Think\Controller;

/**
 * 通用控制器
 * 主要用於驗證是否登陸 以及 用戶權限
 * @package Home\Controller
 */
class CommonController extends Controller {
    /* 定義用戶id */
    public static $userid = '';

    /**
     * 自動執行
     */
    public function _initialize()
    {
        // 判斷用戶是否登錄
        if (session('uid')) {
            $this->userid = session('uid');
        } else {
            $this->error('對不起,您還沒有登錄,正跳轉至登錄面...', U('Login/login'));
        }
    }

}

限制登錄的頁面

<?php
namespace Home\Controller;
use Think\Controller;

/**
 * 首頁控制器
 * @package Home\Controller
 */
class IndexController extends CommonController {
    /**
     *  此處直接繼承commonController 系統首頁
     */
    public function index(){
        // 獲取當前賬戶的登錄信息
        $info = M('users')->field('loginnum')->where(array('id' => parent::$userid))->find();

        $this->assign('info', $info);
        $this->assign('SERVER_SOFTWARE', $_SERVER['SERVER_SOFTWARE']);
        $this->display();
    }
}

是不是恍然大明白啦?哈哈


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM