簡體   English   中英

Codeigniter中的會話庫

[英]Session library in codeigniter

我想檢查用戶是否已登錄codeigniter並將其設置為ned config/routing.php ded控制器的config/routing.php作為默認值,並根據用戶的訪問級別重定向所有請求。

直到現在我都在config/routing.php如下操作:

if ($_SESSION['loggedin'] == TRUE){
    $route['default_controller'] = $_SESSION['class'];
    $route['(.*)']               = $_SESSION['class']."/$1";
} else {
    $route['default_controller'] = 'first';
}

我試過$this->session->userdata()但我收到錯誤消息,因為我認為config/autoload.php或session是在config/routing.php之后加載的。

有什么想法嗎?

像這樣在codeigniter中加載會話

$this->load->library('session');

但最好將其加載到autoload.php

它不是$_SESSIONS它是$_SESSION

if ($_SESSION['loggedin'] == TRUE){
    $route['default_controller'] = $_SESSION['class'];
    $route['(.*)']               = $_SESSION['class']."/$1";
} else {
    $route['default_controller'] = 'first';
}

在代碼點火器中的使用,如熱門歌曲,

if($this->session->userdata("loggedin") == TRUE)
{
    $route['default_controller'] = $this->session->userdata("class");
    $route['(.*)'] = $this->session->userdata("class")."/$1";
} else {
    $route['default_controller'] = 'first';
}

好吧,我已經努力工作了,沒有錯誤。 我已經從system/libraries/Session/Session.php注釋了兩行:

session_start();  (Line:140)
ini_set('session.use_trans_sid', 0);   (Line:313) 

並將session_start()添加到appliction/config/routes.php中。 它可以解決錯誤。

希望對任何人有幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM