Jump to content

lolzer2000

New Members
  • Posts

    4
  • Joined

  • Last visited

    Never

Profile Information

  • Gender
    Not Telling

lolzer2000's Achievements

Newbie

Newbie (1/5)

0

Reputation

  1. grrrrrrrrrrrrrrrrrr... im starting to grow a a deep hate for php >:( >:( >:( anyway this is what im getting with the last script i posted.. [url=http://directernaartoe.nl/test/zoek.php]http://directernaartoe.nl/test/zoek.php[/url] its supposed to work now :( , why isnt it working :'( edit: i modified the php file name to search.php because this was the action destination in the form.. it works now. jus when i load up the page im getting the error. becides that, its ok now :o [url=http://directernaartoe.nl/test/search.php]http://directernaartoe.nl/test/search.php[/url] can anyone help me fixing that ? ^^
  2. [code]<?php //This is a working script //Make sure to go through it and edit database table filelds that you are seraching //This script assumes you are searching 3 fields $hostname_logon = "***" ; $database_logon = "****" ; $username_logon = "****" ; $password_logon = "***" ; //open database connection $connections = mysql_connect($hostname_logon, $username_logon, $password_logon) or die ( "Unabale to connect to the database" ); //select database mysql_select_db($database_logon) or die ( "Unable to select database!" ); //specify how many results to display per page $limit = 10; // Get the search variable from URL   $var = @$_GET['q'] ; //trim whitespace from the stored variable   $trimmed = trim($var); //separate key-phrases into keywords   $trimmed_array = explode(" ",$trimmed); // check for an empty string and display a message. if ($trimmed == "") {   $resultmsg =  "<p>Search Error</p><p>Please enter a search...</p>" ;   } // check for a search parameter if (!isset($var)){   $resultmsg =  "<p>Search Error</p><p>We don't seem to have a search parameter! </p>" ;   } // Build SQL Query for each keyword entered foreach ($trimmed_array as $trimm){ // EDIT HERE and specify your table and field names for the SQL query $query = "SELECT * FROM test WHERE id LIKE '%$trimm%' OR test1 LIKE '%$trimm%' OR test2 LIKE '%$trimm%' ORDER BY id DESC" ;     // Execute the query to  get number of rows that contain search kewords     $numresults=mysql_query ($query);     $row_num_links_main =mysql_num_rows ($numresults);     // next determine if 's' has been passed to script, if not use 0.     // 's' is a variable that gets set as we navigate the search result pages.     if (empty($s)) {         $s=0;     }       // now let's get results.       $query .= " LIMIT $s,$limit" ;       $numresults = mysql_query ($query) or die ( "Couldn't execute query" );       $row= mysql_fetch_array ($numresults);       //store record id of every item that contains the keyword in the array we need to do this to avoid display of duplicate search result.       do{ //EDIT HERE and specify your field name that is primary key           $adid_array[] = $row[ 'id' ];       }while( $row= mysql_fetch_array($numresults)); } //end foreach if($row_num_links_main == 0 && $row_set_num == 0){   $resultmsg = "<p>Search results for:" . $trimmed  ."</p><p>Sorry, your search returned zero results</p>" ; }   //delete duplicate record id's from the array. To do this we will use array_unique function   $tmparr = array_unique($adid_array);   $i=0;   foreach ($tmparr as $v) {       $newarr[$i] = $v;       $i++;   } // now you can display the results returned. But first we will display the search form on the top of the page ?> <form action="search.php" method="get" name="search">   <div align="center">       <input name="q" type="text" value=" <?php echo $q; ?> " size="15">       <input name="search" type="submit" value="Search">   </div> </form> <?php // display what the person searched for. if( isset ($resultmsg)){   echo $resultmsg;   exit(); }else{   echo "Search results for: " . $var; } foreach($newarr as $value){ // EDIT HERE and specify your table and field names for the SQL query $query_value = "SELECT * FROM test WHERE id = '$value'"; $num_value=mysql_query ($query_value); $row_linkcat= mysql_fetch_array ($num_value); $row_num_links= mysql_num_rows ($num_value); //now let's make the keywods bold. To do that we will use preg_replace function. //EDIT parts of the lines below that have fields names like $row_linkcat[ 'field1' ] //This script assumes you are searching only 3 fields. If you are searching more fileds make sure that add appropriate line.   $titlehigh = preg_replace ( "'($var)'si" , "<b>\\1</b>" , $row_linkcat[ 'id' ] );   $linkhigh = preg_replace ( "'($var)'si" , "<b>\\1</b>" , $row_linkcat[ 'test1' ] );   $linkdesc = preg_replace ( "'($var)'si" , "<b>\\1</b>" , $row_linkcat[ 'test2' ] ); foreach($trimmed_array as $trimm){     if($trimm != 'b' ){ //IF you added more fields to search make sure to add them below as well.         $titlehigh = preg_replace( "'($trimm)'si" ,  "<b>\\1</b>" , $titlehigh);         $linkhigh = preg_replace( "'($trimm)'si" , "<b>\\1</b>" , $linkhigh);         $linkdesc = preg_replace( "'($trimm)'si" ,  "<b>\\1</b>" , $linkdesc);     } //end highlight ?> <p> <?php echo $titlehigh; ?><br> <?php echo $linkhigh; ?><br> <?php echo $linkhigh; ?> </p> <?php }  //end foreach $trimmed_array   if($row_num_links_main > $limit){   // next we need to do the links to other search result pages       if ($s>=1) { // do not display previous link if 's' is '0'         $prevs=($s-$limit);         echo "<div align='left'><a href='$PHP_SELF?s=$prevs&q=$var&catid=$catid'>Previous " .$limit. "</a></div>";       }     // check to see if last page     $slimit =$s+$limit;       if (!($slimit >= $row_num_links_main) && $row_num_links_main!=1) {     // not last page so display next link           $n=$s+$limit;           echo "<div align='right'><a href='$PHP_SELF?s=$n&q=$var&catid=$catid'>Next " .$limit. "</a></div>";         }     } }  //end foreach $newarr ?> [/code] edited more of the script that needed editing.. still doesnt work ;/ edit: for more info: table name = test row1 = id row2 = test1 row3 = test2 it goes wrong as sooon as i want to load the page. im getting the error : [quote]Search Error We don't seem to have a search parameter! [/quote] while i only just loaded the page
  3. [code]<?php //This is a working script //Make sure to go through it and edit database table filelds that you are seraching //This script assumes you are searching 3 fields $hostname_logon = "localhost" ; $database_logon = "******" ; $username_logon = "******" ; $password_logon = "******t" ; //open database connection $connections = mysql_connect($hostname_logon, $username_logon, $password_logon) or die ( "Unabale to connect to the database" ); //select database mysql_select_db($database_logon) or die ( "Unable to select database!" ); //specify how many results to display per page $limit = 10; // Get the search variable from URL   $var = @$_GET['q'] ; //trim whitespace from the stored variable   $trimmed = trim($var); //separate key-phrases into keywords   $trimmed_array = explode(" ",$trimmed); // check for an empty string and display a message. if ($trimmed == "") {   $resultmsg =  "<p>Search Error</p><p>Please enter a search...</p>" ;   } // check for a search parameter if (!isset($var)){   $resultmsg =  "<p>Search Error</p><p>We don't seem to have a search parameter! </p>" ;   } // Build SQL Query for each keyword entered foreach ($trimmed_array as $trimm){ // EDIT HERE and specify your table and field names for the SQL query     $query = "SELECT * FROM test WHERE id LIKE \"%$trimm%\" OR test1 LIKE  \"%$trimm%\" OR test2 LIKE \"%$trimm%\" ORDER BY id DESC" ;     // Execute the query to  get number of rows that contain search kewords     $numresults=mysql_query ($query);     $row_num_links_main =mysql_num_rows ($numresults);     // next determine if 's' has been passed to script, if not use 0.     // 's' is a variable that gets set as we navigate the search result pages.     if (empty($s)) {         $s=0;     }       // now let's get results.       $query .= " LIMIT $s,$limit" ;       $numresults = mysql_query ($query) or die ( "Couldn't execute query" );       $row= mysql_fetch_array ($numresults);       //store record id of every item that contains the keyword in the array we need to do this to avoid display of duplicate search result.       do{ //EDIT HERE and specify your field name that is primary key           $adid_array[] = $row[ 'fieldid' ];       }while( $row= mysql_fetch_array($numresults)); } //end foreach if($row_num_links_main == 0 && $row_set_num == 0){   $resultmsg = "<p>Search results for:" . $trimmed  ."</p><p>Sorry, your search returned zero results</p>" ; }   //delete duplicate record id's from the array. To do this we will use array_unique function   $tmparr = array_unique($adid_array);   $i=0;   foreach ($tmparr as $v) {       $newarr[$i] = $v;       $i++;   } // now you can display the results returned. But first we will display the search form on the top of the page ?> <form action="search.php" method="get" name="search">   <div align="center">       <input name="q" type="text" value=" <?php echo $q; ?> " size="15">       <input name="search" type="submit" value="Search">   </div> </form> <?php // display what the person searched for. if( isset ($resultmsg)){   echo $resultmsg;   exit(); }else{   echo "Search results for: " . $var; } foreach($newarr as $value){ // EDIT HERE and specify your table and field names for the SQL query $query_value = "SELECT * FROM tablename WHERE fieldid = '$value'"; $num_value=mysql_query ($query_value); $row_linkcat= mysql_fetch_array ($num_value); $row_num_links= mysql_num_rows ($num_value); //now let's make the keywods bold. To do that we will use preg_replace function. //EDIT parts of the lines below that have fields names like $row_linkcat[ 'field1' ] //This script assumes you are searching only 3 fields. If you are searching more fileds make sure that add appropriate line.   $titlehigh = preg_replace ( "'($var)'si" , "<b>\\1</b>" , $row_linkcat[ 'field1' ] );   $linkhigh = preg_replace ( "'($var)'si" , "<b>\\1</b>" , $row_linkcat[ 'field2' ] );   $linkdesc = preg_replace ( "'($var)'si" , "<b>\\1</b>" , $row_linkcat[ 'field3' ] ); foreach($trimmed_array as $trimm){     if($trimm != 'b' ){ //IF you added more fields to search make sure to add them below as well.         $titlehigh = preg_replace( "'($trimm)'si" ,  "<b>\\1</b>" , $titlehigh);         $linkhigh = preg_replace( "'($trimm)'si" , "<b>\\1</b>" , $linkhigh);         $linkdesc = preg_replace( "'($trimm)'si" ,  "<b>\\1</b>" , $linkdesc);     } //end highlight ?> <p> <?php echo $titlehigh; ?><br> <?php echo $linkhigh; ?><br> <?php echo $linkhigh; ?> </p> <?php }  //end foreach $trimmed_array   if($row_num_links_main > $limit){   // next we need to do the links to other search result pages       if ($s>=1) { // do not display previous link if 's' is '0'         $prevs=($s-$limit);         echo "<div align='left'><a href='$PHP_SELF?s=$prevs&q=$var&catid=$catid'>Previous " .$limit. "</a></div>";       }     // check to see if last page     $slimit =$s+$limit;       if (!($slimit >= $row_num_links_main) && $row_num_links_main!=1) {     // not last page so display next link           $n=$s+$limit;           echo "<div align='right'><a href='$PHP_SELF?s=$n&q=$var&catid=$catid'>Next " .$limit. "</a></div>";         }     } }  //end foreach $newarr ?> [/code] edit: the part in my first post is the only thing i have edited..
  4. [quote]    $query = "SELECT * FROM test WHERE id LIKE \"%$trimm%\" OR test1 LIKE  \"%$trimm%\" OR test2 LIKE \"%$trimm%\" ORDER BY id  DESC" ;     // Execute the query to  get number of rows that contain search kewords     $numresults=mysql_query ($query);     $row_num_links_main =mysql_num_rows ($numresults);[/quote] what am i doing wrong here? any help is welcome >_< edit: i can paste the whole part if thats needed. just thought that since this is the part where it goes wrong , i could better just post that instead.
×
×
  • 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.