這裏MySQL查詢是我的數組:基於PHP陣列
array (size=2)
100 =>
array (size=2)
'trade' => int 5
'gold' => int 10
101 =>
array (size=2)
'trade' => int 10
'gold' => int 20
陣列的關鍵是,我想在查詢運行用戶的ID。我想通了,我可能需要在使用中,例如:
SELECT * FROM `users` WHERE `id` IN (:id)
(:身份證是由$ ID在腳本代替)
現在,當我做
SELECT * FROM `users` WHERE `id` IN (100,105)
(用於測試目的) 有用。
雖然它需要被如此製備當我設置
$id = 100,101;
或
$id = ‘100,101’;
它只顯示100記錄。
任何想法? 感謝
不確定你是什麼問。你在問你如何去改變這個準備好的聲明? – Shane
我在問爲什麼它的作品,當我把它直接進入查詢,而不是在準備好的聲明中分配 - 謝謝。 – MrGuitarWizard
如果你通過mysqli傳遞細節,我認爲發生的事情是它已經過去了,你想要一個「100,101」的ID,而不是一個ID爲100或ID爲101.不希望工作,但如果它有,我會假設mysql通過刪除第一個非數字和後面的任何東西(即逗號和101)將字符串「100,101」轉換爲整數,因此匹配只是100.通過變量長度列表像一個項目是一個痛苦的參數! – Kickstart