php - 将复选框值插入具有指定字段的数据库

标签 php mysql codeigniter-2

我正在从表单中插入如下所示的值

<span class="field"><input type="text" name="item_name" id="item_name" class="input-small" value="<?php echo set_value('item_name'); ?>" />    

<span class="field"><input type="checkbox" name="tag_id[]" value="<?php echo $value['tag_id']; ?>" /></span>

对于第一个字段,我想插入到以下 item_table

+----------+--------------+
| item_id  |   item_name  | 
+-------------+-----------+
| 1        | A            |
| 2        | B            |
| 3        | C            |
| 4        | D            |
| 5        | E            |
+----------+--------------+

对于第二个字段,我想将复选框值插入到下表中,如下所示。

+----------+--------------+
| item_id  |     tag_id  | 
+-------------+-----------+
| 1        | 1            |
| 1        | 2            |
| 2        | 1            |
| 2        | 2            |
| 2        | 3            |
+----------+--------------+

在我的模型函数中

$item_name = $this->input->post('item_name');

        $data_to_store = array(
            'item_name' => $item_name            
        );
        $insert = $this->db->insert('item_table', $data_to_store);
        return $insert;

如何根据项目 ID 将复选框值插入到第二个表?

最佳答案

我认为你可以使用两种方法。

function tableItem($data)
{
    $item_name = $this->input->post('item_name');

    $data_to_store = array(
        'item_name' => $item_name            
    );
    $this->db->insert('item_table', $data_to_store);
    $id = $this->db->insert_id();

    $this->tableTag($moreData,$id);
}

function tableTag($theData,$itemID)
{
    foreach($theData as $d)
    {
        $data_to_store = array(
            'tag_id' => $d,
            'item_id' => $itemID           
        );
        $this->db->insert('tag_table', $data_to_store);
    }
}

或者您可以将这两种方法合二为一。

记住为插入添加错误处理程序。

关于php - 将复选框值插入具有指定字段的数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25966898/

相关文章:

php - Codeigniter - SQLServer 数据库连接错误

php - SELECT FROM 子查询性能

mysql - 在 MYSQL 中使用连接

mysql - CodeIgniter 使用 n 个数组元素构建 LIKE 查询

php - 如何将从其他函数返回的变量与 mysql 中的匹配行进行比较

php - 解析器和 View 调用之间有什么区别?如何从 View 中检索数据? (通过,返回)

php - 我正在使用数据库中的两个表并使用 PHP 在页面上显示

php - Composer 可以在不实际下载软件包的情况下生成 `composer.lock` 吗?

php - mysql_query() : how to check whether any rows are updated in case of UPDATE SQL

mysql - 名称错误 : name 'DATABASES' is not defined with AWS RDS