我有多個下拉菜單。當用戶點擊提交按鈕時。 if子句中的isset功能triggerd和下面的代碼被執行查詢循環內的數據庫
if(isset($_POST["submit"]))
{
$player_id = $_REQUEST['players'];
var_dump ($player_id);
for($i=0; $i < sizeof($player_id); $i++) //query database with different player_id each time
{
foreach ($player_id as $id){
$query = 'SELECT `name` FROM `player_info`
WHERE `player_id` = '.$id;
$return_names = mysql_query($query) or die(mysql_error());
}
while($row = mysql_fetch_array($return_names))
{
$selected[] = $row['name'];
}
var_dump($selected);
}
}
什麼上面的代碼應該做的是返回的名稱,球員,選擇的用戶。然而,當我打開它,我得到這個:
注意,我在第一的var_dump使用$ player_id數組保存不同player_id值。
然而,當我做的var_dump第二陣列$選定的數組只包含值「漢堡」
我懷疑問題是在foreach循環中,我查詢數據庫的方式。如果有人能指出我正確的方向,將不勝感激。 在此先感謝。
爲什麼ü同時使用'for'和'foreach'循環? –
我想提一下,這個腳本對於SQL注入非常脆弱。 http://en.wikipedia.org/wiki/SQL_injection –