如何从数据库中创建选择选项?

Posted

技术标签:

【中文标题】如何从数据库中创建选择选项?【英文标题】:How to create select option from database? 【发布时间】:2014-04-26 11:13:28 【问题描述】:

我正在处理一个表单,该表单具有来自数据库的 2 个表的 4 个不同的选择元素。我没有做过这样的事情,我真的不知道该怎么做。

我有一个名为“students”的表格,来自我需要“name”和“class”,还有一个名为“books”的表格,来自我需要“writer”“title”......所有都是一个选择元素,并且都有超过2 个选项值。

我只尝试了一个 sql 查询和一个选择,但它在网站上只显示一个选项,它在数据库中是否有大约 6 个值。

我的代码:

$sql = "SELECT class
        FROM students";
$result = mysql_query($sql);


while ($row = mysql_fetch_assoc($result)) 
    $select_class = "<option value=$row['class']>$row['class']</option>";


<select id="class" name="class">
    <?php print $select_class; ?>
</select>

如何正确?

【问题讨论】:

将 $select_class= 更改为 $select_class .= 如果您也可以发布您的表结构将会很有帮助。 【参考方案1】:

改变这个:

$select_class = "<option value=$row['class']>$row['class']</option>";

到这里:

$select_class .= "<option value=$row['class']>$row['class']</option>";

可能会解决您的问题。

现在您不断地重置 $select_class 的值,而不是添加它。 .= 分配应该可以帮助您解决这个问题。

与往常一样,请务必对您认为有用的任何 *** 答案进行投票。

【讨论】:

我认为应该是 $select_class .= $select_class += 可能是 C#。 可以简化为$select_class .=而不是$select_class = $select_class . Paul 和 Maximus2012 是正确的! += 不是 PHP 中的字符串赋值运算符。我已经更正了上面的答案。【参考方案2】:

试试这个

$sql = "SELECT class FROM students";
$result = mysql_query($sql);

echo '<select id="class" name="class">';

while ($row = mysql_fetch_assoc($result)) 
    echo "<option value=$row['class']>$row['class']</option>";


echo '</select>';

【讨论】:

【参考方案3】:

您将在每个 while() 循环上覆盖 $select_class。您需要连接 $select_class 。改为$select_class .=

$select_class = "";
while ($row = mysql_fetch_assoc($result)) 
    $select_class .= "<option value=$row['class']>$row['class']</option>";

【讨论】:

【参考方案4】:

试试这个

        <?php
                        $dbhandle = mysql_connect($hostname, $username, $password) or die("can't connect");
                        $table = "students";
                        $sql = "SELECT * FROM students";
                        $result = mysql_query($sql, $dbhandle);
                        mysql_data_seek($result, 0);
        ?>
        <form>                
        <select class="dropdown" name="dropdown">           
    <?php 
    if(mysql_num_rows($result) > 0)
        while($row = mysql_fetch_array($result)) 
            echo '<option value="' . $row['class'] . '">' . $row['class'] . '</option>';
            
         
    ?>
</select>
</form>

【讨论】:

以上是关于如何从数据库中创建选择选项?的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Swing 应用程序的一系列选择中创建格式化的文本文件?

如何在 laravel Blade 中创建可搜索的选择选项表单

jQuery 从 JSON 中创建选择列表选项,没有像宣传的那样发生?

如何在 KivyMD 中创建选择列表

如何在 Flutter 中创建同时具有 kg 和 lbs 选项的 Cupertino 选择器

如果用户需要向现有选项添加新选项,如何在访问中创建一个组合框,该组合框可以转换为文本框以启用书写?