2017-12-20 7 views
0

제발 도와주세요, 내가 codeigniter에 여러 배열을 삽입하는 방법에 문제가 있습니다. 만약 내가 2 또는 3 배열을 게시, 그것은 성공적으로 데이터베이스에 저장하지만, 내가 3 개 이상의 배열을 게시하면 데이터가 항상 아니다 데이터베이스에 저장됩니다. 여기codeigniter에 여러 배열을 삽입하는 방법은 무엇입니까?

function add_booking($table,$data) { return $this->db->insert($table,$data); } 

내 코드 :

for($i =0 ; $i < count($data["alamat_tujuans[]"]) ;$i++){ 
    $tujuan =$data["alamat_tujuans[]"][$i]; 
    $ddetail = array(
     "id"   =>$delivery_id+$i, 
     "address"  =>$tujuan, 
     "sku_driver" =>$data["sku[]"][$i], 
     "contact"  =>$data["kontak_penerima[]"][$i], 
     "instruction" =>$data2["instruksi[]"][$i], 
     "order_id"  =>$obj[0]->id.'-'.$transid, 
     "name"   =>$data["nama_penerima[]"][$i], 
     "email"  =>$data["email_penerima[]"][$i], 
     "created_date" =>$date, 
     "place_name" =>$data['place_name'], 
     "districts" =>$data['districts'], 
     "lat"   =>$data['tujuan1_lat[]'][$i], 
     "lng"   =>$data['tujuan1_lng[]'][$i], 
     "harga_muatan" =>$data['harga_muatanya[]'][$i], 
     "status"  =>$data['status'], 
     "provider_id" =>$_SESSION['logged_in']['provider_id'], 
     "city"   =>$data['city'] 
     ); 
    $insertData = $this->m_booking->add_booking("delivery_detail", $ddetail); 
} 
+0

"데이터베이스에 모두 저장되지 않은 데이터"는 무엇을 의미합니까? 그것을 특별히 저장했거나 전혀 저장하지 않았습니까? 오류를 반환 했습니까? –

+0

가끔 저장되고 때로는 전혀 저장되지 않을 것입니다 –

+1

for 루프 내에서'$ ddetail'을 모두 확인 했습니까? 그 모두에 올바른 데이터가 들어 있습니까? –

답변

0

여기에 귀하의 답변입니다

여기 내 모델 기능입니다.

$data = array(
       array(
       'title' => 'My title', 
       'name' => 'My Name', 
       'date' => 'My date' 
      ), 
       array(
       'title' => 'Another title', 
       'name' => 'Another Name', 
       'date' => 'Another date' 
      ) 
); 

$this->db->insert_batch('mytable', $data); 

먼저 루프를 사용하여 다차원 배열을 만듭니다. 데이터가 db에 삽입 할 준비가되면 insert_batch 함수를 사용하십시오. insert_batch 함수는 모든 데이터를 한 번에 데이터베이스에 삽입합니다.
희망이 도움이 될 수 있습니다.

+0

나는 그것을 시도했지만, 여전히 모든 것을 데이터베이스에 저장하지 않았다. 너무 혼란 스러워요 –

+0

배열이 제대로 포맷되지 않았다고 생각합니다. 배열을 표시하기 위해'print_r'을 시도 했습니까? – Prabhu

+0

나는 데이터를 성공적으로 데이터베이스에 저장했지만 모든 데이터를 저장하지는 않는다. –