【发布时间】:2012-07-13 03:22:40
【问题描述】:
我有一个功能可以从数据库中获取单个用户,以便我可以显示它,用于用户配置文件和其他内容。
嗯,我希望能够为组创建一个单独的表,所以如果我愿意,我可以添加更多,而且很简单。所以我在 users 表中有一个 group_id 字段,所以我可以这样做,它会将 groups 表与 groups id 列连接起来。
好吧,我能够为我的另一个项目成功地做到这一点,但是当我将该功能移至当前项目时(我使用相同的 EXACT 方法在两个项目上显示配置文件)它不再起作用。 .. 什么都没有返回...
public function getUser($username) {
if (empty($username)) {
return false;
}
$this->ci->db->from('users');
$this->ci->db->join('groups','users.group_id = groups.id');
$query = $this->ci->db->where('username',$username)->get();
$user = $query->row();
return $user;
}
这就是功能,有人可以帮我解释为什么它不起作用吗?我在控制器、模型和库中都试过了,都没有工作。
【问题讨论】:
-
如果你改为使用
return 'test';,它会返回字符串吗? -
是的,如果我要注释掉“$this->ci->db->join('groups','users.group_id = groups.id');”它工作得很好,完全没有问题
-
你试过类似
return print_r($query) -
如果这不起作用,则尝试将 sql 更改为简单的 select *from users,看看您是否至少可以从数据库中获取一些东西。
-
你有什么错误吗?尝试使用“echo $this->db->last_query();”记录查询以确保它是正确的或调用 get() 函数后“返回 $this->db->last_query()”
标签: database codeigniter join