PHP MySQLi到HTML组合框

问题描述 投票:-2回答:2

我正在尝试将数据从MySQL数据库传递到HTML组合框,我正在使用php来做到这一点

<form method="POST">
     <select class="js_inline_input">
          <?php
               $servername = "localhost";
               $username = "root";
               $password = "";
               $db = "js_milhoes";

               $conn = new mysqli($servername, $username, $password, $db);

               if ($conn->connect_error) {
                  die("Connection failed: " . $conn->connect_error);
               }else{
                  echo "<option> Connected successfully </option>";
               } 

               $sql = "SELECT * FROM js_country";
               $result = $conn->query($sql);

               while($row=mysqli_fetch_assoc($result)){
               //My Personal echo     
              echo "<option value='".$row['countryCode']."'>".$row['countryName']."</option>";
              //Echo i saw on this site
              echo "<option value='{$row->countryCode}'>{$row->countryName}</option>";
               }

               $conn->close();

            ?>
      </select>
    </form>

它应该列出组合框中的所有国家,但显示的是: - 来自第一个回声:“。$ row ['countryName']。” - 来自第二个回声:{$ row-> countryCode}

我已经检查了连接,然后在添加一个if表示查询不为空的情况之前

php html html5 mysqli combobox
2个回答
1
投票

您的第二个<option>未显示的原因是因为您使用的是“获取对象”语法$row->column

你需要使用其中一个;不是都。

要么你用

while($row=mysqli_fetch_assoc($result)){

    echo "<option value='".$row['countryCode']."'>".$row['countryName']."</option>";

}

或(以双引号转义):

while($row=mysqli_fetch_object($result)){

    echo "<option value=\"{$row->countryCode}\">{$row->countryCode}</option>";

}

您还需要注意,在迭代这些列名称时,列名称区分大小写。

意思是,countryCodecountrycode是两种不同的动物,countryNamecountryname;应该是这样吗?

  • 检查查询是否有错误。

脚注:

你说:“但显示的是: - 来自第一个回声:”。$ row ['country Name']。“ - 来自第二个回声:{$ row-> country Code}”

我不明白你的意思。我已经测试了你的代码,它工作正常(除了“获取对象”语法问题)。如果你的意思是你看到“代码”而不是被解析,那么你要么不使用网络服务器,要么你正在以file:///file.php而不是http://localhost/file.php.html的身份访问它应该是这种情况作为文件扩展名不明。

  • 这是我对这个问题的结论。

0
投票

好吧,这是一个愚蠢的问题,当我从wamp 2.5更改为wamp 3我忘记删除wwamp粘贴,我有2,所以我使用了错误的填充,因为那个不是在服务器上使用apache浏览器评论PHP

© www.soinside.com 2019 - 2024. All rights reserved.