PHP Dropdown从SQL数据库中提取信息

时间:2013-07-29 14:40:00

标签: php forms input dql

我正在尝试创建一个包含所有货币的下拉菜单,目前价值为1,2和2。 3.我需要将下拉值保留为数字,但希望选项文本说明英镑,欧元和美元。我有这段代码:

<select class='dc_input' name='currency' id ='currency'>
    <?php

    $sql="SELECT l.currency
                    FROM locations l
                    GROUP BY l.currency";

        $sites = mysql_query($sql);
        while ($row = mysql_fetch_assoc($sites)) {
            echo '<option value="' .$row['currency']. '"' .$selected. '>  </option>';
        }
    ?>

</select>

这很有效,我只是不知道要为每个人做些什么改变。

2 个答案:

答案 0 :(得分:2)

您没有从数据库中选择号码。完成后,将文本放在开始/结束标记之间,并将数值保留在value属性中。

echo '<option value="', htmlspecialchars($row['id']), '">',
     htmlspecialchars($row['currency']), '</option>';

答案 1 :(得分:1)

<?php
$currencies = array('', 'GBP', 'EUR', 'USD');
?>
<select class='dc_input' name='currency' id ='currency'>
    <?php

    $sql="SELECT l.currency
                    FROM locations l
                    GROUP BY l.currency";

        $sites = mysql_query($sql);
        while ($row = mysql_fetch_assoc($sites)) {
            $index = $row['currency'];
            echo '<option value="' .$index. '"' .$selected. '> '.$currencies[$index].' </option>';
        }
    ?>

</select>

您还可以在数据库中存储货币ID和货币名称。如果您开始支持3种以上的货币,那么对您来说会更容易。