>My question is what can I do if someone searches for php script for search?
>
>I would want to use OR in my SQL statment. The problem is how do I write the
>query so that it will detect the number of words sent then put enough ORs
>and LIKE '%$search[1]% in?
The LIKE operator will cheerfully return 1 or 0, which you can "add up", or
in your case, "weight and add up" in your SELECT:
$query = "select 0 ";
# The 0 is a kind of 'yeast' to start off our summation of matches.
$words = explode(' ', $search);
while (list(,$word) = $words){
$word = trim($word);
if ($word){
$query .= " + article_keyword.weight * article_keyword.keyword like
'%$word%' ";
}
}
$query .= " as score ";
$query .= " from article_keyword, article_data ";
$query .= " where score > 0 ";
$query .= " and article_data.aid = article_keyword.aid ";
$query .= " order by score desc ";
echo $query, "<BR>\n";
--
Like Music? http://l-i-e.com/artists.htm
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php