如何在php表单提交时使用isset输入分配数组多个值

如何在php表单提交时使用isset输入分配数组多个值,php,mysql,arrays,codeigniter,isset,Php,Mysql,Arrays,Codeigniter,Isset,我试图在isset()之后获取表单提交的数组中的值,但它只在数组中存储最后一个isset()值。获取数组中所有非空值以传递给insert函数的正确方法是什么 $table = 'booking'; if(isset($_POST['tourID'])){ $data = array('tour_fk' => $this->input->post('tourID')); } if(isset($_POST['bookingNumber'])){ $data = a

我试图在
isset()
之后获取表单提交的数组中的值,但它只在数组中存储最后一个
isset()
值。获取数组中所有非空值以传递给insert函数的正确方法是什么

$table = 'booking';
if(isset($_POST['tourID'])){
    $data = array('tour_fk' => $this->input->post('tourID'));
}
if(isset($_POST['bookingNumber'])){
    $data = array('booking_number' => $this->input->post('bookingNumber'));
}
$query = $this->dashboard_model->insert($table, $data);

正确的方法是向
$data
添加新键,而不是重新分配它:

if (isset($_POST['tourID'])){
    $data['tour_fk'] = $this->input->post('tourID');
}
if (isset($_POST['bookingNumber'])){
    $data['booking_number'] = $this->input->post('bookingNumber');
}

正确的方法是向
$data
添加新键,而不是重新分配它:

if (isset($_POST['tourID'])){
    $data['tour_fk'] = $this->input->post('tourID');
}
if (isset($_POST['bookingNumber'])){
    $data['booking_number'] = $this->input->post('bookingNumber');
}

您可以这样实现。创建一个包含所有非空值键的数组。无需为每个已发布的项目编写
isset()
。只需使用
foreach
循环即可。并实现您的结果

$table = 'booking';
foreach($_POST as $key=>$value) {
    if(isset($_POST[$key])) {
        $data[$key]=$this->input->post($key);
    }
}
//print_r($data);
给你举个例子

$array = array('tour_fk'=>1,'booking_number'=>11,'empty_field'=>NULL);
foreach($array as $key=>$value) {
    if(isset($array[$key])) {
        $data[$key]=$value;
    }
}
    print_r($data);
输出:

Array ( [tour_fk] => 1 [booking_number] => 11 )//without null values

您可以这样实现。创建一个包含所有非空值键的数组。无需为每个已发布的项目编写
isset()
。只需使用
foreach
循环即可。并实现您的结果

$table = 'booking';
foreach($_POST as $key=>$value) {
    if(isset($_POST[$key])) {
        $data[$key]=$this->input->post($key);
    }
}
//print_r($data);
给你举个例子

$array = array('tour_fk'=>1,'booking_number'=>11,'empty_field'=>NULL);
foreach($array as $key=>$value) {
    if(isset($array[$key])) {
        $data[$key]=$value;
    }
}
    print_r($data);
输出:

Array ( [tour_fk] => 1 [booking_number] => 11 )//without null values