我正在使用Ion_Auth,我遇到了问题。我已经找到了解决方案,但还没有进展。
例如,有一个用户,他的名字是Alex。
当Alex登录门户时,他应该看到他的名字Alex,然后如果他点击他的名字,他将转到他的用户设置来编辑他的详细信息。问题是当用户登录时我无法显示first_name。
我该怎么做?我不知道我可以为这种情况发布什么代码。告诉我你需要什么作为代码,如果你需要我可以发布。
答案 0 :(得分:2)
从未使用过Ion_Auth,我决定查看GitHub上的存储库。您可以使用user_id并将其传递给模型方法以获取名字(如umefarooq建议的那样)。
但是,我会从数据库中提取名字,并在用户登录时将其存储在会话中。这意味着您不必返回数据库只是为了获取他们的名字。
你可以在Ion_auth模型中看到这一行;
$query = $this->db->select($this->identity_column . ', username, email, id, password, active, last_login')
https://github.com/benedmunds/CodeIgniter-Ion-Auth/blob/2/models/ion_auth_model.php#L985
您可以将第一个名称行添加到此查询中,并在用户登录时将其添加到会话中。
然后您可以通过以下方式访问它:
$this->session->userdata('FirstName');
希望这有帮助。
答案 1 :(得分:1)
最简单的方法是:
$user = $this->ion_auth->user()->row();
echo $user->first_name;
答案 2 :(得分:0)
当用户成功登录时,将他/她的名字存储到会话变量中。
然后在您要显示的位置调用特定的会话变量。