寻找代码定制

时间:2012-11-01 05:47:50

标签: php jquery html css jquery-ui

我使用以下php for循环在数据库中插入数组值。我需要更正我的代码。我想查询for循环。请帮我纠正我的代码。

<?php
             /*********************/
             $data = $_REQUEST['columns_one'];
             $store_data = explode(",",$data);
            foreach($store_data as $key =>$value)
            {
            //echo $value;
            $query = "insert into fb_savedforms(form_id,form_structure) values ('','".$value."')";
            $result = mysql_query($query);
            } 
            /**************************************/
        ?>

3 个答案:

答案 0 :(得分:1)

使用批量插入在循环中构建查询,但只执行一次。

来自How to do a batch insert in MySQL

  

使用VALUES语法的INSERT语句可以插入多行。为此,请包含多个列值列表,每个列值都括在括号内并用逗号分隔。

示例:

INSERT INTO tbl_name (a,b,c) VALUES(1,2,3),(4,5,6),(7,8,9);

答案 1 :(得分:1)

尝试这样的事情:

$data = $_REQUEST['columns_one'];
$store_data = explode(",",$data);
//setup the insert query
$query = "INSERT INTO fb_savedforms(form_id,form_structure) VALUES ";
$values = array(); //store all the new rows
foreach($store_data as $key =>$value){
  $values[] = "('','".$value."')";
}
$query .=  implode(',', $values) . ';';
$result = mysql_query($query);

大免责声明:此代码尚未经过测试,但应说明您可以拥有多个值集。

答案 2 :(得分:-2)

$data = $_REQUEST['columns_one'];
             $store_data = explode(",",$data);
            $query = '';
            foreach($store_data as $key =>$value)
            {
            //echo $value;
            $query .= "insert into fb_savedforms(form_id,form_structure) values ('','".$value."'); ";

            } 
$result = mysql_query($query);