想知道是否有人可以指导我做错了什么(或需要做什么)并认为问题出在我的路线文件中。当用户显示登录表单时,例如他们在提交 url 后输入错误的用户名,显示如下:http://localhost:8888/codeigniter/login/login_validation
。当成功并登录到管理区域(从数据库中提取新闻文章)时,仍会显示此 URL。我想知道是否有办法让http://localhost:8888/codeigniter/news.
我查看我的路线文件夹,我尝试使用“通配符”但没有成功。这是我的参考代码,需要的任何其他信息或文件让我知道!谢谢。
控制器:
class Login extends CI_Controller {
public function __construct() {
parent::__construct();
}
public function index() {
$this->load->view('login');
}
//Validate login area
public function login_validation() {
$this->load->library('form_validation');
$this->form_validation->set_rules('username', 'Username', 'trim|required|xss_clean|callback_username_check');
$this->form_validation->set_rules('password', 'Password', 'required|xss_clean|callback_password_check');
if($this->form_validation->run() == FALSE) {
//Field validation failed. User redirected to login page
$this->index();
}else{
$this->load->model('user_model');
$query = $this->user_model->login_details();
// if the user's credentials validated...
if($query) {
$data = array(
'username' => $this->input->post('username'),
'is_logged_in' => true
);
$this->session->set_userdata($data);
redirect('news');
}else{
$data['error'] ="Invalid Username or Password";
$this->load->view('login',$data);
}
}
}
function logout() {
$this->session->sess_destroy();
$this->index();
}
}
user_model.php 中的 login_details 函数
function login_details() {
$this->db->where('username', $this->input->post('username'));
$this->db->where('password', md5($this->input->post('password')));
$query = $this->db->get('login');
if($query->num_rows == 1){
return true;
}
}