我想使用MySQL的LIKE
子句搜索关键字(例如:LIKE %$keyword%
),然后返回结果。如果没有结果,我想显示一些错误消息。
我有一个名为ads_post
的表,并且我正在名为cat_name
和city_name
的字段中搜索关键字。
有人可以帮我吗?
search-result.php
<?php
if (isset($_GET['submit'])) {
$keyword = $_GET['keywoed'];
$query = "select * from ads_post where cat_name like '%$keywoed%' or city_name like '%$keywoed%'";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
while ($row = mysqli_fetch_assoc($result)) {
echo "cat Name: " . $row["cat_name"] . "<br>";
}
} else {
echo "0 results";
}
mysqli_close($conn);
}
?>
HTML表单代码
<form action="search-result.php" method="get" >
<input class="form-control" name="keyword" placeholder="Search any keyword..?">
<input type="submit" value="search">
</form>
答案 0 :(得分:0)
您可以替换
$query = "select * from ads_post where cat_name like '%$keywoed%' or city_name like '%$keywoed%'";
使用
$query = "select * from ads_post where cat_name like '%$keyword%' or city_name like '%$keyword%'";
和其他
$keyword = $_GET['keywoed'];
替换
$keyword = $_GET['keyword'];
答案 1 :(得分:0)
我抓到了东西
$query = "select * from ads_post where cat_name like '%$keywoed%' or city_name like '%$keywoed%'";
$result = mysqli_query($conn, $sql);
首先定义$ query但mysqli_query是$ sql,请替换$ query而不是$ sql:)
$result = mysqli_query($conn, $query);