从下拉列表中删除重复项

时间:2015-07-08 10:46:41

标签: php sql

我使用下面的代码将LastNames列表返回到表单的下拉菜单中。

<?php
    include 'conn.inc.php';
    $sql_dropdown_lastname = "SELECT LastName FROM Individuals";
    $sql_run_lastname = odbc_exec($conn_general, $sql_dropdown_lastname);
        echo "<table><form action='index.php' method='POST'><tr><td>Individual Last Name</td><td><select name='IndivSurname'>";
            while($lastname_row = odbc_fetch_array($sql_run_lastname)){
                $AllLastName=$lastname_row['LastName'];
                    echo"<option value='$AllLastName'>$AllLastName</option>";
            }

        echo"</select></td>
                </tr>
                <tr>
                    <td><input type='submit' value='submit' name='submit'></td>
                </tr>
                </form>
        </table>";

?>

但是有几个条目是重复的。 我怎样才能从下拉列表中消除任何重复项?

提前致谢, Ĵ

1 个答案:

答案 0 :(得分:5)

如果它们真的是重复的(而不仅仅是姓氏相同的人),你可以这样做:

SELECT DISTINCT LastName, FirstName FROM Individuals

请注意,如果他们是不同的人,但姓氏相同,则您需要在查询中引入其他字段,例如:

$aut = $xpath->query("//table[@cellpadding='6']//b[1]");
$authors = array();
foreach($aut as $node)
    $authors[] = $node->nodeValue;
$title = $doc->getElementsByTagName('h3')->item(1);
$publicationYear = $xpath->query("//p[1]//text()[(following::br)]")->item(0)->nodeValue;
$aux = $xpath->query("//p[2]//text()[(preceding::br)]");
$doi = substr($aux->item($aux->length - 1)->nodeValue, 4);