2014-04-10 115 views
0

我似乎無法得到這個工作。部分$_POST動態PHP/mysql下拉菜單問題

<? 
foreach ($db->query("SELECT * FROM clients WHERE TID = '".$_SESSION['UID']."'") as $row) 

{ 
echo '<option value=\" '.$row['UID'].' \">'.$row['FNAME'].' '.$row['LNAME'].'</option>'; 
}?> 
</select> 

['UID']_POST「ED值不斷上來的\」

撕裂了我的頭髮就這一個,不能看到什麼,一定是非常簡單的錯誤。 FNAME和LNAME出現OK ,此頁面上的呼應[UID]顯示了正確的值,因此它是這裏的東西是錯誤的。

+2

它,因爲你逃跑的價值,而你不需要逃避它。 echo'

回答

0

您的查詢將返回結果集,而不是一個數組。你必須得到結果集,然後提取數據

$vals = $db->query("SELECT * FROM clients WHERE TID = '".$_SESSION['UID']."'"); 
while($row = $vals->fetch_assoc()) { 
    echo '<option value="' . $row['UID'] . '">' . $row['FNAME'] . ' ' . $row['LNAME'] . '</option>'; 
} 
+0

您正在假設他使用的數據庫驅動程序。當你運行'query()' –

1

在這裏你不需要斜槓雙引號,因爲你在單引號中聲明瞭字符串。

即嘗試:

echo '<option value="'.$row['UID'].'">'.$row['FNAME'].' '.$row['LNAME'].'</option>'; 
+0

現在工作時,完全有可能擁有一個定製的db包裝器,它返回一個可迭代的結果集。感謝那! – user3521394