重复<;选择>;菜单多次使用SQL查询


Repeating a <select> menu multiple times with a SQL query

我正在尝试创建一个页面,该页面上的菜单重复了20次。菜单中的选项将来自SQL查询。

这适用于第一个菜单,但我在其他菜单上得到了空选项。

所以我在我的PHP部分有这个:

//查询和显示乘客菜单的记录

$q4 = "SELECT id, fname, lname
    FROM riders
    ORDER BY lname, fname ASC"; 
    $r4 = mysqli_query ($dbc, $q4);

在我的回声中,我有这样的:

<!-- Input results -->';
    for($j = 0; $j < 20; $j++) {
        echo '<tr>
        <td><select id="rider" name="rider[]">';
        while ($row = mysqli_fetch_array($r4, MYSQLI_ASSOC)) {
        echo '<option value="' . $row['id'] . '">' . $row['lname'] . ', ' . $row['fname'] . '</option>';
        } // End of WHILE loop
        echo '</select></td>
        </tr>';
    }   
    echo '<tr><td colspan=2 align="center"><input type="submit" name="submit" value="Add Results" /></td></tr>

为什么我的WHILE循环不能在FOR循环的每次迭代中正常工作?

    $options = '';    
    while ($row = mysqli_fetch_array($r4, MYSQLI_ASSOC)) {
          $options .='<option value="' . $row['id'] . '">' . $row['lname'] . ', ' . $row['fname'] . '</option>';
    } // End of WHILE loop 
    for($j = 0; $j < 20; $j++) {
          echo '<tr><td><select id="rider" name="rider[]">';
          echo $options;        
          echo '</select></td></tr>';
   }   

试试这个。。

试试这个。

 <?php 
$sql=mysql_query("SELECT id, fname, lname FROM riders ORDER BY lname, fname ASC");
echo '<select name="country" class="country">
<option selected="selected">--Select Name--</option>';
while($row=mysql_fetch_array($sql))
{
 echo '<option value="'.$row['fname'].'">'.$row['fname'].'</option>';
}
echo '</select>';
?>