-1
我有一個使用CI表單驗證的登錄表單。CodeIgniter從URL中刪除功能
形式是在domain.com/login
它運行一個函數調用validate_credentials並且如果驗證失敗它重新加載圖。問題是URL繼續顯示:
domain.com/login/validate_credentials
我如何刪除/ validate_credentials?
<?php if (! defined('BASEPATH')) exit('No direct script access allowed');
class Login extends CI_Controller {
public function index()
{
$this->load->library('form_validation');
$this->form_validation->set_rules('email', 'Email', 'trim|required|valid_email');
$this->form_validation->set_rules('password', 'Password', 'required');
$this->form_validation->set_error_delimiters('<div class="alert alert-error">', '</div><br />');
if ($this->form_validation->run() == FALSE)
{
$this->load->view('login/login');
}
else
{
$this->load->view('clock/clock');
}
}
function validate_credentials() {
$this->load->model('membership_model');
$query = $this->membership_model->validate();
if($query) {// staff credentials validated...
$data = array(
'email' => $this->input->post('email'),
'staff_logged_in' => TRUE
);
$this->session->set_userdata($data);
redirect('clock/clock');
}
else { // not validated reload index function
$this->index();
}
}
}
感謝讓,這是有道理的,但如何將錯誤消息傳回?我看着flashdata,但我不知道如何獲取錯誤。我對CI很陌生。 –
非常好,謝謝! –