拉空白结果

时间:2013-08-12 20:38:05

标签: php mysql

我还没有找到防止这种情况的解决方案。我使用PHP来自我填充我的option字段,所以我不必手动将它们全部添加进去。我有四个select字段,四个中有三个完美但第四个。< / p>

在公司字段上,它将填充一个空白字段,然后填充其余字段就好了。我有一个解决方案,这将删除这个空间,但我被告知这不是最好的做法。有人认为他们知道一种更好,更正确的方法吗?

PHP选择字段

<label for="company">Company</label><br />
<select id="company" name="users" onChange="showUser(this.value)">
<?php include 'datalogin.php'; // Populates the Company select field

$result = mysqli_query($con, "SELECT DISTINCT Company FROM `roster` ORDER BY Company ASC;");
  echo '<option value="">' . 'Select a Company' .'</option>';
  while ($row = mysqli_fetch_array($result)) {
        if ($row['Company'] == NULL) { //The empty if is to remove the blank space in the select field

        }
        else {
            echo '<option value="'.urlencode($row['Company']).'">'.htmlspecialchars($row['Company'],ENT_QUOTES).'</option>';
        }
  }
?>
</select>

理想情况下,我被告知你应该使用“!”告诉if语句如果它不为null但仍然产生空格:

if ($row['Company'] !== NULL) {
    echo '<option value="'.urlencode($row['Company']).'">'.htmlspecialchars($row['Company'],ENT_QUOTES).'</option>';
}

这就是我所说的空白区域:

(假装它是select字段)

[Select a field]
[              ]
[Cleveland     ]
[Columbus      ]
[Toldeo        ]

Live Agent Search Site

1 个答案:

答案 0 :(得分:3)

SELECT DISTINCT Company 
FROM `roster` 
WHERE LENGTH(Company) > 0 
ORDER BY Company ASC;