2011-03-25 96 views
1

我有一个WordPress的帖子标题 $ title ='my post title';检查sql匹配查询

我有一张名为interlinks的表格,用于存储我所有的帖子标题,网址和siteurls或我的整个网络。

该查询将我的标题与链接表中的所有标题进行匹配。

请检查我的查询是否正确。谢谢。我有一种感觉,它是一个很大的马车。

$query_related_posts_network = mysql_query(
    "SELECT " 
    " posttitle, " 
    " posturl, " 
    " siteurl, " 
    " MATCH (posttitle,posturl,siteurl) AGAINST ('$title') AS score " 
    "FROM " 
    " interlinks " 
    "WHERE " 
    " MATCH (posttitle,posturl,siteurl) AGAINST ('$title') AND " 
    " `siteurl` <> '$blogurl' " 
    "LIMIT 15"); 
+0

您可能想要一个'ORDER BY'子句来确保您获得最高得分匹配。 – jswolf19 2011-03-26 02:17:03

回答

0

我能看到的唯一的事情就是:

不要忘了逃跑你把字符串变量在您的SQL查询,使用mysql_real_escape_string()

$query_related_posts_network = mysql_query("SELECT posttitle, posturl, siteurl, 
    MATCH (posttitle,posturl,siteurl) AGAINST ('".mysql_real_escape_string($title)."') AS score 
    FROM interlinks 
    WHERE MATCH (posttitle,posturl,siteurl) AGAINST ('".mysql_real_escape_string($title)."') 
    AND `siteurl` <> '".mysql_real_escape_string($blogurl)."' LIMIT 15");