显示codeigniter中多个复选框的数据

时间:2017-05-02 06:25:59

标签: codeigniter checkbox show

我希望你们所有人都能帮助我解决我的申请问题

我的问题是,当我想显示来自我的多个复选框的数据时,数据成功显示但只是显示我检查的第一个数据。 例如,我检查数据1,数据2,数据3,但唯一的数据1显示在我的页面上。

我的控制员:

function comparison()
    {
        if ($this->input->post('submit')) {
            foreach ($id_product = $this->input->post('id_product') as $rm) {
                $show_compare = $this->Compare->start_compare($rm);
            }
            $data['comparison'] = $show_compare;
            $data['title'] = "Comparison";
            $data['meta_keywords'] = ". . .";
            $data['meta_descriptions'] = ". . .";
            $this->load->view('theme/comparison',$data);
        }
    }

我的模特:

function start_compare($id_product)
    {
        $this->db->select('product.id_subcategory,product.type,product.product_name,specificcategory.specificcategory_name,specification_biostar.*');
        $this->db->join('specification_biostar', 'specification_biostar.id_product = product.id_product', 'left');
        $this->db->join('specificcategory', 'specificcategory.id_specificcategory = product.id_subcategory', 'left');
        $this->db->where('product.id_product', $id_product);
        $sql = $this->db->get('product')->result_array();
        return $sql;
    }

我的观点(选项多重复选框):

<div class="box-body">
     <input type="checkbox" name="id_product[]" id="txt" onClick="EnableSubmit3(this)" value="<?php echo $row['id_product']; ?>"><label>Choose</label>
     </div>

我的观点(结果数据):

 <table class="table">
                <?php foreach ($comparison as $row){ ?>
                <tr>
                    <td colspan="2"><?php echo $row['id_product'] ?></td>
                </tr>
                <?php } ?>
            </table>

1 个答案:

答案 0 :(得分:0)

你的代码中的

取$ show_compare = array();在foreach循环之前,在foreach中使用array_push。

$show_compare = array();
   foreach ($id_product = $this->input->post('id_product') as $rm) {
        array_push($show_compare,$this->Compare->start_compare($rm)); 
   }
   $data['comparison'] = $show_compare;