2017-01-19 2 views
0

양식에 isset() 뒤에 배열로 값을 제출하려고했지만 마지막으로 배열에 isset() 값만 저장합니다. 배열의 null이 아닌 모든 값을 삽입 함수에 전달하는 올바른 방법은 무엇입니까?PHP에서 양식 제출시 isset 입력으로 배열 값을 할당하는 방법

$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); 

답변

1

올바른 방법은 재 할당하는 대신 $data에 새 키를 추가하는 것입니다

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

당신이 바로 선생님입니다 : 여기

$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); 

가 출력 .. 당신을위한 예입니다. 그것은 효과가 있었다. 정말 감사합니다 – Faisal

1

당신은 values.Not 모든 null이 아닌 키의 배열이 작성해야 this.Make처럼 달성 할 수 각 게시 항목에 대한 isset(). 그냥 foreach loop.And의 결과를 달성 사용하십시오.

Array ([tour_fk] => 1 [booking_number] => 11)//without null values 
관련 문제