i have 2 inputs with same name
this is my view
<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">
my controller function is
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);}
my model is
function service_insert($data){
$this->db->insert('services', $data);
}
i am getting error
what i want
i want this result.
$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);
}
Use 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);
}
Your Model
function service_insert($data){
$this->db->insert_batch('services', $data);
}
You can use below code in controller
$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);