Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php CodeIgniter-下拉菜单将列表中的位置传递给db而不是值_Php_Codeigniter_Dropdown - Fatal编程技术网

Php CodeIgniter-下拉菜单将列表中的位置传递给db而不是值

Php CodeIgniter-下拉菜单将列表中的位置传递给db而不是值,php,codeigniter,dropdown,Php,Codeigniter,Dropdown,我正在使用Codeigniter编写一个小应用程序,到目前为止遇到了一些问题!我有一个从db表填充的下拉列表。下拉列表已填充并正确显示。但是,当我尝试将其内容(值)保存到新的db表时,它保存的是下拉列表中的位置,而不是显示的值 视图中表单的一部分: <?php echo form_open('manage/create_sold_vehicle_record'); ?> Registration Number <br> <?php e

我正在使用Codeigniter编写一个小应用程序,到目前为止遇到了一些问题!我有一个从db表填充的下拉列表。下拉列表已填充并正确显示。但是,当我尝试将其内容(值)保存到新的db表时,它保存的是下拉列表中的位置,而不是显示的值

视图中表单的一部分:

    <?php echo form_open('manage/create_sold_vehicle_record'); ?>
    Registration Number
    <br>
    <?php echo form_dropdown('reg_no', $vehicle_list, 'large'); ?>
这就是模型:

    function create_sold_vehicle_record()
    {


        $new_vehicle_insert_data = array(
            'reg_no' => $this->input->post('reg_no'), <-- This is saved to db, but is the position in dropdown list, not the value shown.
            'sold_by' => $this->input->post('staff'),
            'bought_by' => $this->input->post('customer'),
            'sale_price' => $this->input->post('sale_price'),
            'comm_rate' => $this->input->post('comm_rate'),
            'total_comm' => $this->input->post('total_comm'),
            'sale_date' => $this->input->post('date')
        );

        $insert = $this->db->insert('sold_vehicles', $new_vehicle_insert_data);

        return $insert;
    }
函数创建售出车辆记录()
{
$new\u vehicle\u insert\u data=数组(
“注册号”=>$this->input->post('注册号'),$this->input->post('staff'),
'购买人'=>this->input->post('customer'),
“销售价格”=>$this->input->post('sale\u price'),
“通信速率”=>this->input->post(“通信速率”),
'total_comm'=>this->input->post('total_comm'),
“销售日期”=>this->input->post('date')
);
$insert=$this->db->insert('salled_vehicles',$new_vehicles_insert_data);
返回$insert;
}

因此,它不是将“OU03XHC”保存为db中的reg_no值,而是保存“1”(或下拉列表中该值的任何位置)。

$vehicle\u list[]
需要是一个关联数组

$vehicle_list = array();
foreach ($vehicles_qry->result() as $vehicle)
{
    $vehicle_list[$vehicle->reg_no] = $vehicle->reg_no;
}

现在,form_dropdown()还会在下拉列表html中生成选项值(0、1等除外)

$vehicle_list[]
需要是一个关联数组

$vehicle_list = array();
foreach ($vehicles_qry->result() as $vehicle)
{
    $vehicle_list[$vehicle->reg_no] = $vehicle->reg_no;
}
现在,form_dropdown()还会在下拉html中生成选项值(除0、1等外)

Replace

$vehicle_list = array();
 foreach ($vehicles_qry->result() as $vehicle)
 {
   $vehicle_list[] = $vehicle->reg_no;
 }

“$vehicle->reg_value”可验证是您要存储在数据库中的值

$vehicle_list = array();
 foreach ($vehicles_qry->result() as $vehicle)
 {
   $vehicle_list[] = $vehicle->reg_no;
 }


“$vehicle->reg_value”veriable是您希望存储在数据库中的值

您好-谢谢,它对reg_no字段非常有效!不幸的是,我还有另外两个人,员工和客户,同样的做法似乎不适用于这些…$staff\u qry=$this->manage\u model->listStaff();$staff_list=array();foreach($staff_qry->result()as$staff){$staff_list[$staff->lname]=$staff->lname;}你知道为什么会这样吗?谢谢。检查表单_dropdown()为员工和客户创建的html,什么是“值”?下拉列表正确显示db表内容(这是您的意思吗?-对不起)-写入新表的员工和客户值仅为0(零)。Thx.请检查您的第二个下拉列表,它应该是这样的:您好,谢谢您的帮助,它对注册号字段非常有效!不幸的是,我还有另外两个人,员工和客户,同样的做法似乎不适用于这些…$staff\u qry=$this->manage\u model->listStaff();$staff_list=array();foreach($staff_qry->result()as$staff){$staff_list[$staff->lname]=$staff->lname;}你知道为什么会这样吗?谢谢。检查表单_dropdown()为员工和客户创建的html,什么是“值”?下拉列表正确显示db表内容(这是您的意思吗?-对不起)-写入新表的员工和客户值仅为0(零)。Thx.请查看您的第二个下拉列表,应该是: