我正在从类似的列1文本框中获取值
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));
}
这就是您想要的吗?对于501505,我将在数据库中插入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))
;
}
您需要通过count($arr)
更改max($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]));
}
$min和$max用于什么?
如果你想插入n行,其中n等于数组中的值,你只需要写:
for ($i = 0; $i < count($arr); $i++) {...