[英]Why is my drop down list not populating with the table data?
為什么我的下拉列表沒有填充表格數據? (下拉框為空),然后在下拉菜單中選擇一個項目時顯示數據的方式-是“視圖”(請提供學習鏈接,以便我學習)
我的密碼
<?php
$con=mysqli_connect("localhost","root","","ismat_db");
//check connection
if(mysqli_errno($con))
{
echo "Can't Connect to mySQL:".mysqli_connect_error();
}
else
{
echo "Connected to mySQL</br>";
}
//$query = 'SELECT FirstName FROM persons';
//$result = mysqli_query($con,$query);
$query = mysqli_query($con,"SELECT 'FirstName' FROM persons");
//print_r($query);
//echo '<select name="FirstName">';
echo "<select name= 'FirstName'>";
//while($row=mysqli_fetch_array($result))
while($row=mysqli_fetch_array($query))
{
echo $row;
//echo "<option value='".$row['FirstName']."'>".'</option>';
}
echo '</select>';
?>
嘗試這個:
echo "<option value='".$row['FirstName']."'>".$row['FirstName']."</option>";
似乎您的數據庫查詢也有問題。 用以下內容交換您的while循環,看看是否可行
if ($result = $mysqli->query($query)) {
while ($row = $result->fetch_assoc()) {
echo "<option value='".$row['FirstName']."'>".$row['FirstName']."</option>";
}
$result->free();
}
您有2個錯誤:
我在注釋中指出了第一個:要打印選項,您必須使用以下代碼:
echo "<option value='". $row['FirstName']."'>".$row['FirstName']
. '</option>';
第二個是在您的SQL中:您不是從數據庫中選擇FirstName字段,而是一個字符串'FirstName'。 這就是為什么您要打印兩次的原因。 使用以下SQL獲取字段:
$query = mysqli_query($con,"SELECT FirstName FROM persons");
通常,人們通常將記錄的ID而不是字段的ID放在記錄中,而字段ID可能與<option>
的值重復。 因此,我將使用:
echo "<option value='". $row['id']."'>".$row['FirstName']
. '</option>';
從數據庫中選擇ID和名字。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.