Jump to content

search engine showing all info from the database


balamberas

Recommended Posts

Hi, I have a search engine script. It works fine when i search one word but if i would put i.e notting hill £900 it shows all the result from the data base. How can i make the script more flexible???

<?php

include ('connect.php');

error_reporting(E_ALL);
ini_set('display_errors', '1');

$submit = $_GET['submit'];
$search = $_GET['search'];
$x=0;
$construct='';
$foundnum=0; 

if (!$submit)
  
  echo "you didnt submit a keyword."; 

else

{

if (strlen($search)<=2)

   echo "search term to short.";
else 
{
  echo " You searched for <b>$search</b><hr size='1'>";

  //connect to our database

$search_exploded = explode(" ",$search);


foreach($search_exploded as $search_each)

{

// construct query

$x++;
if ($x==1)
    $construct .= " location LIKE '%$search_each%'"; 
    else
    $construct .= " OR rent LIKE '%$search_each%'";
    
      }

   // echo out construct
  
$construct = "SELECT * FROM flats WHERE $construct";
$run = mysql_query($construct);
$foundnum = mysql_num_rows($run);

if ($foundnum==0)
  echo "No results found.";
else
{
   echo "$foundnum result found!<p>";

while ($runrows = mysql_fetch_assoc($run))

{

// get data

   $select = $runrows['type'];
   $title = $runrows['title'];
   $location = $runrows['location'];
   $rent = $runrows['rent'];
   $description = $runrows['description'];
   $contactEmail = $runrows['contactEmail'];
   $number = $runrows['number'];

echo "

    $title
    <br>
    $select
    <br>
    $rent
    <br>
    $location
    <br>
    $description
    <br>
    $contactEmail
    <br>
    $number
   <hr>";

}     


      }
    }
  }


?>

 

hi, what if i want it to search through two columns. also when i search for i.e notting hill £900 it still shows all result even tho ive changed the mysql

 

$construct = "SELECT * FROM flats WHERE location =$construct";

I want the script to be as flexible as possible

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.