php - 使用 php 无法进行搜索

标签 php mysql mysqli

这是我的搜索代码,当我单击搜索按钮时,它会输出所有值,而不是搜索特定的产品标题。

有什么帮助吗?

<?php include("config.php");
mysqli_select_db("onlinegrocery");
$output = "";

if(isset($_POST['search'])) {

$searchq = $_POST['search'];
$searchq = preg_replace("#[^0-9a-z]#i","",$searchq);

$query = "SELECT * FROM tbl_product WHERE product_title LIKE '%$searchq%'";
$sql=mysqli_query($con,$query);
$count = mysqli_num_rows($sql);
if($count == 0) {
    $output = 'Nothing Found';
}
else {
        while($row = mysqli_fetch_array($sql)){
            $product_title = $row['product_title'];
            $id = $row['product_id'];

            $output .= '<div> '.$product_title.' </div>';
        }
}

}
?>

<form action="index.php" method="post">
                                <input type="text" class="form-control" placeholder="Search">
                                <div class="input-group-btn">
                                    <button class="btn btn-default" type="submit" name="search"><i class="glyphicon glyphicon-search"></i></button>
                                </div>
                            </form>
                        <?php echo("$output");?>

最佳答案

您缺少连接变量

mysqli_select_db("onlinegrocery");

它需要第一个参数作为您的数据库连接

应该是

mysqli_select_db($con,"onlinegrocery");

阅读http://php.net/manual/en/mysqli.select-db.php

您的代码已开放供古老的 SQL 注入(inject)检查 How can I prevent SQL injection in PHP?为了防止它

忘记搜索表单中的名称属性

<form action="index.php" method="post">
    <input type="text" class="form-control" placeholder="Search" name="search">
    <div class="input-group-btn">
        <button class="btn btn-default" type="submit" name="submit"><i class="glyphicon glyphicon-search"></i></button>
    </div>
</form>

关于php - 使用 php 无法进行搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36691084/

相关文章:

php - CodeIgniter - 通过 ID 更新单个记录 - 失败

php - 用 PHP 解码 NHL JSON 表

php - 使用 ajax/jquery 检索最后一个 mysql rowd ID

PHP 按每周日对 mysql 数据进行排序

php - 如何使用 mysqli_multi_query 识别导致错误的查询?

php - array_search 和 destroy 逻辑错误

PHP cURL 请求primary_ip 与cURL url 不同

php - 我想在php的一页中列出,编辑和更新记录

Mysql REGEXP 用户名

php - mySQL UPDATE 查询本地文件路径