2016-04-13 26 views
0

テーブル内の複数の入力をCodeIgniterの これが私の見解であるiが同じ名前を持つ2つの入力を持つ

    <input type="text" class="form-control" name="serv[]" > 
       <input type="text" class="form-control" name="serv[]" > 
     <input type="hidden" id="dr_id" name="d_id"> 

私のコントローラ機能がある

public function submit_2() 
{ 

     $data = array(
      'service_name' => $this->input->post('serv'), 
      'dr_id' => $this->input->post('d_id'), 
      ); 
     $this->insert_model->service_insert($data);} 

私のモデルは私が

function service_insert($data){ 
    $this->db->insert('services', $data); 
}  

ですエラーが発生する

私が欲しいものenter image description here 私はこの結果が欲しいです。

+0

にコードの下に使用することができます。.. – Yash

+0

$ this-> input-> post( 'serv');配列のこの変数 – msvairam

答えて

1
$arr = $this->input->post('serv'); //it will contain value in arrray format 
foreach($arr as $k=>$v) 
{ 
    $data = array(
      'service_name' => $v, 
      'dr_id' => $this->input->post('d_id'), 
      ); 
     $this->insert_model->service_insert($data); 
} 
-1

あなたは `このためのループstatement`を必要とするコントローラ

$servData = $this->input->post('serv'); 
    if(is_array($servData)) 
    { 
     foreach ($servData as $serv) 
     { 
      if(!empty($serv)) 
      { 
       $data[] = array(
        'service_name' => $serv, 
        'dr_id' => $this->input->post('d_id'), 
       ); 
      } 
     } 
    } 
    $this->insert_model->service_insert($data); 
0

使用insert_batch()

public function submit_2() 
{ 
    $services = $this->input->post('serv'); 
    $data = []; 
    foreach($services as $service) 
    { 
     $data[] = array(
     'service_name' => $service, 
     'dr_id' => $this->input->post('d_id'), 
     ); 

    } 
     $this->insert_model->service_insert($data); 
} 

あなたのモデル

function service_insert($data){ 
    $this->db->insert_batch('services', $data); 
} 
関連する問題