1

我正在使用以下代码从下拉菜单中更新我的数据库,从另一个表中提取信息

<?php
$query = "select id, accountname from reg";
$result = $mysqli->query( $query );

echo '<select id="domain_account" name="domain_account">';
echo '<option value="">';
echo  $row['domain_account'];
echo  '</option>';
while ($row = $result->fetch_assoc()){
?>
    <option value="<?php echo $row['accountname']; ?>"><?php echo $row['accountname']; ?></option>
<?php    
}
echo "</select>";
?>

问题是,如果我有 2 个或更多下拉元素,则只有顶部的元素会读取当前记录

4

3 回答 3

0
 <?php
    $query = "select id, accountname from reg";
    $result = $mysqli->query( $query );

    echo '<select id="domain_account" name="domain_account">';
    echo '<option value="">';
    echo  $row['domain_account'];
    echo  '</option>';
    while ($row = $result->fetch_assoc()){
        echo '<option value="'.$row["accountname"].'">'.$row["accountname"].'</option>';
    } 
    echo '</select>';
 ?>

那应该已经解决了您打破while循环的问题。但是您的代码似乎不完整:您从哪里获得您的domain_account领域?你的要求在哪里?

于 2013-10-11T15:21:45.990 回答
0
while ($row = $result->fetch_assoc()){
    $all_rows[] = $row;
?>
    <option value="<?php echo $row['accountname']; ?>"><?php echo $row['accountname']; ?></option>
<?php    
}
echo "</select>";

foreach($all_rows as $row) {
    //do stuff with $row like echo $row['something'];
}
于 2013-10-11T15:24:26.260 回答
0

您需要触发另一个查询来填充下一个选择框。或者您可以将当前查询结果保存在一个变量中并重复使用它。

于 2013-10-11T15:13:27.653 回答