Hi I'm having trouble searching my database. When I type two words in the search field it only searches for the second word. For example: if I typed london zoo , it will only search for zoo.
Is this something to do with the explode function? I am stuck, any help would be amazing. Thanks
Here is my code:
<?php
// Get the search variable from URL
$var = @$_GET['q'] ;
$trimmed = trim($var); //trim whitespace from the stored variable
// rows to return
$limit=10;
// check for an empty string and display a message.
if ($trimmed == "")
{
echo "<p>Please enter a search...</p>";
exit;
}
// check for a search parameter
if (!isset($var))
{
echo "<p>We dont seem to have a search parameter!</p>";
exit;
}
//connect to your database ** EDIT REQUIRED HERE **
mysql_connect("host","username","password");
//specify database ** EDIT REQUIRED HERE **
mysql_select_db("database_name") or die("Unable to select database");
// Build SQL Query
$search_words = (explode(' ', $trimmed));
foreach ($search_words as $word) {
$query = "select * from table where Organisation like '%$word%' UNION select * from table where Location like '%$word%' UNION select * from table where Prices like '%$word%' UNION select * from table where Toddlers like '%$word%' UNION select * from table where Indoor_Outdoor like '%$word%'
order by Organisation"; }
$numresults=mysql_query($query);
$numrows=mysql_num_rows($numresults);
// If we have no results, offer a google search as an alternative
if ($numrows == 0)
{
echo "<h4>Results</h4>";
echo "<p>Sorry, your search: "" . $trimmed . "" returned zero results</p>";
// google
echo "<p><a href="http://www.google.com/search?q="
. $trimmed . "" target="_blank" title="Look up
" . $trimmed . " on Google">Click here</a> to try the
search on google</p>";
}
// next determine if s has been passed to script, if not use 0
if (empty($s)) {
$s=0;
}
// get results
$query .= " limit $s,$limit";
$result = mysql_query($query) or die("Couldn't execute query");
// display what the person searched for
echo "<p>You searched for: "" . $var . ""</p>";
// now you can display the results returned
// begin to show results set
echo "Results <br /><br />";
$count = 1 + $s ;
// now you can display the results returned
while ($row= mysql_fetch_array($result)) {
$title = $row["Result"];
$col = $row["Organisation"];
$col1 = $row["Location"];
$col2 = $row["Indoor_Outdoor"];
$col3 = $row["Prices"];
$col4 = $row["Toddlers"];
$col5 = $row["Primary"];
$col6 = $row["Junior"];
$col7 = $row["High_School"];
$col8 = $row["All_Family"];
$col9 = $row["Telephone"];
$col10 = $row["Website_Address"];
echo '<div class="results">';
echo "<div class="title"> $col</div>";
echo "<div class="subheadings">Indoors or Outdoors? $col2</div>";
echo "<div class="subheadings">Price Range in £'s: $col3</div>";
echo "<div style="clear:both"></div>";
echo "<div class="suitable">Suitable for toddlers? $col4<br /> Suitable for primary schools? $col5 <br />Suitable for junior schools? $col6 <br />Suitable for high schools?$col7<br /> Suitable for all the family? $col8</div>";
echo "<div class="lo">Location: $col1</div>";
echo "<div style="clear:both"></div>";
echo "<div class="lo">Telephone Number: $col9</div>";
echo "<div style="clear:both"></div>";
echo "<div class="website">Website Addess: <a href="$col10">$col10</a></div>";
echo "<br /><br />";
echo "</div>n";
$count++ ;
}
$currPage = (($s/$limit) + 1);
//break before paging
echo "<br />";
// next we need to do the links to other results
if ($s>=1) { // bypass PREV link if s is 0
$prevs=($s-$limit);
print " <a href="$PHP_SELF?s=$prevs&q=$var"><<
Prev 10</a>  ";
}
// calculate number of pages needing links
$pages=intval($numrows/$limit);
// $pages now contains int of pages needed unless there is a remainder from division
if ($numrows%$limit) {
// has remainder so add one page
$pages++;
}
// check to see if last page
if (!((($s+$limit)/$limit)==$pages) && $pages!=1) {
// not last page so give NEXT link
$news=$s+$limit;
echo " <a href="$PHP_SELF?s=$news&q=$var">Next 10 >></a>";
}
$a = $s + ($limit) ;
if ($a > $numrows) { $a = $numrows ; }
$b = $s + 1 ;
echo "<p>Showing results $b to $a of $numrows</p>";
?>
Secure FTP
Hi experts,
Unable to customise toolbar in FCK
<FCKeditorV2:FCKeditor ID="FCKQuesreply" runat="server" ToolbarSet="MyToolbar" BasePath="~/fckeditor/" SkinPath="skins/silver/" CustomConfigurationsPath="~/fckeditor/fckconfig.js"
Custom Container in module pool program
Hello everyone,
Blocking video streaming
Hello everyone,I post a message here because i didn't find any solution yet.I just finished video streaming service on my website. I use xmoov script (http://xmoov.com/xmoov-php/) to do that. It works
HTML form problem
Ive made a form to that i want to send to my email via PHP. but when it send only the name's etc send and then the table belpw only Job location sends and the other columns do not send. is this a html
Character Sets/Collations Stuff
Can someone please give me a check list of things I must do to setup all the charset stuff for my php/mysql social site*only for a USA town doesn't require non english characters*
What are causes of a connection-timeout with fopen()?
Hello! Here is the situation: The server I host my website on just upgraded it's PHP build from 4.4.* to 5.2.4. Not just PHP was upgraded, MySQL, postGres, and (I think) Apache were upgraded as well.
List/Menu Box
On an edit page when you want something to select what a user has previously selected from the database, how would you do this for a List/Menu box? The only way I know how is Code: <?php echo
Search in the PHP Files
have to search asterisk(*) in the php code of the php files .
php and downloading
I want to use a php script to create two files. Then I want it to redirect (or whatever) to have those files download together. Can I have it download a folder? Or maybe have it create a zip/rar file