Member Avatar for Member #639374

Hi,

I am getting 3 warning messages below:

Warning: mysql_free_result() expects parameter 1 to be resource, null given in J:\xampp\htdocs\propertypages\resultsForSale.php on line 660

Warning: mysql_free_result() expects parameter 1 to be resource, null given in J:\xampp\htdocs\propertypages\resultsForSale.php on line 662

Warning: mysql_free_result() expects parameter 1 to be resource, null given in J:\xampp\htdocs\propertypages\resultsForSale.php on line 664

My search / results page was working but not getting specific enough results, so i put in a php switch case to check if the varibles passed were the default values from the 'please select an option from the menu´field. This work perfectly and now gets all the correct results i want.

$varloc2_RsSearchForSale2 = "-1";
if (isset($_POST['location'])) {
  $varloc2_RsSearchForSale2 = $_POST['location'];
}
$varprice2_RsSearchForSale2 = "-1";
if (isset($_POST['price'])) {
  $varprice2_RsSearchForSale2 = $_POST['price'];
}
$vartype2_RsSearchForSale2 = "-1";
if (isset($_POST['type'])) {
  $vartype2_RsSearchForSale2 = $_POST['type'];
}
$varbed2_RsSearchForSale2 = "-1";
if (isset($_POST['beds'])) {
  $varbed2_RsSearchForSale2 = $_POST['beds'];
}
switch (true) {
case ($varloc2_RsSearchForSale2 == 'def'):
case ($varprice2_RsSearchForSale2 == 'def'):
case ($vartype2_RsSearchForSale2 == 'def'):
case ($varbed2_RsSearchForSale2 == 'def'):
mysql_select_db

NOW i have the problem with the warning message AND my repeating region is not working, all results are found and the first page displays the 10 rows but when i go to the next page no rows are displayed even though the totalRecords are showing that there are some.
I am quite new to php and thought i was doing so well but cannot get my head around what i´ve done wrong, all help appreciated. The code for the page is entered below, the error refer to the last 3 lines but i have put all the page there as i´m not sure what part on the code is casuing my problem with the next page not showing results.
Look forward to hearing from you.

<?php require_once('Connections/propertypages.php'); ?>
<?php
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") 
{
  $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;

  $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);

  switch ($theType) {
    case "text":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;    
    case "long":
    case "int":
      $theValue = ($theValue != "") ? intval($theValue) : "NULL";
      break;
    case "double":
      $theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";
      break;
    case "date":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;
    case "defined":
      $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
      break;
  }
  return $theValue;
}
}

$currentPage = $_SERVER["PHP_SELF"];

$maxRows_RSsearchforsale = 10;
$pageNum_RSsearchforsale = 0;
if (isset($_GET['pageNum_RSsearchforsale'])) {
  $pageNum_RSsearchforsale = $_GET['pageNum_RSsearchforsale'];
}
$startRow_RSsearchforsale = $pageNum_RSsearchforsale * $maxRows_RSsearchforsale;

$varloc_RSsearchforsale = "-1";
if (isset($_POST['location'])) {
  $varloc_RSsearchforsale = $_POST['location'];
}
$vartype_RSsearchforsale = "-1";
if (isset($_POST['type'])) {
  $vartype_RSsearchforsale = $_POST['type'];
}
$varprice_RSsearchforsale = "-1";
if (isset($_POST['price'])) {
  $varprice_RSsearchforsale = $_POST['price'];
}
$varbed_RSsearchforsale = "-1";
if (isset($_POST['beds'])) {
  $varbed_RSsearchforsale = $_POST['beds'];
}
mysql_select_db($database_propertypages, $propertypages);
$query_RSsearchforsale = sprintf("SELECT DISTINCT trueprice,`desc`, `propid`, `bathrooms`, `photo1`, locationtable.loc, typetable.style, bedtable.`number` FROM detailstable JOIN locationtable ON detailstable.location=locationtable.locid JOIN typetable ON detailstable.type=typetable.typeid JOIN pricetable ON detailstable.price=pricetable.priceid JOIN bedtable ON detailstable.beds=bedtable.bedid WHERE location=%s AND price=%s AND type=%s AND beds=%s ORDER BY detailstable.trueprice ASC", GetSQLValueString($varloc_RSsearchforsale, "text"),GetSQLValueString($varprice_RSsearchforsale, "text"),GetSQLValueString($vartype_RSsearchforsale, "text"),GetSQLValueString($varbed_RSsearchforsale, "text"));
$query_limit_RSsearchforsale = sprintf("%s LIMIT %d, %d", $query_RSsearchforsale, $startRow_RSsearchforsale, $maxRows_RSsearchforsale);
$RSsearchforsale = mysql_query($query_limit_RSsearchforsale, $propertypages) or die(mysql_error());
$row_RSsearchforsale = mysql_fetch_assoc($RSsearchforsale);

if (isset($_GET['totalRows_RSsearchforsale'])) {
  $totalRows_RSsearchforsale = $_GET['totalRows_RSsearchforsale'];
} else {
  $all_RSsearchforsale = mysql_query($query_RSsearchforsale);
  $totalRows_RSsearchforsale = mysql_num_rows($all_RSsearchforsale);
}
$totalPages_RSsearchforsale = ceil($totalRows_RSsearchforsale/$maxRows_RSsearchforsale)-1;



$maxRows_RsSearchForSale2 = 10;
$pageNum_RsSearchForSale2 = 0;
if (isset($_GET['pageNum_RsSearchForSale2'])) {
  $pageNum_RsSearchForSale2 = $_GET['pageNum_RsSearchForSale2'];
}
$startRow_RsSearchForSale2 = $pageNum_RsSearchForSale2 * $maxRows_RsSearchForSale2;


$varloc2_RsSearchForSale2 = "-1";
if (isset($_POST['location'])) {
  $varloc2_RsSearchForSale2 = $_POST['location'];
}
$varprice2_RsSearchForSale2 = "-1";
if (isset($_POST['price'])) {
  $varprice2_RsSearchForSale2 = $_POST['price'];
}
$vartype2_RsSearchForSale2 = "-1";
if (isset($_POST['type'])) {
  $vartype2_RsSearchForSale2 = $_POST['type'];
}
$varbed2_RsSearchForSale2 = "-1";
if (isset($_POST['beds'])) {
  $varbed2_RsSearchForSale2 = $_POST['beds'];
}
switch (true) {
case ($varloc2_RsSearchForSale2 == 'def'):
case ($varprice2_RsSearchForSale2 == 'def'):
case ($vartype2_RsSearchForSale2 == 'def'):
case ($varbed2_RsSearchForSale2 == 'def'):
mysql_select_db($database_propertypages, $propertypages);
$query_RsSearchForSale2 = sprintf("SELECT DISTINCT trueprice,`desc`, `propid`, `bathrooms`, `photo1`, locationtable.loc, typetable.style, bedtable.`number` FROM detailstable JOIN locationtable ON detailstable.location=locationtable.locid JOIN typetable ON detailstable.type=typetable.typeid JOIN pricetable ON detailstable.price=pricetable.priceid JOIN bedtable ON detailstable.beds=bedtable.bedid WHERE (location=%s AND price=%s AND type=%s) OR (location=%s AND price=%s AND beds=%s) OR (location=%s AND type=%s AND beds=%s) OR (price=%s AND type=%s AND beds=%s) ORDER BY detailstable.trueprice ASC", GetSQLValueString($varloc2_RsSearchForSale2, "text"),GetSQLValueString($varprice2_RsSearchForSale2, "text"),GetSQLValueString($vartype2_RsSearchForSale2, "text"),GetSQLValueString($varloc2_RsSearchForSale2, "text"),GetSQLValueString($varprice2_RsSearchForSale2, "text"),GetSQLValueString($varbed2_RsSearchForSale2, "text"),GetSQLValueString($varloc2_RsSearchForSale2, "text"),GetSQLValueString($vartype2_RsSearchForSale2, "text"),GetSQLValueString($varbed2_RsSearchForSale2, "text"),GetSQLValueString($varprice2_RsSearchForSale2, "text"),GetSQLValueString($vartype2_RsSearchForSale2, "text"),GetSQLValueString($varbed2_RsSearchForSale2, "text"));
$RsSearchForSale2 = mysql_query($query_RsSearchForSale2, $propertypages) or die(mysql_error());
$row_RsSearchForSale2 = mysql_fetch_assoc($RsSearchForSale2);
$totalRows_RsSearchForSale2 = mysql_num_rows($RsSearchForSale2);
}
$maxRows_RsSearchForSale3 = 10;
$pageNum_RsSearchForSale3 = 0;
if (isset($_GET['pageNum_RsSearchForSale3'])) {
  $pageNum_RsSearchForSale3 = $_GET['pageNum_RsSearchForSale3'];
}
$startRow_RsSearchForSale3 = $pageNum_RsSearchForSale3 * $maxRows_RsSearchForSale3;



$varloc3_RsSearchForSale3 = "-1";
if (isset($_POST['location'])) {
  $varloc3_RsSearchForSale3 = $_POST['location'];
}
$varprice3_RsSearchForSale3 = "-1";
if (isset($_POST['price'])) {
  $varprice3_RsSearchForSale3 = $_POST['price'];
}
$vartype3_RsSearchForSale3 = "-1";
if (isset($_POST['type'])) {
  $vartype3_RsSearchForSale3 = $_POST['type'];
}
$varbed3_RsSearchForSale3 = "-1";
if (isset($_POST['beds'])) {
  $varbed3_RsSearchForSale3 = $_POST['beds'];
}

switch (true) {
case ($varloc3_RsSearchForSale3 == 'def' && $varprice3_RsSearchForSale3 == 'def'):
case ($varprice3_RsSearchForSale3 == 'def' && $vartype3_RsSearchForSale3 == 'def'):
case ($vartype3_RsSearchForSale3 == 'def' && $varbed3_RsSearchForSale3 == 'def' ):
case ($varbed3_RsSearchForSale3 == 'def' && $varloc3_RsSearchForSale3 == 'def'):
case ($varloc3_RsSearchForSale3 == 'def' && $vartype3_RsSearchForSale3 == 'def'):
case ($varprice3_RsSearchForSale3 == 'def' && $varbed3_RsSearchForSale3 == 'def'):
mysql_select_db($database_propertypages, $propertypages);
$query_RsSearchForSale3 = sprintf("SELECT DISTINCT trueprice,`desc`, `propid`, `bathrooms`, `photo1`, locationtable.loc, typetable.style, bedtable.`number` FROM detailstable JOIN locationtable ON detailstable.location=locationtable.locid JOIN typetable ON detailstable.type=typetable.typeid JOIN pricetable ON detailstable.price=pricetable.priceid JOIN bedtable ON detailstable.beds=bedtable.bedid WHERE (location=%s AND price=%s) OR (location=%s AND  type=%s) OR (location=%s AND beds=%s) OR ( type=%s AND beds=%s) OR (price=%s AND type=%s) OR (price=%s AND beds=%s) ORDER BY detailstable.trueprice ASC", GetSQLValueString($varloc3_RsSearchForSale3, "text"),GetSQLValueString($varprice3_RsSearchForSale3, "text"),GetSQLValueString($varloc3_RsSearchForSale3, "text"),GetSQLValueString($vartype3_RsSearchForSale3, "text"),GetSQLValueString($varloc3_RsSearchForSale3, "text"),GetSQLValueString($varbed3_RsSearchForSale3, "text"),GetSQLValueString($vartype3_RsSearchForSale3, "text"),GetSQLValueString($varbed3_RsSearchForSale3, "text"),GetSQLValueString($varprice3_RsSearchForSale3, "text"),GetSQLValueString($vartype3_RsSearchForSale3, "text"),GetSQLValueString($varprice3_RsSearchForSale3, "text"),GetSQLValueString($varbed3_RsSearchForSale3, "text"));
$RsSearchForSale3 = mysql_query($query_RsSearchForSale3, $propertypages) or die(mysql_error());
$row_RsSearchForSale3 = mysql_fetch_assoc($RsSearchForSale3);
$totalRows_RsSearchForSale3 = mysql_num_rows($RsSearchForSale3);
}
$maxRows_RsSearchForSale4 = 10;
$pageNum_RsSearchForSale4 = 0;
if (isset($_GET['pageNum_RsSearchForSale4'])) {
  $pageNum_RsSearchForSale4 = $_GET['pageNum_RsSearchForSale4'];
}
$startRow_RsSearchForSale4 = $pageNum_RsSearchForSale4 * $maxRows_RsSearchForSale4;



$varloc4_RsSearchForSale4 = "-1";
if (isset($_POST['location'])) {
  $varloc4_RsSearchForSale4 = $_POST['location'];
}
$varprice4_RsSearchForSale4 = "-1";
if (isset($_POST['price'])) {
  $varprice4_RsSearchForSale4 = $_POST['price'];
}
$vartype4_RsSearchForSale4 = "-1";
if (isset($_POST['type'])) {
  $vartype4_RsSearchForSale4 = $_POST['type'];
}
$varbed4_RsSearchForSale4 = "-1";
if (isset($_POST['beds'])) {
  $varbed4_RsSearchForSale4 = $_POST['beds'];
}
switch (true) { 
case ($varloc4_RsSearchForSale4 == 'def' && $vartype4_RsSearchForSale4 =='def' && $varprice4_RsSearchForSale4 == 'def'):
case ($varloc4_RsSearchForSale4 == 'def' && $varprice4_RsSearchForSale4 =='def' && $varbed4_RsSearchForSale4 == 'def'):
case ($varloc4_RsSearchForSale4 == 'def' && $varbed4_RsSearchForSale4 =='def' && $vartype4_RsSearchForSale4 == 'def'):
case ($varbed4_RsSearchForSale4 == 'def' && $vartype4_RsSearchForSale4 =='def' && $varprice4_RsSearchForSale4 == 'def'):
mysql_select_db($database_propertypages, $propertypages);
$query_RsSearchForSale4 = sprintf("SELECT DISTINCT trueprice,`desc`, `propid`, `bathrooms`, `photo1`, locationtable.loc, typetable.style, bedtable.`number` FROM detailstable JOIN locationtable ON detailstable.location=locationtable.locid JOIN typetable ON detailstable.type=typetable.typeid JOIN pricetable ON detailstable.price=pricetable.priceid JOIN bedtable ON detailstable.beds=bedtable.bedid WHERE location=%s OR price=%s OR type=%s OR beds=%s ORDER BY detailstable.trueprice ASC", GetSQLValueString($varloc4_RsSearchForSale4, "text"),GetSQLValueString($varprice4_RsSearchForSale4, "text"),GetSQLValueString($vartype4_RsSearchForSale4, "text"),GetSQLValueString($varbed4_RsSearchForSale4, "text"));
$RsSearchForSale4 = mysql_query($query_RsSearchForSale4, $propertypages) or die(mysql_error());
$row_RsSearchForSale4 = mysql_fetch_assoc($RsSearchForSale4);
$totalRows_RsSearchForSale4 = mysql_num_rows($RsSearchForSale4);
}
$queryString_RSsearchforsale = "";
if (!empty($_SERVER['QUERY_STRING'])) {
  $params = explode("&", $_SERVER['QUERY_STRING']);
  $newParams = array();
  foreach ($params as $param) {
    if (stristr($param, "pageNum_RSsearchforsale") == false && 
        stristr($param, "totalRows_RSsearchforsale") == false) {
      array_push($newParams, $param);
    }
  }
  if (count($newParams) != 0) {
    $queryString_RSsearchforsale = "&" . htmlentities(implode("&", $newParams));
  }
}
$queryString_RSsearchforsale = sprintf("&totalRows_RSsearchforsale=%d%s", $totalRows_RSsearchforsale, $queryString_RSsearchforsale);
?>
<p>&nbsp;</p>
  <div id="mainContent">
       <?php  if ($totalRows_RSsearchforsale > 0 )
{ // Show if recordset not empty ?>
      <p class="records">SEARCH RESULTS</p>
      <p class="records">Found <?php echo $totalRows_RSsearchforsale ?></p>    
      <p class="Propertiesright">Properties <?php echo ($startRow_RSsearchforsale + 1) ?> to <?php echo min($startRow_RSsearchforsale + $maxRows_RSsearchforsale, $totalRows_RSsearchforsale) ?></p>
      <p>&nbsp;</p>
    <p>&nbsp;</p>
 <?php do { ?>
          <div id="salesresults">
            <p><img src="PhotosResults/<?php echo $row_RSsearchforsale['photo1']; ?>" alt="Photo Property For Sale" class="imageleft" /><span class="pararightloc"><?php echo $row_RSsearchforsale['loc']; ?></span><span class="price"><?php echo $row_RSsearchforsale['trueprice']; ?> €</span></p>
            <div id="topborder">
              <p><span class="location"><?php echo $row_RSsearchforsale['style']; ?></span><span class="lineheight"><?php echo $row_RSsearchforsale['number']; ?> Beds</span> <span class="space"><?php echo $row_RSsearchforsale['bathrooms']; ?>Baths </span></p>
            </div>
            <p>&nbsp;</p>
            <p>Ref : <?php echo $row_RSsearchforsale['propid']; ?></p>
            <p>&nbsp;</p>
            <p><?php echo $row_RSsearchforsale['desc']; ?></p>
            <p>&nbsp;</p>
            <p>&nbsp;</p>
            <p><span class="space"><a href="detailsForSale.php?propid=<?php echo $row_RSsearchforsale['propid']; ?>" class="moreinfo">More Info</a></span>            </p>
            <p>&nbsp;</p>
          </div>
 <?php } while ($row_RSsearchforsale = mysql_fetch_assoc($RSsearchforsale)); ?><p>&nbsp;
                  <div id="navigate">
    <span class="records">Page Navigation</span>
    <table border="0" class="centralise">
      <tr>
            <td><?php if ($pageNum_RSsearchforsale > 0) { // Show if not first page ?>
                  <a href="<?php printf("%s?pageNum_RSsearchforsale=%d%s", $currentPage, 0, $queryString_RSsearchforsale); ?>">First</a>
                  <?php } // Show if not first page ?>          </td>
        <td><?php if ($pageNum_RSsearchforsale > 0) { // Show if not first page ?>
              <a href="<?php printf("%s?pageNum_RSsearchforsale=%d%s", $currentPage, max(0, $pageNum_RSsearchforsale - 1), $queryString_RSsearchforsale); ?>">Previous</a>
              <?php } // Show if not first page ?>          </td>
        <td><?php if ($pageNum_RSsearchforsale < $totalPages_RSsearchforsale) { // Show if not last page ?>
              <a href="<?php printf("%s?pageNum_RSsearchforsale=%d%s", $currentPage, min($totalPages_RSsearchforsale, $pageNum_RSsearchforsale + 1), $queryString_RSsearchforsale); ?>">Next</a>
              <?php } // Show if not last page ?>          </td>
        <td><?php if ($pageNum_RSsearchforsale < $totalPages_RSsearchforsale) { // Show if not last page ?>
              <a href="<?php printf("%s?pageNum_RSsearchforsale=%d%s", $currentPage, $totalPages_RSsearchforsale, $queryString_RSsearchforsale); ?>">Last</a>
              <?php } // Show if not last page ?>          </td>
      </tr>
    </table>
  </div> 
 <?php } elseif ($totalRows_RsSearchForSale2 > 0 ) { // Show if recordset not empty ?>
      <p class="records">SEARCH RESULTS</p>
      <p class="records">Found <?php echo $totalRows_RsSearchForSale2 ?></p>
           <p class="Propertiesright">Properties <?php echo ($startRow_RsSearchForSale2 + 1) ?> to <?php echo min($startRow_RsSearchForSale2 + $maxRows_RsSearchForSale2, $totalRows_RsSearchForSale2) ?></p>
      <p>&nbsp;</p>
    <p>&nbsp;</p>
    <?php do { ?>
          <div id="salesresults">
            <p><img src="PhotosResults/<?php echo $row_RsSearchForSale2['photo1']; ?>" alt="Photo Property For Sale" class="imageleft" /><span class="pararightloc"><?php echo $row_RsSearchForSale2['loc']; ?></span><span class="price"><?php echo $row_RsSearchForSale2['trueprice']; ?> €</span></p>
            <div id="topborder">
              <p><span class="location"><?php echo $row_RsSearchForSale2['style']; ?></span><span class="lineheight"><?php echo $row_RsSearchForSale2['number']; ?> Beds</span> <span class="space"><?php echo $row_RsSearchForSale2['bathrooms']; ?>Baths </span></p>
            </div>
            <p>&nbsp;</p>
            <p>Ref : <?php echo $row_RsSearchForSale2['propid']; ?></p>
            <p>&nbsp;</p>
            <p><?php echo $row_RsSearchForSale2['desc']; ?></p>
            <p>&nbsp;</p>
            <p>&nbsp;</p>
            <p><span class="space"><a href="detailsForSale.php?propid=<?php echo $row_RsSearchForSale2['propid']; ?>" class="moreinfo">More Info</a></span>            </p>
            <p>&nbsp;</p>
          </div>
         <?php } while ($row_RsSearchForSale2 = mysql_fetch_assoc($RsSearchForSale2)); ?><p>&nbsp;
                  <div id="navigate">
    <span class="records">Page Navigation</span>
    <table border="0" class="centralise">
      <tr>
            <td><?php if ($pageNum_RsSearchForSale2 > 0) { // Show if not first page ?>
                  <a href="<?php printf("%s?pageNum_RsSearchForSale2=%d%s", $currentPage, 0, $queryString_RsSearchForSale2); ?>">First</a>
                  <?php } // Show if not first page ?>          </td>
        <td><?php if ($pageNum_RsSearchForSale2 > 0) { // Show if not first page ?>
              <a href="<?php printf("%s?pageNum_RsSearchForSale2=%d%s", $currentPage, max(0, $pageNum_RsSearchForSale2 - 1), $queryString_RsSearchForSale2); ?>">Previous</a>
              <?php } // Show if not first page ?>          </td>
        <td><?php if ($pageNum_RsSearchForSale2 < $totalPages_RsSearchForSale2) { // Show if not last page ?>
              <a href="<?php printf("%s?pageNum_RsSearchForSale2=%d%s", $currentPage, min($totalPages_RsSearchForSale2, $pageNum_RsSearchForSale2 + 1), $queryString_RsSearchForSale2); ?>">Next</a>
              <?php } // Show if not last page ?>          </td>
        <td><?php if ($pageNum_RsSearchForSale2 < $totalPages_RsSearchForSale2) { // Show if not last page ?>
              <a href="<?php printf("%s?pageNum_RsSearchForSale2=%d%s", $currentPage, $totalPages_RsSearchForSale2, $queryString_RsSearchForSale2); ?>">Last</a>
              <?php } // Show if not last page ?>          </td>
      </tr>
    </table>
  </div>
    <?php } elseif ($totalRows_RsSearchForSale3 > 0 )  { // Show if recordset not empty ?>
      <p class="records">SEARCH RESULTS</p>
      <p class="records">Found <?php echo $totalRows_RsSearchForSale3 ?></p>      
      <p class="Propertiesright">Properties <?php echo ($startRow_RsSearchForSale3 + 1) ?> to <?php echo min($startRow_RsSearchForSale3 + $maxRows_RsSearchForSale3, $totalRows_RsSearchForSale3) ?></p>
      <p>&nbsp;</p>
    <p>&nbsp;</p>
    <?php do { ?>
          <div id="salesresults">
            <p><img src="PhotosResults/<?php echo $row_RsSearchForSale3['photo1']; ?>" alt="Photo Property For Sale" class="imageleft" /><span class="pararightloc"><?php echo $row_RsSearchForSale3['loc']; ?></span><span class="price"><?php echo $row_RsSearchForSale3['trueprice']; ?> €</span></p>
            <div id="topborder">
              <p><span class="location"><?php echo $row_RsSearchForSale3['style']; ?></span><span class="lineheight"><?php echo $row_RsSearchForSale3['number']; ?> Beds</span> <span class="space"><?php echo $row_RsSearchForSale3['bathrooms']; ?>Baths </span></p>
            </div>
            <p>&nbsp;</p>
            <p>Ref : <?php echo $row_RsSearchForSale3['propid']; ?></p>
            <p>&nbsp;</p>
            <p><?php echo $row_RsSearchForSale3['desc']; ?></p>
            <p>&nbsp;</p>
            <p>&nbsp;</p>
            <p><span class="space"><a href="detailsForSale.php?propid=<?php echo $row_RsSearchForSale3['propid']; ?>" class="moreinfo">More Info</a></span>            </p>
            <p>&nbsp;</p>
          </div>
  <?php } while ($row_RsSearchForSale3 = mysql_fetch_assoc($RsSearchForSale3)); ?><p>&nbsp;
            <div id="navigate">
    <span class="records">Page Navigation</span>
    <table border="0" class="centralise">
      <tr>
            <td><?php if ($pageNum_RsSearchForSale3 > 0) { // Show if not first page ?>
                  <a href="<?php printf("%s?pageNum_RsSearchForSale3=%d%s", $currentPage, 0, $queryString_RsSearchForSale3); ?>">First</a>
          <?php } // Show if not first page ?>          </td>
        <td><?php if ($pageNum_RsSearchForSale3 > 0) { // Show if not first page ?>
              <a href="<?php printf("%s?pageNum_RsSearchForSale3=%d%s", $currentPage, max(0, $pageNum_RsSearchForSale3 - 1), $queryString_RsSearchForSale3); ?>">Previous</a>
          <?php } // Show if not first page ?>          </td>
        <td><?php if ($pageNum_RsSearchForSale3 < $totalPages_RsSearchForSale3) { // Show if not last page ?>
              <a href="<?php printf("%s?pageNum_RsSearchForSale3=%d%s", $currentPage, min($totalPages_RsSearchForSale3, $pageNum_RsSearchForSale3 + 1), $queryString_RsSearchForSale3); ?>">Next</a>
          <?php } // Show if not last page ?>          </td>
        <td><?php if ($pageNum_RsSearchForSale3 < $totalPages_RsSearchForSale3) { // Show if not last page ?>
              <a href="<?php printf("%s?pageNum_RsSearchForSale3=%d%s", $currentPage, $totalPages_RsSearchForSale3, $queryString_RsSearchForSale3); ?>">Last</a>
          <?php } // Show if not last page ?>          </td>
      </tr>
    </table>
  </div>
  <?php } elseif ($totalRows_RsSearchForSale4 > 0 ) { // Show if recordset not empty ?>
      <p class="records">SEARCH RESULTS</p>
      <p class="records">Found <?php echo $totalRows_RsSearchForSale4 ?></p>  
      <p class="Propertiesright">Properties <?php echo ($startRow_RsSearchForSale4 + 1) ?> to <?php echo min($startRow_RsSearchForSale4 + $maxRows_RsSearchForSale4, $totalRows_RsSearchForSale4) ?></p>
      <p>&nbsp;</p>
    <p>&nbsp;</p>
    <?php do { ?>
          <div id="salesresults">
            <p><img src="PhotosResults/<?php echo $row_RsSearchForSale4['photo1']; ?>" alt="Photo Property For Sale" class="imageleft" /><span class="pararightloc"><?php echo $row_RsSearchForSale4['loc']; ?></span><span class="price"><?php echo $row_RsSearchForSale4['trueprice']; ?> €</span></p>
            <div id="topborder">
              <p><span class="location"><?php echo $row_RsSearchForSale4['style']; ?></span><span class="lineheight"><?php echo $row_RsSearchForSale4['number']; ?> Beds</span> <span class="space"><?php echo $row_RsSearchForSale4['bathrooms']; ?>Baths </span></p>
            </div>
            <p>&nbsp;</p>
            <p>Ref : <?php echo $row_RsSearchForSale4['propid']; ?></p>
            <p>&nbsp;</p>
            <p><?php echo $row_RsSearchForSale4['desc']; ?></p>
            <p>&nbsp;</p>
            <p>&nbsp;</p>
            <p><span class="space"><a href="detailsForSale.php?propid=<?php echo $row_RsSearchForSale4['propid']; ?>" class="moreinfo">More Info</a></span>            </p>
            <p>&nbsp;</p>
          </div>
           <?php } while ($row_RsSearchForSale4 = mysql_fetch_assoc($RsSearchForSale4)); ?><p>&nbsp;
          <div id="navigate">
    <span class="records">Page Navigation</span>
    <table border="0" class="centralise">
      <tr>
            <td><?php if ($pageNum_RsSearchForSale4 > 0) { // Show if not first page ?>
                  <a href="<?php printf("%s?pageNum_RsSearchForSale4=%d%s", $currentPage, 0, $queryString_RsSearchForSale4); ?>">First</a>
          <?php } // Show if not first page ?>          </td>
        <td><?php if ($pageNum_RsSearchForSale4 > 0) { // Show if not first page ?>
              <a href="<?php printf("%s?pageNum_RsSearchForSale4=%d%s", $currentPage, max(0, $pageNum_RsSearchForSale4 - 1), $queryString_RsSearchForSale4); ?>">Previous</a>
          <?php } // Show if not first page ?>          </td>
        <td><?php if ($pageNum_RsSearchForSale4 < $totalPages_RsSearchForSale4) { // Show if not last page ?>
              <a href="<?php printf("%s?pageNum_RsSearchForSale4=%d%s", $currentPage, min($totalPages_RsSearchForSale4, $pageNum_RsSearchForSale4 + 1), $queryString_RsSearchForSale4); ?>">Next</a>
          <?php } // Show if not last page ?>          </td>
        <td><?php if ($pageNum_RsSearchForSale4 < $totalPages_RsSearchForSale4) { // Show if not last page ?>
              <a href="<?php printf("%s?pageNum_RsSearchForSale4=%d%s", $currentPage, $totalPages_RsSearchForSale4, $queryString_RsSearchForSale4); ?>">Last</a>
          <?php } // Show if not last page ?>          </td>
      </tr>
    </table>
  </div>
  <?php } elseif (totalRows_RSsearchforsale == 0 || totalRows_RsSearchForSale2 == 0 || totalRows_RsSearchForSale3 == 0 ||totalRows_RsSearchForSale4 == 0 ) { // No results?>
        <div id="noResults">
          <p>There were no results found for your search. </p>
          <p>Please try again with new criteria.</p>
          <p>&nbsp;</p>
        </div>
        <?php } // End No results ?>
        
</div>
<?php
mysql_free_result($RSsearchforsale);

mysql_free_result($RsSearchForSale2);

mysql_free_result($RsSearchForSale3);

mysql_free_result($RsSearchForSale4);
?>

Thank you in advance for any response, and sorry about all the code.

Dani AI

Generated

Two separate bugs are visible in the posted code; fixing both will remove the warnings and restore pagination.

First, the mysql_free_result warnings come from calling mysql_free_result() on variables that were never set (null). Wrap each free call so it only runs when a real result resource exists. Example check to add before freeing:

if (!empty($RSsearchforsale) && is_resource($RSsearchforsale)) {
  mysql_free_result($RSsearchforsale);
}

Second, the paging loses the search because the form uses POST while the navigation links use GET. When the user clicks Next the POSTed filter values are gone, so your conditional switch blocks never create the other resultsets and you get empty output. Fixes (pick one):

  • Change the search form to method="get" so filters are in the URL and preserved by links.
  • Append the current filter values to the pagination URLs (or build a $queryString that includes them).
  • Store the search criteria in session variables and read them for paged requests.

Also address these specific logic issues seen in your code:

  • Some queries are only created inside switch-case blocks; if none of those cases match the recordset variables remain undefined. Ensure every branch sets a resultset or add a default branch.
  • The final no-results check uses bare names without the $ (e.g. totalRows_RSsearchforsale instead of $totalRows_RSsearchforsale) — that is a bug and will not behave as you expect.
  • For each resultset you want paged you must apply a LIMIT clause based on the page number; several of your alternate queries compute startRow but never use it.

Longer term: consolidate into one dynamic WHERE (build conditions in an array and join) and switch to mysqli or PDO with prepared statements (mysql_* is deprecated). Turn on full error reporting while debugging:

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

Also double-check, as suggested, that no PHP tags are accidentally left open/inside comments; mismatched tags can hide logic and make debugging harder.

describing your problem precisely and with short code, help to diagnose the problem quickly.
your php tags never ends in above code, almost all the closing tags hide behind the comment.
like -
<?php echo "=>".$test; //this is comment ?>

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.