控制器:
$username = $this->input->post('username');
$password = $this->input->post('password');
$this->load->model('Login_model');
if($this->Login_model->login_user($username, $password)) {
$data['user_data'] = $this->Login_model->login_user($username, $password);
echo $user_data->fname;
//$user_array = array(
//'fname' => $user_data->fname,
//'level' => $user_data->level,
//'logged_in' => true
//);
//$this->session->set_userdata($user_array);
redirect ('home');
} else {
$this->load->view('inc/login_header');
$this->load->view('login');
$this->load->view('inc/login_footer');
}
型号:
public function login_user($username, $password) //This function returns an array
{
$this->db->where('username', $username);
$this->db->where('password', $password);
$query = $this->db->get('logins'); //create query
if($query->num_rows() == 1) {
//return $query->result_array();
return $query->row();
} else {
return false;
}
}
我一直在犯这个错误: 消息:未定义的变量:user_data 文件名:controllers / Login.php
此错误引用该行: echo $ user_data-> fname;
在我看来,我正在尝试从模型行中的数据创建一个名为user_data的数组。
提前感谢您的帮助。
答案 0 :(得分:0)
Use this :
$data['user_data']->fname;
instead of this :
echo $user_data->fname;
Or Like this :
$user_data = $this->Login_model->login_user($username, $password);
echo $user_data->fname;
should be like this :
if($this->Login_model->login_user($username, $password)) {
$data['user_data'] = $this->Login_model->login_user($username, $password);
echo $data['user_data']->fname;
//$user_array = array(
//'fname' => $user_data->fname,
//'level' => $user_data->level,
//'logged_in' => true
//);
//$this->session->set_userdata($user_array);
redirect ('home');
}