产品类别ID不适用于CodeIgniter中的产品表单

时间:2017-09-12 11:33:16

标签: php forms codeigniter codeigniter-3 categories

我正在建立一个网站,以便用户可以在网站上添加产品。但是,当我在产品表单视图文件中选择某个类别并上传产品时,产品没有类别ID,并且它显示类别id = 0。

Some database information:

categories table:
Row 1: id
Row 2: name

In the products table:
Row: category_id

这是我的视图表单文件中类别的下拉菜单:

 <select name="category_id">
        <?php foreach (get_categories_h() as $category) : ?>
            <option><?php echo $category['name']; ?></option>
        <?php endforeach; ?>
        </select>

这是我的控制器中我的数据库插入功能的一部分:

$this-> db-> insert('products', array(
                'product_foto' => 'new_'.$data["raw_name"].$data['file_ext'],
                'product_foto_thumb' => 'thumb_'.$dataThumb["raw_name"].$dataThumb['file_ext'],
                'product_naam' => $this->input->post('product_naam'),
                'product_beschrijving' => $this->input->post('product_beschrijving'),
                'ophaal_plaats' => $this->input->post('ophaal_plaats'),
                'category_id' => $this->input->post('category_id'),
                'date_created' => date('Y-m-d'),
                'date_updated' => date('Y-m-d')
            );

我希望有人可以帮助我,谢谢

2 个答案:

答案 0 :(得分:1)

您可以针对您的问题尝试此解决方案。

  

更改您的视图文件

<select name="category_id">
        <?php foreach (get_categories_h() as $category) : ?>
            <option value="<?=$category['id'];?>"><?php echo $category['name']; ?></option>
        <?php endforeach; ?>
</select>
  

更改您的控制器文件。

$this-> db-> insert('products', array(
                'product_foto' => 'new_'.$data["raw_name"].$data['file_ext'],
                'product_foto_thumb' => 'thumb_'.$dataThumb["raw_name"].$dataThumb['file_ext'],
                'product_naam' => $this->input->post('product_naam'),
                'product_beschrijving' => $this->input->post('product_beschrijving'),
                'ophaal_plaats' => $this->input->post('ophaal_plaats'),
                'category_id' => !empty($this->input->post('category_id')) ? $this->input->post('category_id') : 0,
                'date_created' => date('Y-m-d'),
                'date_updated' => date('Y-m-d')
            );

我希望这会对你有所帮助。

答案 1 :(得分:0)

尝试这个

<select name="category_id">
        <?php foreach (get_categories_h() as $category) : ?>
            <option value="<?=$category['id'];?>"><?php echo $category['name']; ?></option>
        <?php endforeach; ?>
</select>