有關於循環查詢,該如何做?
本帖最后由 sgeta 于 2011-2-18 15:17 编辑需求是列出一份個人資料的清單,在每一筆資料裡分別列出這個人的前3個訂單
類似下面這樣
name1,,phone,address
name2,,phone,address
查了一下,需要在model裡就先做好array的排列
實際到底該如何做呢?理不出頭緒來
若是以前只要2個循環就能完成,但使用ci後,反而不知如何下手…
能否請各位先進給點指示呢? 实际上,确实和以前的一样,你把以前的代码复制过来一样可以用。 嘗試在model裡作了一下,但一直報錯,能看看哪裡弄錯了什麼嗎?
$data = $this->db->query($q);
$a1 = array();
$a2 = array();
foreach ($data->result_array() as $tmp){
foreach ($tmp as $tmp2){
array_push($a2,$tmp2);
}
$tmp3=list_order($tmp['id']);
array_push($a2,$tmp3);
array_push($a1,$a2);
}
return $a1; 自己回一下,總算解決囉,順便列出修改後的原始碼
$data = $this->db->query($q);
$a1 = array();
foreach ($data->result_array() as $tmp){
$a2 = array();
foreach ($tmp as $tmp2){
array_push($a2,$tmp2);
}
$tmp3=$this->model->list_order($tmp['id']);
array_push($a2,$tmp3);
array_push($a1,$a2);
}
return $a1; $tmp3=$this->model->list_order($tmp['id']);
这句话什么意思? $tmp3=$this->model->list_order($tmp['id']);
这句话什么意思?
Hex 发表于 2011-2-18 18:31 http://codeigniter.org.cn/forums/images/common/back.gif
寫的不好讓老大見笑了:L
因為另外有個model用來處理order的array (在別處也有用,所以拆開寫)
內容如下:
function list_order($id)
{
$order = $this->db->get_where('order',array('id'=>$id),'3','0');
$a1 = array();
foreach ($order->result_array() as $tmp){
array_push($a1,$tmp);
}
return $a1;
}
页:
[1]