2011-11-21 113 views
2

數組$ IDS包含:將數組插入到MySQL數據庫中的多行?

Array ([0] => 25 [1] => 29 [2] => 30 [3] => 34) 

如何插入每個鍵在ID列行?

ID | 
25 
29 
30 
34 

到目前爲止,我這樣做,我不知道是否有可能把它貼在查詢,但:

$x = 0; 
while($x < 6) { 
echo "values ('" . $follower . "','" . $ids[$x] . "')"; 
$x++; 
} 
+0

你卡在哪裏?你試過什麼了? –

+0

到目前爲止的任何代碼..? –

+0

是的,對不起。我正在嘗試創建一個迴響值並查看是否可以將其集成到查詢中的循環。我不知道這是否可能。我在問題中添加它。 – lisovaccaro

回答

3

它的那樣簡單:

foreach ($ids as $k => $v) { 
    mysql_query("insert into TABLE_NAME(ID) values($v)"); 
} 

,併爲您的第二個問題:

foreach ($ids as $k => $v) { 
    if($k!=0){ 
     mysql_query("insert into TABLE_NAME values($v)"); 
    } 
} 
+0

這將執行查詢多次,但我的解決方案將執行多次值只有一次.. http://stackoverflow.com/questions/8207628/insert-array-to-multiple-rows-in-mysql-database/8207943 #8207943 –

1
foreach($ids as $id=> $val){ 
mysql_query("insert into table(id,value) values($id,$val)",$cn); 
} 
1
  • 你通過數組迭代:foreach ($arr as $key => $value) {
  • 每次迭代你創建一個SQL查詢$sql = "INSERT INTO table (id) VALUES ($value)"; - 當然你會mysql_real_escape的值$value在做這個之前
  • 然後執行查詢:mysql_query($sql)
1

您可以使用

$sql = ""; 
foreach($ids as $id=> $val){ 
if(empty($sql)){ 
$sql = "insert into table(follower,value) values($follower,$val)"; 
}else{ 
$sql.=",($follower,$val)"; 
} 
} 
mysql_query($sql);