joomla 中的全文查询

2024-04-25

如何使用 joomla 对象构建全文搜索查询。我一直在尝试,但没有成功

   $db = JFactory::getDBO();
        $query = $db->getQuery(true);
        $query->select('*');
        $query->from('#__unis_subjects AS s');
        $query->join('', '#__unis AS u ON s.university = u.id');
        $query->join('', '#__unis_faculties AS f ON f.id = s.faculty');
        $query->where('MATCH (s.subject) AGAINST ("' . $query . '")');

        if (!$db->query()) {
            throw new Exception($db->getErrorMsg());
        }

        $data = $db->loadObjectList();

        var_dump($query);

结果输出模板配置参数


您的表必须使用 ENGINE = MyISAM(不是 InnoDB)进行设置,并且您要搜索的列必须设置为 FULLTEXT 索引。

您可以通过“SQL”选项卡轻松地将表设置为 phpMyAdmin 中的 MyISAM...

ALTER TABLE `tablename` ENGINE=MYISAM;

在 Joomla 2.5+(也可能是 3+)中,我在查询中使用了 where 子句......

->where('MATCH ('.$db->quoteName('columnname').') AGAINST ('.$db->quote($words_or_phrase_to_search_for).')');

进一步的测试正在进行中,但到目前为止,它似乎按预期工作。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

joomla 中的全文查询 的相关文章

随机推荐