好吧所以我创建了一个网站,仅仅是为了我正在做的项目。在这个网站上我有这个数据库,上面有几篇文章,我使用这个代码进行make查询:
<?php
if (!empty($_REQUEST['term'])) {
$term = mysql_real_escape_string($_REQUEST['term']);
$sql = "SELECT * FROM articles WHERE title LIKE '%".$term."%'";
$r_query = mysql_query($sql);
while ($row = mysql_fetch_array($r_query)){
echo $row['title'];
echo $row['summary'];
echo $row['content'];
echo $row['publicationDate'];
}
}
?>
问题在于搜索有点过于“松散”。站点连接的数据库有很多文章。我不喜欢的是,我在搜索框中搜索了字母'A',它出现在任何文章标题中出现字母'A'的任何实例。因此,澳大利亚,奥地利,阿富汗甚至厄瓜多尔都没有附上“A”字样的文章。它有点令人沮丧。你能救我吗?
答案 0 :(得分:0)
您可以尝试强制它成为字符串的开头或单词的开头:
$sql = "SELECT * FROM articles WHERE title LIKE '% ".$term."%' OR title LIKE '".$term."%'";