关键字搜索无效

时间:2015-02-20 04:02:14

标签: php sql

我正在创建一个简单的SQL搜索,按关键字搜索字词。只有,我必须输入完整的关键字阶段才能显示结果。

的index.php

$term = $_GET['q'];
$term = strip_tags($term);
$term = mysql_real_escape_string($term);

require_once("<PATHTOFILE>\\dbconnect.php");
$sql = "SELECT * FROM Search WHERE Keywords LIKE '{$term}' LIMIT 15";
$result = mysqli_query($con, $sql) or die("couldn't apply search");

<h1>Results for '<?php echo $term; ?>'</h1>
<br>
<ul>
    <?php 
        if($count = mysqli_num_rows($result) > 0) {
            while($row = mysqli_fetch_assoc($result)) { 
    ?>
        <li><?php echo $row['Title']; ?></li>

    <?php 
            }
        } 
        if($count = mysqli_num_rows($result) == 0) {
            ?>No Results.<?php
        }
    ?>
</ul>

sql表结构: capture

任何想法都错了吗?

1 个答案:

答案 0 :(得分:3)

首先,您将MySQL API与mysql_real_escape_string()混合。

该函数不与mysqli_函数混合。

您需要在连接后使用mysqli_real_escape_string($con,$term);

与Lashane在评论中所述的'%{$term}%'一起。