我的控制器
public function aksi_login(){
$email = $this->input->post('email');
$password = $this->input->post('password');
$username = $this->action->getNamaLogin();
$cek = $this->action->cek_login("anggota",$where)->num_rows();
if($cek > 0){
$data_session = array(
'nama' => $username,
);
$this->session->set_userdata($data_session);
}
我的模特
function getNamaLogin($email)
{
$query = $this->db->query("SELECT Nama FROM anggota WHERE Email = '$email'");
}
我的观点
<h2>Welcome <?php echo $this->session->userdata("nama"); ?></h2>
我想在用户登录会话时传递用户名并在视图中显示用户名。但是当我var_dump($ username)时,该值为NULL并且用户名未显示在视图中。我犯了错误,还是有其他好方法可以做我想做的事情?
答案 0 :(得分:0)
首先确保您的$ username不为空。然后通过在控制器方法中加载视图将数据从控制器传递到视图。
在模型功能中:
$query = $this->db->query("SELECT Nama FROM anggota WHERE Email = '$email'");
return $query->result();
在控制器功能中:
$username = $this->action->getNamaLogin($email);
$data['username'] = $username;
$this->load->view('view_page', $data);
在View_page。
<?php echo $username;?>
答案 1 :(得分:0)
在getNamaLogin()
执行:
return $query->row()->nama
我还建议如果用户不存在则添加else条件,或者密码是inccorect,将用户重定向回逻辑页面并显示错误消息。目前没有这方面的逻辑,用户将只面对一个空白页面,除非有我遗漏的东西。