无法使php和mysqli提供的下拉提要正常工作

agxfikkp  于 2021-06-19  发布在  Mysql
关注(0)|答案(2)|浏览(268)

我做过十几次这样的事,但不知怎么的,都不管用。
我的代码是:

$query_locals = "SELECT * FROM TbLocal LEFT JOIN TbFraccao ON TbLocal.PkLocal=TbFraccao.FkLocal LEFT JOIN TbTipo ON TbFraccao.FkTipo=TbTipo.PkTipo ORDER BY TbLocal.LocalNome, TbFraccao.FraccaoNome";
$result_locals = mysqli_query($conn, $query_locals);

$lista_locals="";

      while($row_local = mysqli_fetch_assoc($result_locals))
      {$lista_locals = $lista_locals . '<option value="' . $row_local['PkFraccao'] . '"> ' . $row_local['LocalNome'] . "- ". $row_local['TipoNome'] . " - ". $row_local['FraccaoNome'] ."</option>";

        echo $row_local['LocalNome']. "<br>";
      };

echo "lista de locais -  " . $lista_locals;

回声 $row_local['LocalNome']. "<br>"; 正在工作但是 echo "lista de locais - " . $lista_locals; 不是。。。你猜呢??
我已经在我的数据库中直接尝试了这个查询,它工作得很好。
我已经确认了所有的列名。
这是形式部分:

<div >
  <label class="control-label " for="local">Local</label>
  <select class="select form-control" id="local" name="local" >

  <?php 
  echo $lista_fraccoes;?>
  </option>
  </select>
 </div>
bt1cpqcv

bt1cpqcv1#

这个 echo $lista_locais ; 无法工作,因为html浏览器将其解释为html。
一旦我把其中一个 < “从 <option value=' . $row_local['PkFraccao'] . '> 它打印出了选择选项的条目列表!
由kamal paliwal在评论中解决

ckocjqey

ckocjqey2#

您在此中缺少select标记,请尝试在select中使用select标记和append选项。目前这是呈现为html选项,但它不会像下拉列表一样,因为选择是丢失的。

$lista_locals='<select name="XYZ">';
while($row_local = mysqli_fetch_assoc($result_locals)) {
    $lista_locals = $lista_locals . '<option value="' . $row_local['PkFraccao'] . '"> ' . $row_local['LocalNome'] . "- ". $row_local['TipoNome'] . " - ". $row_local['FraccaoNome'] ."</option>";

    echo $row_local['LocalNome']. "<br>";
};
$lista_locals = $lista_locals . "</select>";
echo "lista de locais -  " . $lista_locals;

希望这对你有帮助。

相关问题