作者wickyshiang (一起來歐噴!!)
看板PHP
標題[請益] foreach中使用mysqli_multi_query發生錯誤
時間Tue Nov 9 18:11:05 2010
我是PHP新手想問各位大大一個問題..
我想要在刪除一筆會員資料的同時更改respondent table的userid
$_GET['chose']是表單裡面有核選的會員id
foreach($_GET['chose'] as $uid)
{
$sql2="delete from member where userid='$uid' limit 1;";
$sql2.="update respondent set userid=0 where userid='$uid';";
$query2=mysqli_multi_query($nfdb, $sql2) or die(mysqli_error($nfdb));
}
選取單筆會員資料時可以正常執行
當我選取複數的會員資料時出現以下錯誤訊息
Commands out of sync; you can't run this command now
感謝benck的回應
修改過後已經可以執行了
修改成以下
$sql2="";
foreach($_GET['chose'] as $uid)
{
$sql2.="delete from member where userid='$uid' limit 1;";
$sql2.="update respondent set userid=0 where userid='$uid';";
}
$query2=mysqli_multi_query($nfdb, $sql2) or die(mysqli_error($nfdb));
不過小弟愚鈍還是不懂為什麼$query2這行放到foreach末行就又出現錯誤訊息了
請問有人可以解釋清楚一點嗎..@@
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.136.216.64
※ 編輯: wickyshiang 來自: 220.136.216.64 (11/09 18:33)
1F:→ benck:$a = function1() or function2(); 有這種寫法喔? 11/09 20:02
※ 編輯: wickyshiang 來自: 220.136.216.64 (11/09 20:51)
2F:→ junktw:你確定foreach有執行了? 11/10 00:02
3F:推 Kelunyang:回一樓,有 起碼我看過(雖然沒這樣寫過XD) 11/10 00:03
4F:→ wickyshiang:回j大 修改過後已經能正常執行了 不過我想弄清楚 11/10 06:50
5F:→ wickyshiang:為什麼$query2那行放進foreach就無法執行@@ 11/10 06:55
6F:→ LewisHamiltn:你迴圈跑第二次的時候 還是會執行到第一次的sql啊 11/10 10:49
7F:→ LewisHamiltn:等等 我看錯了 請無視... 11/10 10:50