Php PDO搜索失败,出现多个数字

Php PDO搜索失败,出现多个数字,php,pdo,Php,Pdo,我正在尝试使用名称或参考号(格式为ABC/X/012345/XX)搜索数据库 名称搜索看起来非常完美,如果我查找ABC或XX,参考号搜索也会如此 但如果我搜索完整的参考号,则找不到匹配项。如果部分参考号搜索包含多个编号(例如ABC/X/01或甚至仅包含一个编号),也会出现此问题 我没有收到错误消息,也没有显示“抱歉,您的搜索没有返回任何结果”消息,这似乎表明它正在查找正确的条目,只是没有显示它们 谁能看出我哪里做错了?谢谢 $search = $_POST['search']; $search

我正在尝试使用名称或参考号(格式为ABC/X/012345/XX)搜索数据库

名称搜索看起来非常完美,如果我查找ABC或XX,参考号搜索也会如此

但如果我搜索完整的参考号,则找不到匹配项。如果部分参考号搜索包含多个编号(例如ABC/X/01或甚至仅包含一个编号),也会出现此问题

我没有收到错误消息,也没有显示“抱歉,您的搜索没有返回任何结果”消息,这似乎表明它正在查找正确的条目,只是没有显示它们

谁能看出我哪里做错了?谢谢

$search = $_POST['search'];

$search_term = "%".$search."%";

try {
    $DBH = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass);
    $DBH->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
    $STH = $DBH->prepare('SELECT user_id, name FROM users WHERE name LIKE :search_term OR ref_number LIKE :search_term');
    $STH->bindParam(':search_term', $search_term, PDO::PARAM_STR);
    $STH->execute();
    $STH->setFetchMode(PDO::FETCH_ASSOC);
    if ($STH->fetchColumn() > 0) {
        while($row = $STH->fetch()) {
        echo "<a href='viewprofile.php?user_id=".$row['user_id']."'>".$row['name']."</a><br/>";
        }
    } else {
        echo '<p>Sorry, your search returned no results.</p>';
    }
}

catch(PDOException $e) {  
    echo $e->getMessage();
}
$search=$\u POST['search'];
$search_term=“%”“$search.”%”;
试一试{
$DBH=newpdo(“mysql:host=$host;dbname=$dbname”,$user,$pass);
$DBH->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_异常);
$STH=$DBH->prepare('SELECT user\u id,name FROM users,其中name像:search\u term或ref\u number像:search\u term');
$STH->bindParam(':search_term',$search_term,PDO::PARAM_STR);
$STH->execute();
$STH->setFetchMode(PDO::FETCH_ASSOC);
如果($STH->fetchColumn()>0){
而($row=$STH->fetch()){
回声“
”; } }否则{ echo'对不起,您的搜索没有返回任何结果。

; } } 渔获量{ echo$e->getMessage(); }
获取整行并返回
$index
第列的值。如果要测试查询返回的行数,请使用