[英]How insert multiple data using array
我是一个使用php CodeIgniter的新手。 我可以使用php native插入数组。 但是我怎么能用CodeIgniter插入数组呢? 帮我
我有一个复选框的程序。 如果我检查了超过1或检查了所有它仍然插入1数据。 它说成功但只有1个数据。 所以我想插入超过1.我怎么能做那个代码? 请修理它
这是我来自控制器的功能订单代码:
public function order()
{
$this->form_validation->set_rules('id_sub', 'Id_sub', 'required|trim');
if ($this->form_validation->run() == false) {
$data['title'] = 'Order';
$data['user'] = $this->db->get_where('user', ['email' => $this->session->userdata('email')])->row_array();
$data["home"] = $this->product_model->getAll_join();
$this->load->view('templates/header', $data);
$this->load->view('templates/sidebar', $data);
$this->load->view('templates/topbar', $data);
$this->load->view('user/order', $data);
$this->load->view('templates/footer');
} else {
$data = [
'id_sub' => htmlspecialchars($this->input->post('id_sub', true))
];
$this->db->insert('tbl_order_detail', $data);
$this->session->set_flashdata('message', '<div class="alert alert-success" role="alert">Data berhasil disimpan.
</div>');
redirect('user/order');
}
}
这是我的查看订单代码:
<tbody>
<tr>
<td>
<?php
$query = $this->db->query("select tbl_referensi.referensi, tbl_sub_kategori.sub, tbl_sub_kategori.id_sub
from tbl_referensi
inner join tbl_sub_kategori
on tbl_referensi.id_ref = tbl_sub_kategori.id_ref
where tbl_referensi.id_ref = $tampil->id_ref;
");
foreach ($query->result() as $tampil_sub) :
?>
<input type="checkbox" aria-label="Checkbox for following text input" name="id_sub" id="id_sub" value="<?= $tampil_sub->id_sub ?>"> <label for="name" class="mr-4"><?= $tampil_sub->sub ?></label>
<?php endforeach; ?>
</td>
</tr>
</tbody>
我认为问题来自视图顺序中的函数顺序和标记HTML(name = "id_sub"
)。 也许使用id_sub []。 但怎么样? 请修理它并帮助我。
用这个
<input type="checkbox" aria-label="Checkbox for following text input" name="id_sub[]" id="id_sub" value="<?= $tampil_sub->id_sub ?>"> <label for="name" class="mr-4"><?= $tampil_sub->sub ?></label>
你将获得控制器使用的价值
$post_data = $this->input->post('id_sub');
foreach ($post_data as $key=>$value) {
// do your code
}
在html中,输入名称应该是一个数组
<input type="checkbox" aria-label="Checkbox for following text input" name="id_sub[]" id="id_sub" value="<?= $tampil_sub->id_sub ?>"> <label for="name" class="mr-4"><?= $tampil_sub->sub ?>
Mysql查询:
$data = [
'id_sub' => implode(',',$this->input->post('id_sub'))
];
$this->db->insert('tbl_order_detail',$data);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.