我的下拉框使用此代码的倍数工作正常,我承认,这是非常基本的:
$sql = "SELECT Country FROM engravers order by Country";
$result = mysql_query($sql);
echo "<select name\\='Country'>";
echo "<option value='$_POST'>Country</option>";
while ($row = mysql_fetch_array($result)) {
echo "<option value='" . $row['Country'] . "'>" . $row['Country'] . "</option>";
}
echo "</select>";
唯一的问题是,如果我在该字段中有多个项目,我会得到每个项目的响应,例如,在我的测试数据库中,有两行以澳大利亚为国家/地区。我的下拉列表将澳大利亚放入了两次。稍后,当大约有一百个澳大利亚参赛作品时,这将是一个问题。
此外,如果有空白字段,我会在下拉框中得到一个空行。我似乎无法找到解决方案。有没有更好的方法来编写不执行此操作的下拉代码。不幸的是,作为一个新手,我使用的是我能理解的最简单的代码,但结果看起来就是这样。任何帮助将不胜感激。
最佳答案
尝试这个查询:
SELECT DISTINCT Country
FROM engravers
WHERE Country <> ''
ORDER BY Country
<小时/>
SELECT DISTINCT
将处理多个 - 如果有 100 行 Country = Australia,则只会选择一个。
WHERE Country <> ''
将排除“国家/地区”具有空白值的任何行。您还可以包括 AND Country IS NOT NULL
也排除 NULL 值。
引用文献:
关于php - 下拉框中的空格和重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24795490/