使用php在数据库中插入多个数据?

时间:2011-12-10 14:10:10

标签: php mysql

我有两个数组我需要将这两个数组数据插入数据库

这是我的代码

$LocaName=$_REQUEST['locname'];
$address=$_REQUEST['address'];

$LocaNamearray = explode("|||", $LocaName);

$addressarray = explode("|||", $address);

for($i=0;$i<count($LocaNamearray);$i++)
{
$query="insert into tbl_MapDetails(LocationName,Address)values('$LocaNamearray[$i]','$addressarray[$i]')";

$result=mysql_query($query);



}

所以这里我需要一次将这两个数组插入数据库plz指导我

感谢您提前。

3 个答案:

答案 0 :(得分:1)

尝试使用concecation

$query="insert into  tbl_MapDetails(LocationName,Address)values('".mysql_real_escape_string($LocaNamearray[$i])."','".mysql_real_escape_string($addressarray[$i])."')";

答案 1 :(得分:1)

如果你做那样的事情会更好

$strQuery = "INSERT INTO tbl_MapDetails(LocationName,Address) VALUES ";
$strDelimiter = "";

for($i=0;$i<count($LocaNamearray);$i++)
{
    $name = mysql_real_escape_string($LocaNamearray[$i]);
    $address = mysql_real_escape_string($addressarray[$i]);

    $strQuery .= $strDelimiter."('$name', '$address')";
    $strDelimiter = ', ';
}

if($strDelimiter != '')
{
    mysql_query($strQuery);
}

答案 2 :(得分:0)

你不能在这样的字符串中使用数组。 (考虑到sql注入是一种可怕的做法......最好还是使用prepared statements

for($i=0, $c=count($LocaNamearray); $i < $c; ++$i) {
    $name = mysql_real_escape_string($LocaNamearray[$i]);
    $address = mysql_real_escape_string($addressarray[$i]);

    $query="insert into tbl_MapDetails(LocationName,Address)values('$name','$address')";
    $result=mysql_query($query);
}