如何从动态数据库表中获取具有值和标签的动态下拉列表。 即 阵列( ' label1的' => '值1&#39 ;, ' LABEL2' => '值2' )
<?php
echo form_open('add_veg/insert_data', 'class="form-horizontal" id="myform" role="form"');
$sales_date = array(
'type' => 'date',
'name' => 'date',
'id' => 'date',
'class' => 'form-control'
);
$vegnames=array();
foreach($veg_names as $r)
{
$vegnames[]=$r->label;
//$r->value;
}
/*
$vegnames = array(
'cauliflower' => 'Caulifower',
'Brinjal' => 'Brinjal'
);
*/
/*$veg_name = array(
'type' => 'text',
'name' => 'v_name',
'id' => 'v_name',
'class' => 'form-control'
);
*/
$wt = array(
'type' => 'text',
'name' => 'weight',
'id' => 'wt',
'class' => 'form-control'
);
$price = array(
'type' => 'text',
'name' => 'price',
'id' => 'price',
'class' => 'form-control'
);
$save=array(
'name' =>'sub',
'value' =>'Save',
'class' =>'btn btn-success btn-sm'
);
echo form_label('Sales date', 'sdate', 'class="control-label col-sm-2"');
echo form_input($sales_date);
echo form_label('Vegitable Name', 'vname', 'class="control-label col-sm-2"');
//echo form_input($veg_name);
echo form_dropdown('v_name', $vegnames,'','class="form-control"');
echo form_label('Weight', 'wt', 'class="control-label col-sm-2"');
echo form_input($wt);
echo form_label('Price', 'price', 'class="control-label col-sm-2"');
echo form_input($price);
echo form_submit($save);
echo form_close();
?>
使用此
$vegnames=array();
foreach($veg_names as $r)
{
$vegnames[]=$r->label;
//$r->value;
}
我得到了像
这样的结果<option value='0'>label1</option>
<option value='1'>label2</option>
<option value='2'>label3</option>
但我想要
<option value='value1'>Label1</option>
<option value='value2'>label2</option>
<option value='value3'>label3</option>
如何在codeigniter中解决这个问题。
答案 0 :(得分:3)
那么你应该使用:
$vegnames=array();
foreach($veg_names as $r){
$vegnames[$r->value]=$r->label;
}
答案 1 :(得分:1)
您需要拥有数据库行的名称值对。
为此您需要使用多维数组。
每个元素都应该有一个键(来自数据库的值)和值(来自数据库的标签)
select选项的值为key,label为value,如下所示:
$vegnames=array();
foreach($veg_names as $r){
$vegnames[$r->value]=$r->label;
}