欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

php input模糊搜索數(shù)據(jù)庫下拉選擇

黃晨曦5分鐘前2瀏覽0評論

本文將介紹如何使用PHP和數(shù)據(jù)庫實現(xiàn)一個模糊搜索功能,并將搜索結(jié)果以下拉選擇列表的形式呈現(xiàn)給用戶。

假設我們有一個用戶表,包含姓名和年齡兩個字段。現(xiàn)在我們希望用戶可以通過輸入姓名的一部分來搜索對應的用戶,并從搜索結(jié)果中選取一個用戶進行進一步操作。

首先,我們需要在前端創(chuàng)建一個輸入框供用戶輸入搜索關鍵字。然后,我們使用Ajax實現(xiàn)實時搜索并將結(jié)果返回給前端。在后端,我們需要編寫PHP代碼來查詢數(shù)據(jù)庫,根據(jù)用戶輸入的關鍵字模糊匹配用戶的姓名。最后,我們將查詢結(jié)果以下拉選擇列表的形式返回給前端。

下面是前端代碼:

<html>
<head>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
</head>
<body>
<input type="text" id="search" placeholder="請輸入搜索關鍵字" />
<select id="users"></select>
<script>
$(document).ready(function(){
$('#search').keyup(function(){
var keyword = $(this).val();
$.ajax({
url: 'search.php',
type: 'POST',
data: {keyword: keyword},
success: function(response){
$('#users').html(response);
}
});
});
});
</script>
</body>
</html>

在這段代碼中,我們使用了一個文本輸入框和一個空的下拉選擇列表。當用戶在輸入框中輸入關鍵字時,通過keyup事件觸發(fā)Ajax請求。請求發(fā)送到search.php文件,并將用戶輸入的關鍵字作為POST參數(shù)傳遞。

接下來,我們來編寫search.php文件的后端代碼:

<?php
// 獲取用戶輸入的關鍵字
$keyword = $_POST['keyword'];
// 連接數(shù)據(jù)庫
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database";
$conn = new mysqli($servername, $username, $password, $dbname);
// 查詢數(shù)據(jù)庫
$sql = "SELECT * FROM users WHERE name LIKE '%$keyword%'";
$result = $conn->query($sql);
// 構(gòu)建下拉選擇列表的選項
$options = "";
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
$name = $row['name'];
$id = $row['id'];
$options .= "<option value='$id'>$name</option>";
}
}
// 返回下拉選擇列表的選項
echo $options;
// 關閉數(shù)據(jù)庫連接
$conn->close();
?>

在這段代碼中,我們首先獲取到前端傳遞過來的關鍵字。然后,連接到數(shù)據(jù)庫,并執(zhí)行查詢語句。查詢結(jié)果中的每一行都被轉(zhuǎn)換成一個下拉選擇列表的選項,存儲在$options變量中。最后,我們將$options返回給前端,讓前端將其添加到下拉選擇列表中。

通過以上代碼,當用戶在輸入框中輸入關鍵字時,將會實時顯示搜索結(jié)果。用戶可以從下拉選擇列表中選擇一個用戶,進一步操作。例如,用戶輸入"張"時,下拉選擇列表會顯示所有姓名包含"張"的用戶,例如"張三"、"張四"等。

通過本文的示例,我們可以看到PHP input模糊搜索數(shù)據(jù)庫下拉選擇的實現(xiàn)原理,并將其應用到自己的項目中,提升用戶的搜索體驗。