我有两个数组我需要将这两个数组数据插入数据库
这是我的代码
$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指导我
感谢您提前。
答案 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);
}