从单个表单提交中将数据插入到多个表中



我有下面提到的表单。

并获得以下输出。

使用foreach循环帮助我获得如下输出。

array('notification') = array('pos_id' => 'kiran','post_usr' => 'kumar','comment' => 'kaleti');
array('project') = array('Project_name' => 'india','Proejct_lang' => 'hyderabad');

这是控制器代码。

// controller
public function form_submit() { 
$total_data = $this->input->post(); 
print_r($total_data);
//output :Array ( [notification|pos_id] => kiran [notification|post_usr] => kumar [notification|comment] => kaleti [project|Project_name] => india [project|Proejct_lang] => hyderabad )
foreach ( $total_data as $key => $value ) { 
$arr = explode("|",$key); 
echo $arr[0]."--".$arr[1]."--".$value."<br />"; 
}
}

以下是控制器代码,您将从VIEW获得数据,作为将在controller中收集的输入视图字段。

// Controller
$data_array1 = array(
'table_field_name_here' => $this->input->post('pos_id'),
'table_field_name_here' => $this->input->post('post_usr'),
'table_field_name_here' => $this->input->post('comment'),
);
$data_array2 = array(
'table_field_name_here' => $this->input->post('Project_name'),
'table_field_name_here' => $this->input->post('Proejct_lang'),
);  
$table_1 = 'table_name';
$table_2 = 'table_name';
$record_id_1 = $this->Common_model->insert_into_table($table_1, $data_array1);
$record_id_2 = $this->Common_model->insert_into_table($table_2, $data_array2);
if($record_id_1 && $record_id_2){
// success ...!
}else{
// fail ...!    
}

您将从控制器调用的model函数。

// Model
function insert_into_table($table, $data) {
// echo "<pre>asdf";print_r($data);exit;
$insert = $this->db->insert($table, $data);
$insert_id = $this->db->insert_id();
if ($insert) {
return $insert_id;
} else {
return false;
}
}

希望您能了解使用模型将数据插入两个表有多简单。

相关内容

  • 没有找到相关文章

最新更新