【发布时间】:2015-08-07 06:46:49
【问题描述】:
这是我的代码
$this -> db -> select('*');
$this -> db -> from('events');
$this -> db -> where('user_id',$session_data['id']);
$query = $this -> db -> get();
$result = $query->result();
if($result)
{
$events_array = array();
foreach($result as $row)
{
$events_array = array(
'id' => $row->id,
'title' => $row->title,
'ev_img_name' => $row->ev_img_name,
);
$this->session->set_userdata('events',$events_array);
}
$session_data = $this->session->userdata('events');
$id = $this->session->userdata('id');
$data['id'] = $id;
$data['id'] = $session_data['id'];
$title = $this->session->userdata('title');
$data['title'] = $title;
$data['title'] = $session_data['title'];
$ev_img_name = $this->session->userdata('ev_img_name');
$data['ev_img_name'] = $ev_img_name;
$data['ev_img_name'] = $session_data['ev_img_name'];
它只获取表的第一行,但我需要获取具有相同 user_id 的所有行。我怎样才能做到这一点。提前致谢。
【问题讨论】:
-
方法
set_userdata在循环内,导致它每次迭代都会覆盖您的数据 -
谢谢,但我怎样才能返回所有结果?
-
为什么不直接选择特定列,获取结果集然后在会话中分配它,不需要循环
-
我是编码新手。我会尝试解释我需要什么`我有一个表“事件”,用户可以在其中添加无限的事件。现在我想在他们的页面中显示他们所有活动的信息。
-
为什么要在会话中保存所有这些数据?这是很多内存。
标签: php mysql arrays codeigniter rows