codeigniter で Cookie のみに基づいて基本的なログイン設定を作成しました。このような
class Display extends CI_Controller {
public function Display() {
parent::__construct();
}
public function index() {
//var_dump($_COOKIE);
if (isset($_COOKIE["user"])){
redirect('home')
}else{
redirect('display/login');
}
}
public function login() {
//var_dump($_COOKIE);
if (isset($_COOKIE["user"])){
$this->load->view('home');
}else{
$username = $this->input->post('username');
//some validation
setcookie("user",$username,time()+60*60*24*30);
redirect('home');
}
}
}
ホームコントローラーで、Cookieがページにアクセスすることを確認します
class Home extends CI_Controller {
public function Home() {
parent::__construct();
//var_dump(get_cookie("user"));exit;
if (isset($_COOKIE["user"]) == false){
redirect('display/login');
}
}
}
ここで直面している問題は、クラスのコンストラクターで Cookie を取得できないことです。クラス内の関数にアクセスする前に、クラス内の Cookie をチェックする必要があります。それを行う適切な方法は何ですか?前もって感謝します。