Venkatesh Posted November 11, 2006 Share Posted November 11, 2006 CODE:<html><head><title>OurHelp Hyd Search</title><meta name="author" content="Steve R, http://www.ourhelp.in/"></head><!-- © http://www.ourhelp.in/ --><body><form name="form" action="search.php" method="get"> <input type="text" name="q" /> <input type="submit" name="Submit" value="Search" /></form><?php // Get the search variable from URL $var = @$_GET['q'] ; $trimmed = trim($var) //trim whitespace from the stored variable// rows to return$pagenum=10; // check for an empty string and display a message.if ($trimmed == "") { echo "<p>Please enter a search...</p>"; exit; }// check for a search parameterif (!isset($var)) { echo "<p>We dont seem to have a search parameter!</p>"; exit; }//connect to your database ** EDIT REQUIRED HERE **mysql_connect("localhost","vasudhai_vss","vsspl"); //(host, username, password)//specify database ** EDIT REQUIRED HERE **mysql_select_db("vasudhai_Web") or die("Unable to select database"); //select which database we're using// Build SQL Query $query = "select * from Hyd_Contacts where Category like \"%$trimmed%\" or Name like \"%$trimmed%\" or Area like \"%$trimmed%\" or Contact like \"%$trimmed%\" or Mail like \"%$trimmed%\" or Desc like \"%$trimmed%\"; // order by 1st_field"; // EDIT HERE and specify your table and field names for the SQL query $numresults=mysql_query($query); $numrows=mysql_num_rows($numresults);// If we have no results, offer a google search as an alternativeif ($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 .= " pagenum $s,$pagenum"; $result = mysql_query($query) or die("Couldn't execute query");// display what the person searched forecho "<p>You searched for: "" . $var . ""</p>";// begin to show results setecho "Results";$count = 1 + $s ;// now you can display the results returned while ($row= mysql_fetch_array($result)) { $title = $row["1st_field"]; echo "$count.) $title" ; $count++ ; }$currPage = (($s/$pagenum) + 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-$pagenum); print " <a href=\"$PHP_SELF?s=$prevs&q=$var\"><< Prev 10</a>  "; }// calculate number of pages needing links $pages=intval($numrows/$pagenum);// $pages now contains int of pages needed unless there is a remainder from division if ($numrows%$pagenum) { // has remainder so add one page $pages++; }// check to see if last page if (!((($s+$pagenum)/$pagenum)==$pages) && $pages!=1) { // not last page so give NEXT link $news=$s+$pagenum; echo " <a href=\"$PHP_SELF?s=$news&q=$var\">Next 10 >></a>"; }$a = $s + ($pagenum) ; if ($a > $numrows) { $a = $numrows ; } $b = $s + 1 ; echo "<p>Showing results $b to $a of $numrows</p>"; ?><!-- © http://www.ourhelp.in/ --></body></html> Link to comment https://forums.phpfreaks.com/topic/26920-parse-error-syntax-error-unexpected-t_variable-in-hvsssearchphp-on-line-22/ Share on other sites More sharing options...
AndyB Posted November 11, 2006 Share Posted November 11, 2006 When you have an error with a line number, [b]always[/b] identify that line in any code you post.You cannot use Desc as a field name since DESC is a reserved word in MySQL. I'd recommend changing the field name in your database table, but as a work-around you could enclose desc in backticks - `desc` - in the query. Link to comment https://forums.phpfreaks.com/topic/26920-parse-error-syntax-error-unexpected-t_variable-in-hvsssearchphp-on-line-22/#findComment-123117 Share on other sites More sharing options...
Venkatesh Posted November 11, 2006 Author Share Posted November 11, 2006 <html><head><title>OurHelp Hyd Search</title><meta name="author" content="Steve R, http://www.ourhelp.in/"></head><!-- © http://www.ourhelp.in/ --><body><form name="form" action="search.php" method="get"> <input type="text" name="q" /> <input type="submit" name="Submit" value="Search" /></form><?php // Get the search variable from URL $var = @$_GET['q'] ; $trimmed = trim($var) //trim whitespace from the stored variable// rows to return[font=Verdana][b]$pagenum=10; [/b] [/font] // this is line 22// check for an empty string and display a message.if ($trimmed == "") { echo "<p>Please enter a search...</p>"; exit; }// check for a search parameterif (!isset($var)) { echo "<p>We dont seem to have a search parameter!</p>"; exit; }//connect to your database ** EDIT REQUIRED HERE **mysql_connect("localhost","vasudhai_vss","vsspl"); //(host, username, password)//specify database ** EDIT REQUIRED HERE **mysql_select_db("vasudhai_Web") or die("Unable to select database"); //select which database we're using// Build SQL Query $query = "select * from Hyd_Contacts where Category like \"%$trimmed%\" or Name like \"%$trimmed%\" or Area like \"%$trimmed%\" or Contact like \"%$trimmed%\" or Mail like \"%$trimmed%\" or `Desc` like \"%$trimmed%\"; // order by 1st_field"; // EDIT HERE and specify your table and field names for the SQL query $numresults=mysql_query($query); $numrows=mysql_num_rows($numresults);// If we have no results, offer a google search as an alternativeif ($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 .= " pagenum $s,$pagenum"; $result = mysql_query($query) or die("Couldn't execute query");// display what the person searched forecho "<p>You searched for: "" . $var . ""</p>";// begin to show results setecho "Results";$count = 1 + $s ;// now you can display the results returned while ($row= mysql_fetch_array($result)) { $title = $row["1st_field"]; echo "$count.) $title" ; $count++ ; }$currPage = (($s/$pagenum) + 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-$pagenum); print " <a href=\"$PHP_SELF?s=$prevs&q=$var\"><< Prev 10</a>  "; }// calculate number of pages needing links $pages=intval($numrows/$pagenum);// $pages now contains int of pages needed unless there is a remainder from division if ($numrows%$pagenum) { // has remainder so add one page $pages++; }// check to see if last page if (!((($s+$pagenum)/$pagenum)==$pages) && $pages!=1) { // not last page so give NEXT link $news=$s+$pagenum; echo " <a href=\"$PHP_SELF?s=$news&q=$var\">Next 10 >></a>"; }$a = $s + ($pagenum) ; if ($a > $numrows) { $a = $numrows ; } $b = $s + 1 ; echo "<p>Showing results $b to $a of $numrows</p>"; ?><!-- © http://www.ourhelp.in/ --></body></html> Link to comment https://forums.phpfreaks.com/topic/26920-parse-error-syntax-error-unexpected-t_variable-in-hvsssearchphp-on-line-22/#findComment-123121 Share on other sites More sharing options...
haaglin Posted November 11, 2006 Share Posted November 11, 2006 Take a look at the line above " $trimmed = trim($var)" add a ; at the end of that and it should work. Link to comment https://forums.phpfreaks.com/topic/26920-parse-error-syntax-error-unexpected-t_variable-in-hvsssearchphp-on-line-22/#findComment-123123 Share on other sites More sharing options...
Venkatesh Posted November 11, 2006 Author Share Posted November 11, 2006 Thank you its working but one more problem.Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/vasudhai/public_html/search.php on line 35[code]<?php // Get the search variable from URL $var = @$_GET['q'] ; $trimmed = trim($var); //trim whitespace from the stored variable// rows to return$pagenum=10; // check for an empty string and display a message.if ($trimmed == "") { echo "<p>Please enter a search...</p>"; exit; }// check for a search parameterif (!isset($var)) { echo "<p>We dont seem to have a search parameter!</p>"; exit; }//connect to your database ** EDIT REQUIRED HERE **mysql_connect("localhost","vasudhai_vss","vsspl"); //(host, username, password)//specify database ** EDIT REQUIRED HERE **mysql_select_db("vasudhai_Web") or die("Unable to select database"); //select which database we're using// Build SQL Query $query = "select * from Hyd_Contacts where Category like \"%$trimmed%\" or Name like \"%$trimmed%\" or Area like \"%$trimmed%\" or Contact like \"%$trimmed%\" or Mail like \"%$trimmed%\" or `Desc` like \"%$trimmed%\"; // order by 1st_field"; // EDIT HERE and specify your table and field names for the SQL query $numresults=mysql_query($query); [b]$numrows=mysql_num_rows($numresults);[/b] //Line 35// If we have no results, offer a google search as an alternativeif ($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 .= " pagenum $s,$pagenum"; $result = mysql_query($query) or die("Couldn't execute query");// display what the person searched forecho "<p>You searched for: "" . $var . ""</p>";// begin to show results setecho "Results";$count = 1 + $s ;// now you can display the results returned while ($row= mysql_fetch_array($result)) { $title = $row["1st_field"]; echo "$count.) $title" ; $count++ ; }$currPage = (($s/$pagenum) + 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-$pagenum); print " <a href=\"$PHP_SELF?s=$prevs&q=$var\"><< Prev 10</a>  "; }// calculate number of pages needing links $pages=intval($numrows/$pagenum);// $pages now contains int of pages needed unless there is a remainder from division if ($numrows%$pagenum) { // has remainder so add one page $pages++; }// check to see if last page if (!((($s+$pagenum)/$pagenum)==$pages) && $pages!=1) { // not last page so give NEXT link $news=$s+$pagenum; echo " <a href=\"$PHP_SELF?s=$news&q=$var\">Next 10 >></a>"; }$a = $s + ($pagenum) ; if ($a > $numrows) { $a = $numrows ; } $b = $s + 1 ; echo "<p>Showing results $b to $a of $numrows</p>"; ?>[/code] Link to comment https://forums.phpfreaks.com/topic/26920-parse-error-syntax-error-unexpected-t_variable-in-hvsssearchphp-on-line-22/#findComment-123124 Share on other sites More sharing options...
haaglin Posted November 11, 2006 Share Posted November 11, 2006 If the query returns no result, you get that error. add @ in front of mysql_num_rows and it will not give you an error. "$numrows=@mysql_num_rows($numresults);" Link to comment https://forums.phpfreaks.com/topic/26920-parse-error-syntax-error-unexpected-t_variable-in-hvsssearchphp-on-line-22/#findComment-123128 Share on other sites More sharing options...
Venkatesh Posted November 11, 2006 Author Share Posted November 11, 2006 Parse error: syntax error, unexpected '>' in /home/vasudhai/public_html/search.php on line 42[code]<?php // Get the search variable from URL $var = @$_GET['q'] ; $trimmed = trim($var); //trim whitespace from the stored variable// rows to return$pagenum=10; // check for an empty string and display a message.if ($trimmed == "") { echo "<p>Please enter a search...</p>"; exit; }// check for a search parameterif (!isset($var)) { echo "<p>We dont seem to have a search parameter!</p>"; exit; }//connect to your database ** EDIT REQUIRED HERE **mysql_connect("localhost","vasudhai_vss","vsspl"); //(host, username, password)//specify database ** EDIT REQUIRED HERE **mysql_select_db("vasudhai_Web") or die("Unable to select database"); //select which database // we're using <<< what the heck is this doing here?// Build SQL Query $query = "select * from Hyd_Contacts where Category like \"%$trimmed%\"; $numresults=mysql_query($query); $numrows=@mysql_num_rows($numresults);// If we have no results, offer a google search as an alternative[b]if ($numrows == 0)[/b] //this is line 42 { 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 .= " pagenum $s,$pagenum"; $result = mysql_query($query) or die("Couldn't execute query");// display what the person searched forecho "<p>You searched for: "" . $var . ""</p>";// begin to show results setecho "Results";$count = 1 + $s ;// now you can display the results returned while ($row= mysql_fetch_array($result)) { $title = $row["1st_field"]; echo "$count.) $title" ; $count++ ; }$currPage = (($s/$pagenum) + 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-$pagenum); print " <a href=\"$PHP_SELF?s=$prevs&q=$var\"><< Prev 10</a>  "; }// calculate number of pages needing links $pages=intval($numrows/$pagenum);// $pages now contains int of pages needed unless there is a remainder from division if ($numrows%$pagenum) { // has remainder so add one page $pages++; }// check to see if last page if (!((($s+$pagenum)/$pagenum)==$pages) && $pages!=1) { // not last page so give NEXT link $news=$s+$pagenum; echo " <a href=\"$PHP_SELF?s=$news&q=$var\">Next 10 >></a>"; }$a = $s + ($pagenum) ; if ($a > $numrows) { $a = $numrows ; } $b = $s + 1 ; echo "<p>Showing results $b to $a of $numrows</p>"; ?>[/code]Please check all the code once, i am new to php & MySQL.Very much thankful to you...Mod edit - [b]PLEASE[/b] use the code tags to display code here. Link to comment https://forums.phpfreaks.com/topic/26920-parse-error-syntax-error-unexpected-t_variable-in-hvsssearchphp-on-line-22/#findComment-123131 Share on other sites More sharing options...
Adika Posted November 11, 2006 Share Posted November 11, 2006 Here is the good solution with my comments in the brackets ( ). You made a few mistakes.The probram should work now. If not, I am here.[code]<?php // Get the search variable from URL $var = @$_GET['q'] ; $trimmed = trim($var); //trim whitespace from the stored variable// rows to return$pagenum=10;// check for an empty string and display a message.if ($trimmed == "") { echo "<p>Please enter a search...</p>"; exit; }// check for a search parameterif (!isset($var)) { echo "<p>We dont seem to have a search parameter!</p>"; exit; }//connect to your database ** EDIT REQUIRED HERE **mysql_connect("localhost","vasudhai_vss","vsspl"); //(host, username, password)//specify database ** EDIT REQUIRED HERE **mysql_select_db("vasudhai_Web") or die("Unable to select database"); //select which database// we're using <<< what the heck is this doing here?// Build SQL Query$query = "select * from Hyd_Contacts where Category like \"%$trimmed%\""; // (HERE, YOU NEED one more " between " and ; ) $numresults=mysql_query($query); $numrows=@mysql_num_rows($numresults);// If we have no results, offer a google search as an alternativeif ($numrows == 0) //this is line 42 (ON THIS LINE YOU CAN'T USE [b] because it is a HTML tag and you are starting to use if.) { 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 .= " pagenum $s,$pagenum"; $result = mysql_query($query) or die("Couldn't execute query");// display what the person searched forecho "<p>You searched for: "" . $var . ""</p>";// begin to show results setecho "Results";$count = 1 + $s ;// now you can display the results returned while ($row= mysql_fetch_array($result)) { $title = $row["1st_field"]; echo $count.") $title" ; // (HERE, YOU need to erase the " before $count and to add that same " before ). ) $count++ ; }$currPage = (($s/$pagenum) + 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-$pagenum); print " <a href=\"".$PHP_SELF?s=$prevs&q=$var."\"><< Prev 10</a>  "; }// calculate number of pages needing links $pages=intval($numrows/$pagenum);// $pages now contains int of pages needed unless there is a remainder from division if ($numrows%$pagenum) { // has remainder so add one page $pages++; }// check to see if last page if (!((($s+$pagenum)/$pagenum)==$pages) && $pages!=1) { // not last page so give NEXT link $news=$s+$pagenum; echo " <a href=\"".$PHP_SELF?s=$news&q=$var."\">Next 10 >></a>"; // (A VARIABLE MUST START WITH ". and ends with ." to work correctly. The same problem is 20 lines above. ) }$a = $s + ($pagenum) ; if ($a > $numrows) { $a = $numrows ; } $b = $s + 1 ; echo "<p>Showing results $b to $a of $numrows</p>";?>[/code] Link to comment https://forums.phpfreaks.com/topic/26920-parse-error-syntax-error-unexpected-t_variable-in-hvsssearchphp-on-line-22/#findComment-123209 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.