phppdo模糊查询页面,带搜索框,关键字符合的列全部输出
时间: 2024-03-18 15:40:47 浏览: 62
下面是一个使用PDO进行模糊查询的页面示例,包含搜索框并且可以输出所有关键字匹配的列:
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>模糊查询页面</title>
</head>
<body>
<h1>模糊查询页面</h1>
<form action="" method="get">
<label for="search">搜索关键词:</label>
<input type="text" name="search" id="search" value="<?php echo isset($_GET['search']) ? $_GET['search'] : ''; ?>">
<input type="submit" value="搜索">
</form>
<?php
if (isset($_GET['search'])) {
$search = $_GET['search'];
$db = new PDO('mysql:host=localhost;dbname=mydb;charset=utf8', 'username', 'password');
$stmt = $db->prepare("SELECT * FROM mytable WHERE mycolumn LIKE :search");
$stmt->execute(array(':search' => '%'.$search.'%'));
$results = $stmt->fetchAll(PDO::FETCH_ASSOC);
if (count($results) > 0) {
echo '<ul>';
foreach ($results as $row) {
foreach ($row as $key => $value) {
if (stripos($value, $search) !== false) {
echo '<li>'.$key.': '.$value.'</li>';
}
}
}
echo '</ul>';
} else {
echo '<p>没有找到匹配的数据。</p>';
}
}
?>
</body>
</html>
```
在上述代码中,使用`<form>`标签创建一个搜索表单,其中`<input>`标签的`name`属性设置为`search`,用于获取用户输入的搜索关键词。在PHP代码中,首先判断是否有`search`参数传递,如果有,则进行模糊查询,并输出查询结果。如果没有,则不进行查询。最后,将查询结果输出到页面上,使用`<ul>`和`<li>`标签创建一个无序列表展示查询结果。在查询结果中,对于每一行数据,遍历每一列并判断是否包含搜索关键词,如果包含则将该列和对应的值输出到页面上。
阅读全文