php嵌套的while循环不会遍历所有选项

php嵌套的while循环不会遍历所有选项,php,Php,我一直试图让它在多行的每个选项中循环。如果我取出continue,它将不会在多行中循环,如果我在第二行中有它,而循环没有运行 我已经尝试将continue放在第二个while循环的末尾之前和第一个while循环的末尾。我也尝试过第二个while循环,我尝试过在第二个while循环所在的地方使用foreach,我不明白为什么这不起作用。我还嵌套了while循环,但仍然没有得到我想要的 while($rs=mysqli_fetch_assoc($result)) { echo "<tr

我一直试图让它在多行的每个选项中循环。如果我取出continue,它将不会在多行中循环,如果我在第二行中有它,而循环没有运行

我已经尝试将continue放在第二个while循环的末尾之前和第一个while循环的末尾。我也尝试过第二个while循环,我尝试过在第二个while循环所在的地方使用foreach,我不明白为什么这不起作用。我还嵌套了while循环,但仍然没有得到我想要的

while($rs=mysqli_fetch_assoc($result)) {
    echo "<tr>";
      echo "<td class="."vendorDetails"." name="."ponumber".">" . $rs['CompanyName'] . "</td>";
      echo "<td class="."vendorDetails"." name="."total".">" . $rs['PONo'] . "</td>";
      echo "<td class="."vendorDetails"." name="."state".">" . $rs['PODate'] . "</td>";
      echo "<td class="."vendorDetails"." name="."zip".">" . $rs['Total'] . "</td>";

      echo "<td class="."vendorDetails"." >

      <input type='checkbox' >
      </td>";
      echo "<td class="."vendorDetails"." >
      <select>";
    }

while($rs=mysqli_fetch_assoc($result)) {
      $sql="select distinct DFTerms from company where DFTerms is not null";
      $result=mysqli_query($conn, $sql);
      while($rs=mysqli_fetch_assoc($result)) {
        echo "<option value=".$rs['DFTerms'].">".$rs['DFTerms']."</option>";
      }
      echo "   </select>
      </td>";
      echo "</tr>";
}
echo "</table>
 ";

mysqli_close($conn);
while($rs=mysqli\u fetch\u assoc($result)){
回声“;
回显“$rs['CompanyName]”;
回声“$rs['PONo']”;
回声“$rs['PODate]”;
回音“$rs[“总计]”;
回声“
";
回声“
";
}
而($rs=mysqli\u fetch\u assoc($result)){
$sql=“从DFTerms不为空的公司中选择不同的DFTerms”;
$result=mysqli\u查询($conn,$sql);
而($rs=mysqli\u fetch\u assoc($result)){
回显“$rs['DFTerms]”;
}
回声“
";
回声“;
}
回声“
";
mysqli_close($conn);
我希望在下拉列表中获得帐户类型,但什么也得不到。如果我以任何其他方式执行此操作,如果同一供应商有第二个采购订单号,则不会显示下拉列表

这就是我得到的

这是我所需要的,但对于两个PO

在这对循环中,您在两个部分都使用了
$result
,覆盖了以前的结果集

$result=mysqli_query($conn, $sql);
因此,只需更改内部变量名(或使用更有意义的名称)

while($rs=mysqli\u fetch\u assoc($result)){
$sql=“从DFTerms不为空的公司中选择不同的DFTerms”;
$result1=mysqli\u查询($conn,$sql);
而($rs=mysqli\u fetch\u assoc($result1)){
回显“$rs['DFTerms]”;
}
回声“
";
回声“;
}

此外,您所展示的代码中的第一个和第二个循环使用相同的结果集,如果这是预期的结果集,则需要重新执行SQL或将结果集重新定位在开始处-。

谢谢您,我习惯于反复使用相同的结果集,我没有想到这一点。
while($rs=mysqli_fetch_assoc($result)) {
      $sql="select distinct DFTerms from company where DFTerms is not null";
      $result1=mysqli_query($conn, $sql);

      while($rs=mysqli_fetch_assoc($result1)) {
        echo "<option value=".$rs['DFTerms'].">".$rs['DFTerms']."</option>";
      }
      echo "   </select>
      </td>";
      echo "</tr>";
}