0
我想實現一個非常簡單的搜索到我的主頁,但它不完全工作,我希望它..按鈕單擊窗體上的mysqli PHP數據庫搜索
它看起來像從鏈接表單工作得很好,甚至數據庫搜索現在都在工作,這要歸功於最新的更新。
的問題是:當搜索已經準備好,並顯示結果(回聲$輸出),我總是看到只有一個結果,但我要顯示所有比賽..
任何建議?
感謝提前:)
這裏談到的的search.php文件:
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
?>
<?php
$conn = mysqli_connect("localhost", "user", "password", "table");
if(mysqli_connect_errno()) {
echo "Failed to connect: " . mysqli_connect_error();
}
?>
<?php
$output = '';
if(isset($_GET['query']) && $_GET['query'] !== ' ') {
$searchquery = $_GET['query'];
$query = mysqli_query($conn, "SELECT * FROM tbl_users WHERE username LIKE '%$searchquery%' OR email LIKE '%searchquery%'") or die(mysqli_error());
$num_rows = mysqli_num_rows($query);
if($num_rows== 0) {
$output = 'No search results for <b>"' . $searchquery . '"</b>';
} else {
while($row = mysqli_fetch_array($query)){
$id = $row['id'];
$username = $row['username'];
$email = $row['email'];
$output = "<a href='profile.php?user=$id'>$username</a>";
}
}
} else {
header("location: ./");
}
print("$output");
mysqli_close($conn);
?>
感謝,它現在工作稍好一點,我改變了代碼(請參閱編輯),但因此我有一個新的錯誤消息:警告:mysqli_fetch_array()期望參數1是mysqli_result。 這並不壞,因爲這意味着實際的搜索工作。 感謝您的注射提示,但首先我需要得到這個勉強工作;) – Maxischl
看起來你只需要改變'while($ row = mysqli_fetch_array($ searchquery)){'使用'$ query'代替'$ searchquery'。 –
感謝人,一分鐘前從字面上發現了這個問題,只是用了一個錯誤的變量 - 傻傻的。謝謝你通過檢查! 無論如何,現在我有另一個新問題-.-我想要顯示所有匹配。但結果總是隻顯示highes指數的結果...... – Maxischl