我是CodeIgniter
的新人。我遇到了问题。我的程序似乎合乎逻辑,但不起作用!
我有一个控制器:User
class User extends CI_Controller {
public function __construct() {
parent::__construct();
$this->load->model('user_model');
}
public function index($slug = FALSE) {
$data['title'] = "User List";
if($slug === FALSE) {
$data['user'] = $this->user_model->get_user();
} else {
$data['user'] = $this->user_model->get_user($slug);
}
if (empty($data['user'])){
show_404();
}
$this->load->library('table');
$this->load->view('user_view', $data);
}
public function authen() {
$this->load->helper('form');
$this->load->library('form_validation');
$this->form_validation->set_rules('phone', 'phone', 'required');
$this->form_validation->set_rules('password', 'password', 'required');
if ($this->form_validation->run() === FALSE) {
$this->load->view('login_form');
} else {
if($this->user_model->do_login()===TRUE) {
$this->index();
}
$this->authen();
}
}
}
“authen”方法在其最后条件下无法正常工作。页面不会重定向到控制器。
有人可以帮忙吗? 感谢
答案 0 :(得分:1)
您可以使用:redirect('user')
它会将您重定向到控制器用户类
答案 1 :(得分:0)
而不是
$this->index();
试试这个
header('Location:http://myipaddress/mysite/user');
答案 2 :(得分:0)
如果有任何身份验证错误,您将尝试加载登录页面。
为此,您需要再次将用户带到登录页面。
使用redirect('user / login');并将错误消息存储在会话闪存中。
或显示验证错误..
您无法从控制器呼叫控制器。 as $ this-> index();