我有以下while
循环,我用它来创建一个包含从数据库中获取的日期的下拉列表选择:
$sql = "SELECT name FROM persons";
$result = mysql_query($sql);
while ($row = mysql_fetch_array($result)) {
echo "<option value='" . $row['name'] . "'>" . $row['name'] . "</option>";
}
while循环在下拉列表中打印另一个空行,即列表中出现空行。我怎么能避免这种情况?
答案 0 :(得分:1)
此代码中没有任何内容打印空选项。您确定在数据库中没有名称为NULL或为空的记录吗?
尝试添加
WHERE name IS NOT NULL and name != ""
到您的查询
答案 1 :(得分:0)
听起来你的数据库结果中有空行。您可以检查人员表,或者您可以通过执行以下操作在代码中修复它:
$sql = "SELECT name FROM persons";
$result = mysql_query($sql);
while ($row = mysql_fetch_array($result)) {
if (!empty($row['name'])) {
echo "<option value='" . $row['name'] . "'>" . $row['name'] . "</option>";
}
}
答案 2 :(得分:0)
只需使用PHP空函数:
$sql = "SELECT name FROM persons";
$result = mysql_query($sql);
while ($row = mysql_fetch_array($result)) {
if(!empty($row['name']))
{
echo "<option value='" . $row['name'] . "'>" . $row['name'] . "</option>";
}
}