2014-03-31 74 views
-3

我一直在試圖填充下拉列表中的結果從一個查詢使用PHP從一個MySQL表,但列表是空的。有人可以看看我的代碼,告訴我我做錯了什麼。從php表中查詢結果填充下拉列表

我的查詢是Select cat from kernel

我使用的代碼:$results = $query->fetchAll();

繼承人我的代碼:

<?php 

$dbhandle = new PDO('host','username','password'); 


$sql = "SELECT cat FROM kernel"; 
$results = $query->fetchAll(); 

echo "<select name='cat'>"; 
while ($row = mysql_fetch_array($result)) { 
echo "<option value='" . $row['cat'] . "'>" . $row['cat'] . "</option>"; 
} 
echo "</select>"; 

?> 
+0

有沒有導致你的查詢?如果是這樣,你需要在我們提供幫助之前發佈更多的代碼。 –

+0

$結果返回什麼? – ComputerLocus

+0

這是重複的。檢查這裏:http://stackoverflow.com/questions/5327235/populate-dropdown-with-mysql-query-results-php-mysql – broinjc

回答

0
<?php 

$sth = $dbhandle->prepare("SELECT cat FROM kernel"); 
$sth->execute(); 
$results = $sth->fetchAll(PDO::FETCH_ASSOC); 

echo "<select name='cat'>"; 
foreach($results as $row) { 
    echo "<option value='" . $row['cat'] . "'>" . $row['cat'] . "</option>"; 
}  
echo "</select>"; 

?> 

http://us2.php.net/manual/en/pdostatement.fetchall.php

+0

感謝它的工作!在行附近有一個額外的括號:「$ results = $ sth-> fetchAll(PDO :: FETCH_ASSOC));」應該是「$ results = $ sth-> fetchAll(PDO :: FETCH_ASSOC);」 – aab

+0

哎呀!我的錯。我將通過編輯修復此問題。 – broinjc