【问题标题】:While loop outputs empty select boxesWhile 循环输出空选择框
【发布时间】:2017-09-25 01:55:30
【问题描述】:

我有两个 sql 查询:

  1. 提供与项目关联的员工人数。例如本例中的 4。
  2. 提供员工的姓名和 ID。

我希望我的代码输出 4 个选择框,其中包含所有员工的姓名。作为<option></option> 标签。

我当前的代码提供了 4 个选择框。只有第一个填写了正确的雇员姓名。接下来三个是空的<select></select>标签

$con=mysqli_connect("localhost","root","","portefoejlestyring");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

  mysqli_set_charset($con,"utf8");



$query= "
select 
medarbejdere.navn as medarbejderNavn,
medarbejdere.id as medarbejderId,
projekt.id as projectId

from projekt_has_medarbejdere

join projekt on projekt.id = projekt_has_medarbejdere.projekt_ref
join medarbejdere on medarbejdere.id = projekt_has_medarbejdere.bruger_ref

where projekt.id = '$search'

"; 

$queryMedarbejder= "
select 
medarbejdere.navn as medarbejderNavn,
medarbejdere.id as medarbejderId

from medarbejdere
"; 

$x = 2;
        $result=mysqli_query($con,$query);  
        $resultMedarbejder=mysqli_query($con,$queryMedarbejder);

 while ($row=mysqli_fetch_array($result,MYSQLI_ASSOC)) {

                    echo "<select class='selectpicker form-control' name='medarbejder[]'>";     

            while ($rowMedarbejder=mysqli_fetch_array($resultMedarbejder,MYSQLI_ASSOC)) {
    echo "<option value='$rowMedarbejder[medarbejderId]' name='medarbejder'>$rowMedarbejder[medarbejderNavn]</option>";

            } 

         echo "</select>";

            } 

感谢任何帮助!

【问题讨论】:

  • 能否请您出示mysql query 或完整代码?
  • @mageDev0688 帖子已更新

标签: php mysql select mysqli while-loop


【解决方案1】:

您看到了这个问题,因为当您开始外循环的第二次迭代时,内循环已经结束。 MySQL fetch 不会在外循环的每一轮自动回到内循环的开始。

先将内循环的结果放入一个数组中,然后你可以随意循环数组。

【讨论】:

  • 非常感谢。解决方案是将结果放入一个数组并使用 foreach 循环遍历它。对于外部循环,我使用了 for-loop。
【解决方案2】:

当您改写问题while($row = mysql_fetch_array($query)) doesn't work in second time时可能重复

附:我无法发表评论,所以发布为答案

【讨论】:

    猜你喜欢
    • 2013-09-28
    • 1970-01-01
    • 2012-01-02
    • 2018-10-04
    • 2012-08-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-18
    相关资源
    最近更新 更多