在用户授权失败后,我在尝试传递有价值的信息时遇到了问题。我想将$error传递给欢迎控制器,但不确定如何传递。请帮忙。非常感谢。
private function _user_check()
{
//after form validation, I pass username and password to the model
$this->load->model('user_query');
$result=$this->user_query->query($this->input->post('username'),$this->
input->post('password'));
if($result)
{
redirect('main');
}else{
// I am not sure how to pass this error message to my welcome controller
$data['error']='Please check your username or password';
redirect('welcome');
}
}
在重定向函数中,您没有提供完整的URL,因此CI将参数视为控制器的URI段。
知道了这一点,你可能会有这样的东西:
redirect('welcome/error/error_user_pass');
并让传递的"error_user_pass"引用CI项目中定义的错误常量。
也许在你的应用程序/config/contents.php文件中有这样的东西:
define('error_user_pass', 'incorrect user or password, please check yo self!');
然后在你的"欢迎"控制器中有这样的东西:
class Welcome extends CI_Controller {
public function error(){
$errors = func_get_args();
foreach( $errors as $error ){
//echo error, or save it, or whatev
}
}
}