1

私はいくつかのスクリプトに取り組んでおり、検索を作成したいと考えています。私のプロジェクトは CodeIgniter に基づいており、すべてのコード コンテンツを CodeIgniter と互換性を持たせたいと考えています。私はすでにそのような質問を書いていますが、十分な助けが得られず、誰も助けたくないので、この質問を開きました。

私はすでに検索用のクエリに取り組んでいますが、複数の単語をサポートしていないため、良くありません。したがって、検索フォームに「test」という単語を入力すると (テスト単語がデータベースのフィールドの 1 つにあると仮定します)、結果はほとんどありませんが、「test test test」という単語を入力すると (テスト単語がフィールドの 1 つのデータベースで) 結果はありません。

私の以前のクエリ:

$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 に答える