在php mysqli中限制重复的结果

时间:2017-12-17 16:51:35

标签: php mysql mysqli

选择行时,数据应显示为:

do

但是在运行的代码上它是:

o

我的代码:

<?php
$link = mysqli_connect("localhost", "root", "", "trial");
if(!$link){
    die("ERROR: Could not connect. " . mysqli_connect_error());
}
$term = 'd';//mysqli_real_escape_string($link, $_REQUEST['term']);
if(isset($term)){
    $sql = "SELECT * FROM rolls WHERE Place LIKE '%" . $term . "%'";
    if($result = mysqli_query($link, $sql)){
        if(mysqli_num_rows($result) > 0){
        if(mysqli_num_rows($result) > 1000){    
        echo "<p>There are many results please be more specific</p>";
        }
        else{
            while($row = mysqli_fetch_array($result)){
                echo "<p><a href='#". $row['Place'] ."'>" . $row['Place'] . "</a></p>";
            }
            mysqli_free_result($result);
        }
        }       else{
            echo "<p>No matches found</p>";
        }
    } else{
        echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
    }
}
mysqli_close($link);
?>

尝试

  

$ sql =“SELECT * FROM roll WHERE Place LIKE'%”。 $ term。 “%'限制1”;

它只显示 MANDYA ,其余全部被跳过

1 个答案:

答案 0 :(得分:0)

如果您只想显示地点,请使用DISTINCT显示唯一值。看看这个查询。

$sql = "SELECT DISTINCT(Place) FROM rolls WHERE Place LIKE '%" . $term . "%'";