我发现了类似的问题,但是我找不到任何适合我情况的答案。
使用 Codeigniter:我有一个产品数据库表和一个库存数据库表。我想在我的网站上显示一个 html 表格,每一行都是一个产品。我附上了一张图片来帮助解释。
提交后,我想将每个产品数据行作为单独的行插入数据库中。
这是我最简单形式的控制器...
控制器 - - - - - - - - - - - - - - - - -
function add_show_inventory()
{
$data['products']=$this->product->get_products();
$this->form_validation->set_rules('skuID', 'skuID', 'required');
$this->form_validation->set_rules('brought-in', '"Brought In"', 'required');
$this->form_validation->set_rules('finished-with', '"Finished With"', 'required');
$this->form_validation->set_rules('deliveries', 'Deliveries');
$this->form_validation->set_rules('add-1', 'Add 1');
$this->form_validation->set_rules('add-2', 'Add 2');
$this->form_validation->set_rules('band-comp', 'Band Comp');
$this->form_validation->set_rules('other-comp', 'Other Comp');
$this->form_validation->set_rules('half-sales', 'Half Sales');
$this->form_validation->set_rules('half-amount', 'Half Amount');
$this->form_validation->set_error_delimiters('<div class="error-module">', '</div>');
if($this->form_validation->run()== FALSE){
$this->load->view('header');
$this->load->view('menu');
$this->load->view('inventory/show-add-inventory', $data);
$this->load->view('footer');
} else {
if($_POST){
$data=array(
'brought-in'=>$_POST['brought-in'],
);
$this->inventory->insert_inventory($data);
redirect(base_url().'shows/');
}
}
}
获取产品模型-----------------------------
function get_products($num=10,$start=0) {
$where= array('userID'=>$this->session->userdata('userID'), 'active'=>1);
$this->db->select()
->from('products')
->where($where)
->order_by('product','asc')
->limit($num,$start);
$query=$this->db->get();
return $query->result_array();
}
插入INV模型------------------------------------------
function insert_inventory($data) {
$product_count= $this->db->count_all('products');
for ($i=0; $i < $product_count; $i++) {
$this->db->insert('inventory', array('brought-in'=>$_POST['brought-in']));
}
return $this->db->insert_id();
}
看法 - - - - - - - - - - - - - - - - - - - - -
<form action="<?= base_url(); ?>inventories/add_show_inventory" method="post">
<?php if(!isset($products)){ ?>
<p>There are currently no products posted yet.</p>
<?php } else {
foreach($products as $row){
?>
<td class="highlight">
<input type="text" name="brought-in" value="0"> <!-- Brought In -->
</td>
<?php } ?>
<input type="submit" name="submit" class="submit">
我从这里的代码中得到的结果是数据库的三个主菜,这是我想要的,但所有行都与表格中的最后一行相同......这意味着模型中的迭代只是在最后一行上迭代表格...
再次,该代码被精简为最简单的形式,因此我没有 3 页完整的代码...但是如果您想查看我没有显示的任何内容,请告诉我...
非常感谢任何和所有的帮助......我已经为此工作了几个星期......