首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从数据库变量php填充下拉列表

从数据库变量php填充下拉列表
EN

Stack Overflow用户
提问于 2021-04-01 03:50:28
回答 2查看 95关注 0票数 1

我试图用数据库中的变量填充下拉列表,但下拉列表显示为空。我认为问题在于我是如何回显数据的。

代码语言:javascript
复制
<div class="col sm-4">
    <label for="paperSelects1"><b>Select Breed to Update</b></label>

    <select id='updatebreed' name='ubreed'>

            <?php while($row = $result->fetch_assoc() ){
                $breed_data = $row['breed'];
                $dogid = $row['dogid'];
            
                echo "<option value='$dogid'> $row </option>";
            }
            ?>
            
    </select> 
        <input type="submit" value="Submit">
</div>

这是我与数据库的连接。我哪里错了?

代码语言:javascript
复制
<?php

    include("../config/connect.php");

    $read = "SELECT * FROM dog_best_in_show ";
   
    $result = $conn->query($read);

?>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-04-01 22:29:21

您使用了错误的php变量,该变量未赋值,请更新,因此请更新它

代码语言:javascript
复制
 echo "<option value='$dogid'> $row </option>";

代码语言:javascript
复制
 echo "<option value='$dogid'> $breed_data</option>";

你的完整代码是这样的,我使用pdo连接,所以这是pdo代码

代码语言:javascript
复制
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "test";
?>


<div class="col sm-4">
<label for="paperSelects1"><b>Select Breed to Update</b></label>

<select id='updatebreed' name='ubreed'>
    <?php
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $stmt = $conn->prepare("SELECT * FROM dog_best_in_show");
    $stmt->execute();
    // set the resulting array to associative
    $result = $stmt->fetchAll();
    foreach ($result as $k => $v) {

        $breed_data = $v['breed'];
        $dogid = $v['dogid'];

        echo "<option value='$dogid'> $dogid </option>";
    }
    ?>

</select>
<input type="submit" value="Submit">
</div>
票数 0
EN

Stack Overflow用户

发布于 2021-04-01 03:58:51

怎么样

代码语言:javascript
复制
echo "<option value='$dogid'>$breed_data</option>";

而不是

代码语言:javascript
复制
echo "<option value='$dogid'> $row </option>";

此外,您应该始终交叉检查您的输出与浏览器的开发工具(ChromeFirefox)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66894427

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档