1
我正在使用codeigniter,我正在执行auth系统 - 用户可以登录,他可以在注销后看到所有页面。接下来的问题是:为什么注销的用户可以看到所有未登录的页面,我该如何纠正它?这是我的控制器:codeigniter中的授权
<?php if (! defined('BASEPATH')) exit('No direct script access allowed');
class User extends CI_Controller {
public function __construct() {
parent::__construct();
$this->load->helper(array('url', 'form'));
$this->load->model("usermodel");
$this->load->library('session');
}
private function view($page, $data=false) {
if($page == "auth/login"){
$this->load->view("auth/header_auth.php");
}else{
$this->load->view("header.php");
}
$this->load->view($page, $data);
$this->load->view("footer.php");
}
public function index() {
if ($this->session->userdata("user")) {
redirect("dashboard", "refresh");
return;
}
$this->view("auth/login");
}
public function fail() {
$this->view("auth/login");
}
public function dashboard() {
$this->view("auth/dashboard");
}
public function login() {
$login = $this->input->post("login");
$password = $this->input->post("password");
if ($this->usermodel->login($login, $password)) {
$this->session->set_userdata("user", $login);
redirect("dashboard", "refresh");
} else {
redirect("fail", "refresh");
}
}
public function logout() {
$this->session->unset_userdata('user');
session_destroy();
redirect('index', 'refresh');
}
}
非常感谢您!但我仍然有一个问题,我有一个404页面没有找到错误:( – Ksenia
哪些功能,同时调用返回404错误?? – Regolith
登录函数返回此错误 – Ksenia