php - 将多个数组插入mysql数据库

标签 php mysql

每个 input->post 都是一个键/值数组。每个数组中的每个值都与数组的其余值匹配。因此,数据库插入的第一行将是所有数组键 0 中的所有数据。第二行将是 1,依此类推。我如何使用此方法从 post 数组中获取所有数据并将它们插入数据库?

$selected_size = $this->input->post('selected_size');
        $product_id = $this->input->post('product_id');
        $product_name = $this->input->post('product_name');
        $product_color = $this->input->post('product_color');

        $cookie_id = $this->input->cookie("cookie_id");
        $q1 = $this->db->query("SELECT * FROM default_cart_temp
                                WHERE cookie_id = '$cookie_id'
                                AND is_paid = 'No'");
        if ($q1->num_rows() > 0) {

        } else {
            print_r($selected_size);
            /*$data = array('selected_size' => $selected_size,
                          'product_id' => $product_id,
                          'product_name' => $product_name,
                          'product_color' => $product_color);

$this->db->insert('mytable', $data);*/
        }

最佳答案

假设您的 insert() 方法接受一个关联数组,然后构建并执行插入语句:

foreach($product_id as $key => $value)
{
    $data = array(
        'selected_size' => $selected_size[$key],
        'product_id' => $value,
        'product_name' => $product_name[$key],
        'product_color' => $product_color[$key]
    );

    $this->db->insert('mytable', $data);
}

通过在其中一个数组上使用 foreach 并在每次迭代中获取键,您可以使用相同的键变量来访问每个其他数组中的相应元素。

关于php - 将多个数组插入mysql数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19154258/

相关文章:

php - 如何显示MySQL中的数据

php - 在 PHP 中访问数组内部的数组

php - mysql查询具有开始日期和结束日期的即将发生的事件并显示过去的事件

mysql - 查找类型 B 和 C 之间发生的所有类型 A 的日志事件

mysql - VBA - MySQL UPDATE - 返回代码以确认更新是否完成

php - 在 PHP header() 重定向后给出 Javascript 警报的最简单方法

php - 将 DATETIME 插入 MySQL

MySQL:根据另一个列值在列中选择唯一值

mysql - 这个 SELECT 语句有什么问题?

php - 阻止用户两次报名参加事件