|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2003-10-31 08:00 UTC] sniper@php.net
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Fri Oct 24 07:00:01 2025 UTC |
Description: ------------ I have a problem with a query. I'd like to make a search in a table inserting 2 or more words in the input form, using the OR. Everything works fine with 1 word but with more I obtain result only for the LAST inserted one Please reply me soon, Jack Reproduce code: --------------- <?php require 'db_connect1.php'; if ($search) // perform search only if a string was entered. { $words = explode (" ", $search); $num = COUNT ($words); WHILE ($n<$num) { $queryWhereArray = "(description like %".$words[$n]."% || keywords like %".$words[$n]."% || cost like %".$words[$n]."% )"; } $queryWhere = join(" or ",$queryWhereArray); $query = "select count(id) as k, * from search where $queryWhere group by k order by id desc"; $result = mysql_query($query); $num_rows = mysql_num_rows($result); if (!($num_rows)) { echo "Sorry - no matches were found. Please <a href=\"search1.html\">go back</a> and try some different search terms."; } else { echo "<font face=verdana,sans-serif size=-1>"; echo "Search Results:"; while ($r = mysql_fetch_array($result)) { // Begin while echo "<br>"; $id1=$r["id"]; $link1= $r["link"]; $meta= $r["description"]; $keywords1= $r["keywords"]; $figure=$r["picture"]; $price=$r["cost"]; echo "<table border=0 cellpadding=0 cellspacing=0>"; echo "<tr>"; echo "<td width=50>"; echo "$id1"; echo "</td>"; echo "<td width=500>"; echo "<a href='$link1'>"; echo "$meta"; echo "</a>"; echo "<br>"; echo "$keywords1"; echo "</td>"; echo "<td>"; echo "Rs"; echo "$price"; echo "/-"; echo "</td>"; echo "</tr>"; echo "<br>"; echo "<br>"; } // end while echo "</table>"; echo "</font>"; } } else echo "You did not enter anything to search for. Please <a href=\"search1.html\">go back</a> and enter a search word."; ?> Expected result: ---------------- i want to search the entire string