1

我正在编写一些脚本,我想创建搜索。我的项目基于 CodeIgniter,我希望所有代码内容都与它兼容。我已经写过这样的问题,但是我没有得到足够的帮助,也没有人愿意帮助我,所以我打开了这个问题。

我已经在研究用于搜索的查询,但这并不好,因为它不支持多个单词。因此,如果我在搜索表单中输入单词“test”(假设测试单词在数据库中的某个字段中),结果将很少,但是如果我输入单词“test test test”(再次假设测试单词是在其中一个字段的数据库中)将没有任何结果。

我之前的查询:

$this->db->select('title, content, date, hyperlink')->or_like(array('title' => $query, 'content' => $query))->order_by('id_article', 'desc')->get('news');

经过一些调整:

$this->db->select('title, content, date, hyperlink');
foreach ($parts as $q)
{
    $this->db->or_like(array('title' => $q, 'content' => $q));
}
$this->order_by('id_article', 'desc')
$show_results = $this->db->get('news');

创建良好查询的最佳方法是什么?

4

1 回答 1

1

试试这个代码。这将在您的搜索查询中为您提供更多帮助。它将搜索任意数量的单词,只要该单词存在。

$this->db->select('title, content, date, hyperlink');
$this->db->where("title LIKE '%$query%' OR content LIKE '%$query%'");

希望这对您有所帮助。

于 2012-05-06T09:03:51.647 回答