【发布时间】:2013-06-17 00:02:20
【问题描述】:
问题
如何在 Codeigniter 中一次更新 3 个表?我之前做过这个,但这个案例有点不同,我现在被困了两天。
我有 3 个表要更新。
我不知道如何使用连接表更新 3 个表。我的模型如下所示:
function edit_aanbieding($data, $image_data)
{
$id = $this->uri->segment(3);
$this->db->update('Aanbiedingen', $data);
$insertfoto = array(
'fotonaam' => $image_data['file_name']
);
$this->db->join('Aanbiedingen', 'bedrijfaanbiedingen.idaanbiedingen = Aanbiedignen.idaanbiedingen');
$this->db->join('fotoaanbiedingen', 'bedrijfaanbiedingen.idfotoaanbiedingen = fotoaanbiedingen.idfotoaanbiedingen');
$this->db->where('idbedrijfaanbiedingen', $id);
$this->db->update('fotoaanbiedingen', $insertfoto);
}
我的控制器如下所示:
function editaanbieding()
{
$data = array(
'Aanbieding' => $this->input->post('aanbiedingnaam'),
'Tekst' => $this->input->post('aanbiedingomschrijving'),
'Prijs' => $this->input->post('aanbiedingprijs'),
'Conditie' => $this->input->post('aanbiedingconditie')
);
$config['upload_path'] = './assets/uploads/';
$config['allowed_types'] = 'gif|jpg|png';
$config['max_size'] = '1000';
$config['max_width'] = '';
$config['max_height'] = '';
$config['overwrite'] = TRUE;
$config['remove_spaces'] = TRUE;
$config['file_name'] = $this->input->post('aanbiedingfoto');
$this->load->library('upload', $config);
if ( ! $this->upload->do_upload('aanbiedingfoto'))
{
$error = array('error' => $this->upload->display_errors());
}else{
$image_data = $this->upload->data();
}
$this->aanbieding_model->edit_aanbieding($data, $image_data);
redirect('members/aanbiedingen');
}
但这不起作用。希望这对我正在努力实现的目标有意义。
【问题讨论】:
-
你昨天已经问过了。找不到解决方案?
-
没有。这个问题有点干净。人们没有得到我想要得到的东西。希望这个问题可以。
-
@KeesSonnema 我不熟悉 codeigniter,但你为什么不逐个表更新(不是一次)?
-
我逐表更新。我有 3 个更新语句。两个在我的 edit_aanbieding 和一个在我的 insert_bedrijfaanbieding。
标签: php mysql forms codeigniter insert-update