如何使用for循环将数据插入mysql数据库?

时间:2014-03-19 16:16:14

标签: php mysql

我的代码是:

<?php
include("connect.php");
mysql_select_db("cars",$conec);
array("red","green","blue","yellow"); 
for(i = 0; i < 4; i++){
  echo "$array[i] <br>";
  }
?>

我想要做的是将每辆车插入数据库,这就是我尝试做的事情,但我只是增加了id,因为它是一个自动增量

for($i = 0; $i < 4; $i++){
    $res = mysql_query("insert into auto (car) values ($array[i])")
}

3 个答案:

答案 0 :(得分:1)

清理代码: -

<?php
include("connect.php");
mysql_select_db("cars",$conec);
$array = array("red","green","blue","yellow"); 
for($i = 0; $i < 4; $i++)
{
    $res = mysql_query("INSERT INTO auto (car) VALUES ('".mysql_real_escape_string($array[$i])."')");
}
?>

使用foreach进行循环,这可以节省第一个元素的数量: -

<?php
include("connect.php");
mysql_select_db("cars",$conec);
$array = array("red","green","blue","yellow"); 
foreach($array as $array_item)
{
    $res = mysql_query("INSERT INTO auto (car) VALUES ('".mysql_real_escape_string($array_item)."')");
}
?>

或者只需构建一个INSERT即可立即放入所有行。

<?php

include("connect.php");
mysql_select_db("cars",$conec);
$array = array("red","green","blue","yellow"); 
$res = mysql_query("INSERT INTO auto (car) VALUES ('".implode("'),('", array_map ('mysql_real_escape_string', $array))."')");

?>

请注意,您现在应该真正使用mysqli_ *函数。

答案 1 :(得分:0)

您需要将$放在变量名之前。将表达式替换为字符串时,必须在其周围放置{}。由于值是SQL字符串,因此您需要在查询中放置引号。

for($i = 0; $i < 4; $i++){
    $res = mysql_query("insert into auto (car) values ('{$array[$i]}')")
}

答案 2 :(得分:0)

for($i = 0; $i < 4; $i++){
    $res = mysql_query("insert into auto values ("'.$array[i].'")") or die ('SQL ERROR !'.$res.'<br />'.mysql_error());
}