我想搜索我的網站,如果我搜索會員證書沒有,它會顯示他的全部細節。但在我的代碼中,當我搜索證書編號:1時,它顯示證書的詳細信息編號爲1,10,11,12,13,14,15,....PHP搜索顯示多個結果
是否有任何方法顯示單個成員的詳細信息。
if(isset($_POST['search'])){
$searchq = $_POST['search'];
$searchq = preg_replace("#[^0-9a-z]#i","",$searchq);
$query = mysql_query("SELECT * FROM certificate WHERE certificate_no LIKE '%$searchq%' ") or die ("could not search ");
}
$count = mysql_num_rows($query);
if($count==0){
$output = 'There is no search result ';
} else {
while ($row = mysql_fetch_array($query)){
$name =$row['name'];
$certificate_no =$row['certificate_no'];
$y_of_passing =$row['y_of _passing'];
$grade =$row['grade'];
$score =$row['score'];
$output.='<div>Certificate Number : ' .$certificate_no.' <div>Candidate Name : '.$name. '<div>Grade/Score : ' .$grade.' <div>Course Name : '.$score. '<div>Year Of Passing: '.$y_of_passing.'<div>';
echo "<img src ='".$row['photo']."' height='100' width='200' >" ;
}
}
print("$output");
什麼是certificate_no是primerykey還是unique? –
mysql_ *函數已被棄用。你應該看看MySQLi或PDO。 – Option
*「當我搜索證書編號:1時,會顯示證書編號爲1,10,11,12,13,14,15的詳細信息,」* ...呃,是的,這就是您告訴它要做的事情'WHERE certificate_no LIKE'%$ searchq%'' - 如果你想要一個特定的證書,只需使用'WHERE certificate_no = $ searchq' ...除了將其移動到具有綁定參數的mysqli/pdo; mysql_'擴展名已經失效,並且將數據插入到SQL中,就像是在尋找麻煩。 – CD001