- ';
foreach ($results as $row) {
echo '
- ' . htmlspecialchars($row['name']) . ' '; } echo '
在PHP中实现搜索功能,通常涉及到前端(HTML/JavaScript)来提供搜索界面和发送搜索请求,以及后端(PHP)来处理搜索逻辑并返回结果。这里,我将详细介绍一个基本的搜索功能实现流程,包括数据库交互。
### 1. 设计前端搜索界面
首先,你需要一个HTML表单,让用户可以输入搜索关键词。这个表单通常包含一个文本框和一个提交按钮。
```html
```
在这个例子中,当用户填写完搜索词并点击提交按钮时,表单数据会通过GET方法发送到`search.php`文件。
### 2. PHP后端处理搜索请求
在`search.php`文件中,你需要编写PHP代码来接收搜索词,执行搜索逻辑,并返回结果。
#### 接收搜索词
```php
setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
die("Could not connect to the database $dbname :" . $e->getMessage());
}
```
#### 执行搜索查询
接下来,根据接收到的搜索词,构造并执行SQL查询。这里以搜索用户表为例:
```php
$sql = "SELECT * FROM users WHERE name LIKE ?";
$stmt = $pdo->prepare($sql);
$search = "%$keyword%";
$stmt->execute([$search]);
$results = $stmt->fetchAll(PDO::FETCH_ASSOC);
```
注意:这里使用了预处理语句(prepared statement)来防止SQL注入攻击。
#### 显示结果
最后,遍历查询结果并显示给用户。
```php
if ($results) {
echo '