php代码使用for循环插入多行

时间:2015-03-02 12:34:49

标签: php

我从column1文本框中获取价值,如

column1 = 501,505,

现在我需要在表格中插入两行,因为column1文本框中有两个值,如:

501

505

但我的for循环插入501和505之间的所有行。

$column1 = $_POST['column1 '];  
$arr = explode(",", rtrim($column1 , ', '));

$min = min($arr);
$max = max($arr);

for ($i = 1; $i <= $max; $i++)
{
$insertrow = $database->insertRow("INSERT INTO table (column1)  
VALUES  (:column1)", array(':column1'=>$column1));              
}

3 个答案:

答案 0 :(得分:1)

这是你在找什么?对于501,505,我将在数据库中插入两行,其中column1值分别设置为501和505.

$column1 = $_POST['column1']; // Removed trailing space
$arr     = explode(",", rtrim($column1 , ', '));

foreach ($arr as $value) {
    $insertrow = $database->insertRow(
        "INSERT INTO table (column1) VALUES  (:column1)",
        array(':column1' => $value))
    ;
}

答案 1 :(得分:0)

$ min和$ max用于什么?

如果要插入n行,其中n等于数组中的值,只需写入:

for ($i = 0; $i < count($arr); $i++) {...

答案 2 :(得分:0)

您需要按max($arr)

更改count($arr)
$column1 = $_POST['column1 '];  
$arr = explode(",", rtrim($column1 , ', '));

$max = count($arr);

for ($i = 0; $i < $max; $i++)
{
$insertrow = $database->insertRow("INSERT INTO table (column1)  
VALUES  (:column1)", array(':column1'=>$arr[$i]));              
}