在选择框中显示数据库的一列


Displaying a column of database in select box

我有一个名为'fishdata'的MySQL数据库,并在其中,一个名为'Fish'的表,它看起来像这样:


FishType | X_B | X_SB |

|沙丁鱼| 1#2#3 | 7#4#6|

| cod | 3#6#8 | 7#4#6|

|鲶鱼| 4#3#8 | 7#4#6|


我试图将列'FishType'中的所有条目显示为选择框中的选项。这是我的代码:

<html>
<body>
    <select> 
        <?php
            $con=mysqli_connect("localhost","root","root","fishdata");
            // Check connection
            if (mysqli_connect_errno()) {
            echo "Failed to connect to MySQL: " . mysqli_connect_error();
            }
        $sql = "SELECT * FROM Fish";
        $result = mysqli_query($con,$sql)or die(mysqli_error());
            while($row = mysqli_fetch_array($result)) {
            {
            ?>
            <option value = "<?php echo($row['FishType'])?>" >
                <?php echo($row['FishType']) ?>
            </option>
            <?php
            }               
        ?>
    </select>
</body>
</html>

然而,选择框显示没有选项。任何想法吗?

while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)){
 echo "<option value='" . $row['FishType'] . "'>" . $row['FishType'] . "</option>";
}

在while循环旁边有一个额外的括号。

编辑

<html>
<head></head> 
<body>
    <?php $con = mysqli_connect("localhost","root","root","fishdata"); 
         if (mysqli_connect_errno()){ echo "Failed to connect to MySQL: " . mysqli_connect_error(); }
         $result = mysqli_query($con, "SELECT FishType FROM Fish");   
         if (mysqli_num_rows($result) > 0){
             echo "Records found";
             echo "<select>";
             while ($row = mysqli_fetch_array($result,MYSQLI_ASSOC)){ 
                 echo "<option value='Test'>Test</option>";
                 echo "<option value='"" . $row['FishType'] . "'">" . $row['FishType'] . "</option>"; 
             } 
             echo "</select>";
         }
         mysqli_close($con); 
    ?> 
</body>
</html>