2013-03-05 82 views
0

我想打印出我在MySQL表中的數據,但我希望它們根據列的值進行過濾。我希望這些值在下拉列表中顯示,選擇其中一個後,我不會讓程序打印出滿足該要求的所有記錄。爲了更清楚地說明,我希望基於從下拉菜單中選擇的類別打印圖書館中的書籍。我做了一些研究,並修改了一些代碼。但這是我第一次用PHP編寫代碼,而且我明確地做了一些錯誤的事情。我試圖執行的代碼是這樣的:下拉列表中的PHP過濾MySQL數據

<form id="form1" name="form1" method="POST" action=""> 

Fusha e kërkimit: 
<select Name='NEW'> 
<option value="">---Zgjidh---</option> 
<? 
mysql_connect('localhost', '<password>', '<user>'); 
mysql_select_db("<mysql_db>"); 

if (isset ($select) && $select!=""){ 
$select=$_POST['NEW']; 
} 
?> 
<? 
$list=mysql_query("SELECT * FROM 'arkiva' ORDER BY 'Fusha'"); 
while($row_list=mysql_fetch_assoc($list)){ 
?> 
    <option value="<?php echo htmlspecialchars($row_list['Fusha']);?>"> 
      <?php echo htmlspecialchars($row_list['Fusha']); ?> 
     </option> 
<? 
}?> 
</select> 
<input type="submit" name="Submit" value="Dërgo" /> 
</form> 

但這只是打印出下降的箱子下來,沒有實際價值,我有一個缺失的代碼,選擇後打印出來。

非常感謝你提前!

+0

粘貼循環內的'var_dump($ row_list);'輸出的一個迭代。 (請不要使用mysql_ *,而應使用mysqli_ *或PDO。) – mkaatman 2013-03-05 23:29:31

回答

0

由於語法,您的查詢沒有正確排序。添加反引號應該有所幫助:

$list=mysqli_query("SELECT * FROM `arkiva` ORDER BY `Fusha`");

This answer地址什麼反引號中查詢做。

0

仍然無法在下拉菜單中顯示我的字段。我暫時通過手動創建下拉列表的字段來解決這個問題。 Bur隨着數據庫的發展,它肯定會變得非常混亂和漫長。所以我仍然需要解決這個問題。無論如何,謝謝你的幫助