【发布时间】:2016-03-07 04:42:21
【问题描述】:
我有一家购物商店,许多产品具有多种颜色值,或者某些产品具有多种尺寸值,例如。 小号、中号、大号、XL
我将这些值存储在数据库列中,并希望在下拉选择列表中一一显示。我为此使用了codeigniter,但下拉列表中没有显示任何内容。这是我的代码。
型号
public function get_all()
{
$this->db->select()
->from('vendor_products')
->order_by(1,'DESC');
$data = $this->db->get();
$query = $data->result_array();
foreach ($query as $result) {
if (!empty($result['color_values'])) {
$result['color_values'] = explode('||' , $result['color_values']);
}
if (!empty($result['size_values'])) {
$result['size_values'] = explode('||',$result['size_values']);
}
}
return $query;
}
控制器
public function index()
{
$this->load->model('cartm');
$data['posts'] = $this->cartm->get_all();
$this->load->view('cart/index',$data);
}
查看
<?php if($post['color_values']) : ?>
<p>Color: <select>
<?php foreach($post['color_values'] as $optvalue) :
$option_array = explode('::', $optvalue);
?>
<option value="<?=$option_array[0]?>"><?=$option_array[1]?></option>
<?php endforeach; ?>
</select></p>
<?php endif; ?>
<?php if($post['size_values']) : ?>
<p>Size: <select>
<?php foreach($post['size_values'] as $optsize) :
$opt_size = explode('::', $optsize)
?>
<option value="<?=$opt_size[0]?>"><?=$opt_size[1];?></option>
<?php endforeach;?>
</select></p>
<?php endif; ?>
【问题讨论】:
-
我看到的第一件事是,您在模型中返回了 $query,但您在 $result 中进行了一些数据操作。所以也许你应该返回 $result 数组。
-
你能帮我如何操作模型中的数据吗?
-
请给我一个代码示例,谢谢
标签: php mysql database codeigniter