如何在PHP中过滤while循环

如何在PHP中过滤while循环,php,mysql,drop-down-menu,while-loop,Php,Mysql,Drop Down Menu,While Loop,我坚持这一点 我想创建一个有10行的表,每行有10个产品的“相同下拉菜单”。但在每一行选择的产品都不同。例如第一行第一个产品第二行第二个产品等等。下面的代码在每行显示下拉菜单,但每行都选择了第一个产品。如何为下一行选择下一个产品 <table> <tr> <td> <select> <?php $query = "S

我坚持这一点

我想创建一个有10行的表,每行有10个产品的“相同下拉菜单”。但在每一行选择的产品都不同。例如第一行第一个产品第二行第二个产品等等。下面的代码在每行显示下拉菜单,但每行都选择了第一个产品。如何为下一行选择下一个产品

    <table>
    <tr>
        <td>
            <select>
                <?php
                    $query = "SELECT * FROM table_name WHERE featured=1 LIMIT 10";
                    $result = mysqli_query($connection, $query);
                    while($row = mysqli_fetch_array($result)){
                        echo "<option>".$row["product_name"]."</option>"
                    }
                ?>
             </select>
        </td>
        <td>
            <select>
                <?php
                    $query = "SELECT * FROM table_name WHERE featured=1 LIMIT 10";
                    $result = mysqli_query($connection, $query);
                    while($row = mysqli_fetch_array($result)){
                        echo "<option>".$row["product_name"]."</option>"
                    }
                ?>
             </select>
        </td>
    </tr>
</table>


第二个while循环

$i=0;    
while($row = mysqli_fetch_array($result)){
$i++;
if($i==2)
    echo "<option selected=\"selected\">".$row["product_name"]."</option>";
else
 echo "<option>".$row["product_name"]."</option>";
    }
    ?>
$i=0;
while($row=mysqli\u fetch\u数组($result)){
$i++;
如果($i==2)
echo“$row[“产品名称”]”;
其他的
echo“$row[“产品名称”]”;
}
?>

请同时填写php文件和数据库字段。$query=“SELECT*FROM tbl WHERE featured=1 LIMIT 10”;如果你是这样使用它的话,它就不起作用了$query=mysqli_query(“从tbl中选择*,其中特征=1限制10”);代码看起来冗余且无结构您可能希望通过缩进来修复问题中的布局OK,我修复了代码,我在这里输入错误,但在我的代码中它是正确的。不,它不起作用。只有第一行有下拉菜单。和其他带有空白下拉菜单的行。请重试我添加了您的更改并重置$result的指针此方法mysql\u data\u seek($result,0);移动指针,这样您仍然可以循环$result谢谢,它工作了,但是当我再次对第二行进行查询时,它并没有对所有行执行单个查询。我需要对每一行进行查询。有解决方案吗?您使用了mysql\u data\u seek($result,0);每次之后?您的代码也可以运行,但我需要对每一行进行查询。表示10个相同的查询以显示10个表行。有解决方案吗?您没有在查询u r循环结果集上循环。是的,我在循环结果集。但是在循环表的每一行中的每个结果集之前,我需要再次调用相同的查询以循环其结果集。调用单个查询,然后将其循环10次是没有帮助的。仅显示第一行。这就是为什么我必须为每一行调用相同的查询,然后循环它。
$i=0;    
while($row = mysqli_fetch_array($result)){
$i++;
if($i==2)
    echo "<option selected=\"selected\">".$row["product_name"]."</option>";
else
 echo "<option>".$row["product_name"]."</option>";
    }
    ?>