我剛學習PHP/MySQL,並花了幾天的時間嘗試從我的數據庫中獲取下拉菜單來填充選項。我已經閱讀了幾個教程,並嘗試應用它們,但是我無法實現這個工作。PHP/MySQL Dropdown
我想要做的事: 我需要一個名爲「基因型」,拉在我指定的數據庫表中的「基因型」列基因型的列表下拉菜單中的「老鼠」。
問題:當我點擊提交按鈕,它連接到我的數據庫,並執行查詢。但我無法從下拉菜單中顯示任何選項。
這裏是我到目前爲止的代碼(請讓我知道我是否應該張貼mousecount.php)
<?php
include('connection.txt');
$conn = mysqli_connect($server, $user, $pass, $dbname, $port)
or die('Error connecting to MySQL server.');
?>
<html>
<head><title>Crap That Won't Work</title></head>
<body bgcolor="white">
<hr>
<dt>THINGS ARE TOTALLY NOT WORKING</dt>
<dd>
<form action="mousecount.php" method="POST">
<table><tr>
<td><p><label for="Genotype">Genotype:</label><br/>
<select name="Genotype">
<?php
$query = "SELECT MouseID, Genotype FROM Mice";
$result = mysqli_query($conn, $query);
while($row = mysqli_fetch_array($result))
{
print "<option value=\"$row['Genotype']\">".$row['Genotype']."</option>";
}
?>
</select>
</p></td>
</tr></table><br/>
<input type="submit" value="Submit">
</form>
</body>
</html>
編輯(解決):
我有麻煩下拉菜單用MySQL數據庫中的選項填充。感謝您的幫助。我發佈我的最終代碼,以防止其他人遇到問題。
<!-- Connect to database -->
<?php
include('connection.php');
$conn = mysqli_connect($server, $user, $pass, $dbname, $port)
or die (mysql_error());
?>
<hr>
<h4>Mice Count</h4>
<form action="mousecount.php" method="POST">
<p><label for="Genotype">By Genotype:</label><br/>
<?php
$query = "SELECT Genotype from Mice GROUP BY Genotype";
$result = mysqli_query($conn, $query);
echo "<select name='Genotype'>";
echo "<option value='0'>-Select-</option>";
while($row = mysqli_fetch_array($result)) {
echo "<option value='".$row['Genotype']."'>".$row['Genotype']."</option>";
}
echo "</select>";
?>
</p>
<input type="submit" value="Submit">
</form>
</body>
</html>
AFAIK,所述'E_NOT_WORKING'不是常見PHP錯誤代碼。 –
@tereško這是非常常見的SO,但沒有用處:) – vascowhite
最好將您的成功代碼作爲編輯發佈,而不是替換原來的問題。擦除原始代碼會使其他編碼人員難以確定問題/解決方案。 – showdev