如果我不填写用户名或用户名不在数据库中,那么这将是错误的 尝试获取非对象的属性"密码">
文件名:控制器/用户.php
线路号: 74'
我的代码控制器/用户
public function login(){
$this->load->library('form_validation');
$input = $this->input->post(NULL, TRUE);
$this->username_temp = @$input['username'];
if($this->form_validation->run('login') == FALSE){
$this->load->view('form_login');
}
else{
$this->load->library('session');
$login_data = array(
'username' => $input['username'],
'login_status' => TRUE
);
$this->session->set_userdata($login_data);
redirect(base_url('depan/index'));
}
}
public function password_check($str){
$this->load->model('user_model');
$user_detail = $this->user_model->get_user_detail($this->username_temp);
if($user_detail){
if($user_detail->password == crypt($str,$user_detail->password)){
return TRUE;
}
else{
$this->form_validation->set_message('password_check', 'Password
yang anda masukan salah');
return FALSE;
}
}
else{
$this->form_validation->set_message('password_check', 'Username
yanga anda masukan ');
return FALSE;
}
}
我在配置中的代码表单验证
'login' => array(
array('field' => 'username',
'label' => 'username',
'rules' => 'required'
),
array( 'field' => 'password',
'label' => 'password',
'rules' => 'required|callback_password_check'
)
)
我的代码form_login
<h1>Login</h1>
<?php echo validation_errors(); ?>
<form action="<?php echo base_url('user/login'); ?>" method="POST">
<label>Username</label><input type="text" name="username" /><br />
<label>Password</label><input type="password" name="password" /><br />
<input type="submit" name="submit" value="Login" />
我在模型中的user_detail
public function get_user_detail($username){
$this->db->where("username", $username);
$query = $this->db->get('register');
if($query->num_rows() > 0){
$data = $query->row();`enter code here`
$query->free_result();
}
else{
$data = NULL;
}
return $data;
}
为什么如果我没有在表格中填写用户名会出错?
消息:尝试获取非对象的属性"密码">
文件名:控制器/用户.php
行号:74
回溯:
File: D:\XAMPP\htdocs\ilmu\ilmusepuluh\application\controllers\user.php行: 74功能:_error_handler
第 74 行是
$this->form_validation->set_message("password_check","密码杨安达马苏坎萨拉赫"(;
抱歉,错误是我自己造成的,我在浏览器中输入了错误的文件夹名称。 应该是 http://localhost/science/ilmusebelas/user/login not http://localhost/science/ilmusepuluh/user/login对不起非常抱歉,上面的代码是正确的