我想在我的数据库中插入两个不同的值。
字段名称相同但我希望在那里保存两个不同的值。
现在我有一个创建组织的表单。因为我有两个领域的销售和技术。所以我插入名称,last_name,电子邮件销售和技术。现在无论我从那里获得什么价值,我都会将其保存到用户表并将其ID保存到我的组织表中。
首先,我想要插入销售人员信息,然后是技术人员 获取信息并获取其ID并将其保存在组织中
这是我的代码:
$this->data['company'] = $this->company_m->get_new();
$this->data['user'] = $this->secure_m->get_new();
$rules = $this->company_m->rules_admin;
$this->form_validation->set_rules($rules);
if ($this->form_validation->run() == TRUE)
{
$data =$this->secure_m->array_from_post(array('first_name','last_name','email'));
$sales_id = $this->secure_m->save($data,$id);
$data =$this->secure_m->array_from_post(array('first_name','last_name','email'));
$tech_id = $this->secure_m->save($data,$id);
$data = $this->company_m->array_from_post(array('org_name','dba','addr1','addr2','city','state','country','pin','sales_id','tech_id','tax_number','comment','url'));
$data['sales_id']= $sales_id;
$data['tech_id']= $tech_id;
$this->company_m->save($data, $id);
redirect('admin/company');
}
// Load the view
$this->data['subview'] = 'admin/company/add';
$this->load->view('admin/_layout_main', $this->
POST代码中的数组
public function array_from_post($fields){
$data = array();
foreach ($fields as $field) {
$data[$field] = $this->input->post($field);
}
return $data;
}
答案 0 :(得分:0)
$values = array(
'first_name' => $this->input->post('first_name'),
'last_name' => $this->input->post('last_name'),
'email' => $this->input->post('email'),
'user_type' => $this->input->post('user_type'),
);
$data = $this->model->inset('table_name', $values);
并且还将此数组用于许多表
答案 1 :(得分:0)
您正在尝试从错误的键获取值。即您有first_name_sales
和first_name_tech
,但始终从first_name
开始阅读。
尝试
$data_tech = $this->secure_m->array_from_post(array('first_name_tech','last_name_tech','email_tech','tech'));
// ...
$data_sales = $this->secure_m->array_from_post(array('first_name_sales','last_name_sales','email_sales','sales'));
// ...
此外,您应该set_value
来自相应的对象,而不是$user
。通过$user_tech
和$user_sales
来查看。像Smth一样
$this->load->view('admin/_layout_main', ['user_tech' => $data_tech, 'user_sales' => $data_sales]);