galgeon
05-23-2007, 09:16 PM
Need some help to understand why id is empty.
Search page displays search criteria.
$frow['id'] is empty need help on this....
$frow['title'] does display the title
$frow['tagline'] also displays data
$frow['id'].'">more' also displays but is empty
I posted my script below.
<?php
// login stuff above
$limit = 15;
$var = @$_GET['q'] ;
$trimmed = trim($var);
$trimmed_array = explode(" ",$trimmed);
if ($trimmed == "") {
$resultmsg = "<p>Search Error</p><p>Please enter a search...</p>" ;
}
if (!isset($var)){
$resultmsg = "<p>Search Error</p><p>We don't seem to have a search parameter! </p>" ;
}
foreach ($trimmed_array as $trimm){
$query = "select * from cmsarticles WHERE id LIKE \"%$trimm%\" OR title LIKE \"%$trimm%\" OR tagline LIKE \"%$trimm%\" OR thearticle LIKE \"%$trimm%\" ORDER BY id DESC" ;
$numresults=mysql_query ($query);
$row_num_links_main =mysql_num_rows ($numresults);
$s=0;
if (isset($_GET['s'])) $s = (int)$_GET['s'];
$query .= " LIMIT $s,$limit" ;
do{
$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>" ;
}
$tmparr = array_unique($adid_array);
$i=0;
foreach ($tmparr as $v) {
$newarr[$i] = $v;
$i++;
}
?>
<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>
<p>
<?php
if( isset ($resultmsg)){
echo $resultmsg;
exit();
}else{
echo "Search results for: " . $var;
}
foreach($newarr as $value){
$query_value = "SELECT * FROM cmsarticles WHERE id = '$value'";
$num_value=mysql_query ($query_value);
$row_linkcat= mysql_fetch_array ($num_value);
$row_num_links= mysql_num_rows ($num_value);
$titlehigh = preg_replace ( "'($var)'si" , "<b>\\1</b>" , $row_linkcat[ 'id' ] );
$linkhigh = preg_replace ( "'($var)'si" , "<b>\\1</b>" , $row_linkcat[ 'title' ] );
$linkdesc = preg_replace ( "'($var)'si" , "<b>\\1</b>" , $row_linkcat[ 'tagline' ] );
$linklow = preg_replace ( "'($var)'si" , "<b>\\1</b>" , $row_linkcat[ 'thearticle' ] );
foreach($trimmed_array as $trimm){
if($trimm != 'b' ){
$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);
$linklow = preg_replace( "'($trimm)'si" , "<b>\\1</b>" , $linklow);
}
?>
</p>
<p>
<?php
//2ND SCRIPT
$finalresult = mysql_query($query) or die('Query failed: ' . mysql_error());
$numofrows = mysql_num_rows($finalresult);
for($i = 0; $i < $numofrows; $i++) {
$frow = mysql_fetch_array($finalresult); //get a row from our result set
if($i % 2) { //this means if there is a remainder
echo "<TR bgcolor=\"#F0F0F0\">\n";
} else { //if there isn't a remainder we will do the else
echo "<TR bgcolor=\"white\">\n";
}
echo '<p> <a href="view.php?id='.$frow['id'].'">';
echo $frow['title'];
echo "</a> </p></TR>\n";
echo $frow['tagline'];
echo ' <a href="view.php?id='.$frow['id'].'">more';
}
echo "</TABLE>\n";
?>
This search page does find and display data from DB - just no id in the links
Any guidence would be much appreciated...
Search page displays search criteria.
$frow['id'] is empty need help on this....
$frow['title'] does display the title
$frow['tagline'] also displays data
$frow['id'].'">more' also displays but is empty
I posted my script below.
<?php
// login stuff above
$limit = 15;
$var = @$_GET['q'] ;
$trimmed = trim($var);
$trimmed_array = explode(" ",$trimmed);
if ($trimmed == "") {
$resultmsg = "<p>Search Error</p><p>Please enter a search...</p>" ;
}
if (!isset($var)){
$resultmsg = "<p>Search Error</p><p>We don't seem to have a search parameter! </p>" ;
}
foreach ($trimmed_array as $trimm){
$query = "select * from cmsarticles WHERE id LIKE \"%$trimm%\" OR title LIKE \"%$trimm%\" OR tagline LIKE \"%$trimm%\" OR thearticle LIKE \"%$trimm%\" ORDER BY id DESC" ;
$numresults=mysql_query ($query);
$row_num_links_main =mysql_num_rows ($numresults);
$s=0;
if (isset($_GET['s'])) $s = (int)$_GET['s'];
$query .= " LIMIT $s,$limit" ;
do{
$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>" ;
}
$tmparr = array_unique($adid_array);
$i=0;
foreach ($tmparr as $v) {
$newarr[$i] = $v;
$i++;
}
?>
<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>
<p>
<?php
if( isset ($resultmsg)){
echo $resultmsg;
exit();
}else{
echo "Search results for: " . $var;
}
foreach($newarr as $value){
$query_value = "SELECT * FROM cmsarticles WHERE id = '$value'";
$num_value=mysql_query ($query_value);
$row_linkcat= mysql_fetch_array ($num_value);
$row_num_links= mysql_num_rows ($num_value);
$titlehigh = preg_replace ( "'($var)'si" , "<b>\\1</b>" , $row_linkcat[ 'id' ] );
$linkhigh = preg_replace ( "'($var)'si" , "<b>\\1</b>" , $row_linkcat[ 'title' ] );
$linkdesc = preg_replace ( "'($var)'si" , "<b>\\1</b>" , $row_linkcat[ 'tagline' ] );
$linklow = preg_replace ( "'($var)'si" , "<b>\\1</b>" , $row_linkcat[ 'thearticle' ] );
foreach($trimmed_array as $trimm){
if($trimm != 'b' ){
$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);
$linklow = preg_replace( "'($trimm)'si" , "<b>\\1</b>" , $linklow);
}
?>
</p>
<p>
<?php
//2ND SCRIPT
$finalresult = mysql_query($query) or die('Query failed: ' . mysql_error());
$numofrows = mysql_num_rows($finalresult);
for($i = 0; $i < $numofrows; $i++) {
$frow = mysql_fetch_array($finalresult); //get a row from our result set
if($i % 2) { //this means if there is a remainder
echo "<TR bgcolor=\"#F0F0F0\">\n";
} else { //if there isn't a remainder we will do the else
echo "<TR bgcolor=\"white\">\n";
}
echo '<p> <a href="view.php?id='.$frow['id'].'">';
echo $frow['title'];
echo "</a> </p></TR>\n";
echo $frow['tagline'];
echo ' <a href="view.php?id='.$frow['id'].'">more';
}
echo "</TABLE>\n";
?>
This search page does find and display data from DB - just no id in the links
Any guidence would be much appreciated...