这是我的数据库:
-id product prodcut-company category
-1 latitude dell laptop
-2 . acer desktop
-3 . azus mouse
-4 . sony keyboard
+如果我有很多按类别分隔的产品,那么我想按类别循环我如何编码并在一个页面中显示它然后将其列为像笔记本电脑,台式机一样的块......
请帮忙! 谢谢
答案 0 :(得分:1)
您可以在模型中创建一个方法,如下所示 -
public function getData(){
$this->db->from("product_table");
$this->db->order_by("category");
$q = $this->db->get();
if($q->num_rows() > 0){
return $q->result();
}
return [];
}
使用控制器中的此方法从模型中获取数据,并将此值传递给视图。
$data[
'products' => $this->your_model->getData()
];
$this->load->view('your_view',$data);
循环显示这些值并在视图中打印。
...
<?php
if(!empty($products)){
$count = count($products);
$i = 0;
while($i < $count){
$category = $products[$i]->category;
echo '<h3>Category: '.$category.'</h3>';
echo '<table>
<tr><th>Product</th><th>Company</th><th>Category</th></tr>
';
for(; $i < $count && $category == $products[$i]->category ; $i++ ){
echo '
<tr>
<td>'.$products[$i]->product.'</td>
<td>'.$products[$i]->company.'</td>
<td>'.$products[$i]->category.'</td>
</tr>
';
}
echo '</table>';
}
}
?>
...