Help needed in searching a sentence in the code

nagendra prasad <[email protected]>
Newsgroups gmane.comp.php.windows,gmane.comp.php.database
Message-ID <[email protected]>
Hi All,

I have this code where user can search a song or the entire song title. It
looks like when a user search a single word its searching and giving the
proper results. However if the user wants to search the entire sentence its
not giving the proper results. For example let say I have searched for the
MJ's song "Earth Song", its giving me the proper results. However if I am
searching for the MJ's " Why You Wanna Trip On Me", its not giving me the
proper results. Below is the code:



<?php


//get data
$button = $_GET['submit'];
$search = $_GET['search'];

$s = 0;
$s = $_GET['s'];
if (!$s)
$s = 0;
$i = 0;

$e = 30; // Just change to how many results you want per page


$next = $s + $e;
$prev = $s - $e;




 if (strlen($search)<=2)


  echo "<br><table align='center'><tr><td><sup>&dagger;</sup><font
face='sana-serif' size='6'><font color='blue'><b><sup><a href='
http://localhost/searchengine/' style='text-decoration:
none'>MP3dom</a></sup></b></b></font><font face='sana-serif'
size='3'><sup>&trade;</sup></td><td><sup><form action='search.php'
method='GET'><input type='text' onclick=value='' size='50' name='search'
value='$search'> <input type='submit' name='submit'
value='Search'></form></td></tr></table> <table bgcolor='#0000FF'
width='100%' height='1px'><br /></table><table bgcolor='#f0f7f9'
width='100%' height='10px'><tr><td><div align='right'><b>Must be greater
then 3 chars</b></div></td></tr></table><p></sup>";
 else
 {
  echo "<br><table align='center'><tr><td>&dagger;<font face='sana-serif'
size='6'><font color='blue'><b><a href='http://localhost/searchengine/'
style='text-decoration: none'>MP3dom</a></b></b></font><font
face='sana-serif' size='3'><sup>&trade;</sup></td><td><sub><form
action='search.php' method='GET'><input type='text' onclick=value=''
size='50' name='search' value='$search'><input type='submit' name='submit'
value='Search'></form></td></tr></table></sub>";

  //connect to database
  mysql_connect("localhost","root","");
  mysql_select_db("mp3");



   //explode out search term
   $search_exploded = explode(" ",$search);

   foreach($search_exploded as $search_each)
   {

        //construct query
    $x++;
    if ($x==1)
     $construct .= "name LIKE '%$search_each%'";
    else
     $construct .= " OR name LIKE '%$search_each%'";

   }

  //echo outconstruct
  $constructx = "SELECT * FROM data WHERE $construct";

  $construct = "SELECT * FROM data WHERE $construct LIMIT $s,$e ";
  $run = mysql_query($constructx);

  $foundnum = mysql_num_rows($run);


  $run_two = mysql_query("$construct");

  if ($foundnum==0)
   echo "<table bgcolor='#F1EDC2' width='100%' height='1px'><br
/></table><table bgcolor='#f0f7f9' width='100%' height='10px'><tr><td><div
align='right'>No results found for
<b>$search</b></div></td></tr></table><p>";
  else
  {
   echo "<table bgcolor='#F1EDC2' width='100%' height='1px'><br
/></table><table bgcolor='#f0f7f9' width='100%' height='10px'><tr><td><div
align='right'>Showing 1-30 of <b>$foundnum</b> results found for
<b>$search.</b></div></td></tr></table><p>";







   print '<table bgcolor="#F1EDC2" width="700"  height="30" border="0"
align="center" >';
   print '<tr>';

     print '<td width="100" nowrap="nowrap"><strong>Artist</strong></td>';
     print '<td width="250" nowrap="nowrap"><strong>Song
Name</strong></td>';
     print '<td width="50" nowrap="nowrap"><strong>Movie
Date</strong></td>';
     print '<td width="50" nowrap="nowrap"><strong>Size</strong></td>';

   print '</tr>';
   while ($runrows = mysql_fetch_assoc($run_two))
   {
    //get data
   $type = $runrows['artist'];
   $date = $runrows['date'];
   $name = $runrows['name'];
   $size = $runrows['size'];



 foreach ($runrows as $row)
{
  if ($i % 2 != 0) # An odd row
    $rowColor = "#EBECE4";
  else # An even row
    $rowColor = "#FEF1E9";



 print '<table width="700" height="30" border="0" align="center">';

}


   print '<?php do { ?>';
     print '<tr bgcolor="' . $rowColor . '">';

       print '<td nowrap="nowrap" width="100">'.'<font color=:blue"
size=2>'."$type".'</td>';
       //print '<td nowrap="nowrap" width="250">'.'<font size=2>'."<a
herf='$url'>$name".'</td>';

       print '<td nowrap="nowrap" width="250">'.'<font color="blue"
size=2>'."<a href='download.php?url=$url'>$name".'</font></td>';


       print '<td nowrap="nowrap" width="100" align="center">'.'<font
size=2>'."$date ".'</td>';
       print '<td nowrap="nowrap" width="50">'.'<font size=2>'."$size
".'</td>';
       print '<td nowrap="nowrap" width="25">'.'<font size=2>'."$se
".'</td>';
       print '<td nowrap="nowrap" width="25">'.'<font size=2>'."$le
".'</td>';
     print '</tr>';



 print '</table>';
 print '</body>';
 print '</html>';

   }
?>


<table width='100%'>
<tr>
<td>
<div align="center">
<br><br>
<?php
if (!$s<=0)
 echo "<a href='search.php?search=$search&s=$prev'>Prev</a>";

$i =1;
for ($x=0;$x<$foundnum;$x=$x+$e)
{


 echo " <a href='search.php?search=$search&s=$x'>$i</a> ";


$i++;


}

if ($s<$foundnum-$e)
  echo "<a href='search.php?search=$search&s=$next'>Next</a>";

    }
}


?>
</div>
</td>
</tr>
</table>


***************************************************************************************************

Also, the above code is giving me the below errors:

*Notice*: Undefined index: s in *C:\wamp\www\searchengine\search.php* on
line *11
**Notice*: Undefined variable: x in *C:\wamp\www\searchengine\search.php* on
line *46*

*Notice*: Undefined variable: construct in *
C:\wamp\www\searchengine\search.php* on line *48


******************************************************************************************************************

Please help me with this.

Best,
Guru.

*
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.