尝试在数据库中搜索时显示的重复选项

时间:2017-09-04 18:40:33

标签: php mysql

我正在使用php,并尝试构建一个代码,允许我搜索我的sql数据库供应商'密码 搜索基于供应商名称。并且一个供应商可能有多个密码。 它工作正常,但有一个问题,就是当我尝试选择供应商名称时,如果在数据库中显示多次,则显示不止一次。 那么如何管理不在搜索选项中多次显示供应商名称? 这是我使用的PHP代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <link rel="stylesheet" type="text/css" href="style.css"/>
</head>
<body>

<form action="/cloudpass/searchvendors.php" id="searchv" "method="GET"><br/><br/>
<select name="query" form="searchv">
<?php

$conn = new mysqli('localhost', 'root', '', 'mysql')
or die ('Cannot connect to db');

$sql = mysqli_query($conn, "SELECT vendor_name FROM vendors");

while ($row = $sql->fetch_assoc()){

$vendor_name = $row['vendor_name'];
echo '<option value="'.$vendor_name.'">'. $row['vendor_name'] .'</option>';
}
?>
</select>

        <input type="submit" value="search" />
    </form>

</body>
</html>

And this is my problem

1 个答案:

答案 0 :(得分:0)

为避免重复值,只需使用distinct子句

 SELECT distinct vendor_name FROM vendors