【问题标题】:does match () against () needs 4 parameters to work?match () 对 () 是否需要 4 个参数才能工作?
【发布时间】:2012-01-06 01:18:05
【问题描述】:

你好,我正在尝试创建一个搜索引擎,我使用 match() against() 将我的关键字与用户的关键字相匹配。当我将参数分配为 4 时,它不会显示任何错误,但是当我有它在 3 或 2 我一直有这个错误:

警告:mysql_fetch_array() 期望参数 1 是资源,在...中给出布尔值

这是我的代码:

if(isset($_POST['submit'])){

$keyword = "'".$_POST["keywords"]."'";


$result = " SELECT *, MATCH(title,body,meta_keywords) AGAINST
($keyword) AS score FROM articles WHERE MATCH(title,body,meta_keywords) AGAINST($keyword) GROUP BY url";

$query = mysql_query($result);

}
while($row = mysql_fetch_array($query)){
    echo $row['title'] . "<br/ >";
}
?>

【问题讨论】:

    标签: mysql search-engine match


    【解决方案1】:

    试试这个

    SELECT *, count (MATCH(title,body,meta_keywords) 反对 ($keyword)) AS score FROM article WHERE MATCH(title,body,meta_keywords) AGAINST($keyword IN BOOLEAN MODE) ORDER BY score GROUP BY url

    也许我没有运行它的sintaxs中有一些错误

    您可以在mysql full text search in boolean mode找到更多信息

    【讨论】:

    • 我尝试了代码,但它仍然有同样的错误。这里:警告:mysql_fetch_array() 期望参数 1 是资源,给定的布尔值
    • 关键字的价值是什么?你有正确的桌子设置吗?这说明了什么 $query = mysql_query($result);回声 mysql_errno($link) 。 “:”。 mysql_error($link) 。 "\n" $link 来自 $link = mysql_connect("localhost", "mysql_user", "mysql_password");
    • $keywords
    猜你喜欢
    • 2012-02-03
    • 2021-06-26
    • 1970-01-01
    • 1970-01-01
    • 2012-04-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-30
    相关资源
    最近更新 更多