我是codeIgniter的新手;我的问题是我有表cartegories_meta_data
meta_cartegory_id | meta_cartegory_name
------------------|--------------------
395 | Soft Drinks
11111 | Hot Drinks
我有一个模型Add_items
public function getcartegory()
{
$query = $this->db->query("SELECT * FROM `cartegories_meta_data`");
return $query->result();
}
控制器项目
public function additems()
{
$this->load->helper('url');
$this->load->model('Add_items');
$data['result'] = $this->Add_items->getcartegory();
$this->load->view('menu');
$this->load->view('additems', $data);
$this->load->view('footer1');
}
在我的观点中,我为每个循环加载数组结果
<?php
foreach ($result as $row) {
$id = $row->meta_cartegory_id;
$name = $row->meta_cartegory_name;
}
?>
现在我想要的是创建一个下拉列表...它将显示所有cartegory名称及其id为值
<?php
$options = array($id => $name );
$more =' class ="form-control"';
echo form_dropdown('item_cartegory', $options, 11111, $more);
?>
目前的代码给了我
<option value="11111" selected="selected">Hot Drinks</option>
但我想要的是得到这样的东西
<option value="395">Soft Drinks</option>
<option value="11111" selected="selected">Hot Drinks</option>
你能帮助我如何处理每个循环以获得我想要的东西或者是否有其他方式
答案 0 :(得分:1)
只需将选项置于循环内即可。
<select>
<?php
$flag=0;
foreach ($result as $row) { ?>
if(flag==0)
{
//code to select the first item
<option value="<?php echo $row->meta_cartegory_id; selected="selected"?>" ><?php echo $row->meta_cartegory_name; ?></option>
flag=1;
}
else
{
//remove the selected here
<option value="<?php echo $row->meta_cartegory_id;?>" ><?php echo $row->meta_cartegory_name; ?></option>
}
} ?>
</select>
如果有错误,请告诉我