Will
Will

Reputation: 33

How to display null value error message when searching mysql data

I have a mysql keyword search on my website and it works fine. The problem is when someone searches a keyword I haven't added, nothing shows up on the results page. Instead of nothing showing up I would like to have a no results were found message. I don't fully understand how to do this or where I would place the code. I would imagine the code would look something like this

If($row_record['image']?="")
{echo row
}else
echo "<p>no results we're found</p>"
}

I know this code is wrong I'm still new to this, but I imagine it would look something like that. Here is all the code on my results page for you to get a better understanding, thanks in advance.

<?php
#   BuildNav for Dreamweaver MX v0.2
#              10-02-2002
#   Alessandro Crugnola [TMM]
#   sephiroth: [email protected]
#   http://www.sephiroth.it
#   
#   Function for navigation build ::
function buildNavigation($pageNum_Recordset1,$totalPages_Recordset1,$prev_Recordset1,$next_Recordset1,$separator=" | ",$max_links=10, $show_page=true)
{
                GLOBAL $maxRows_Recordset1,$totalRows_Recordset1;
    $pagesArray = ""; $firstArray = ""; $lastArray = "";
    if($max_links<2)$max_links=2;
    if($pageNum_Recordset1<=$totalPages_Recordset1 && $pageNum_Recordset1>=0)
    {
        if ($pageNum_Recordset1 > ceil($max_links/2))
        {
            $fgp = $pageNum_Recordset1 - ceil($max_links/2) > 0 ? $pageNum_Recordset1 - ceil($max_links/2) : 1;
            $egp = $pageNum_Recordset1 + ceil($max_links/2);
            if ($egp >= $totalPages_Recordset1)
            {
                $egp = $totalPages_Recordset1+1;
                $fgp = $totalPages_Recordset1 - ($max_links-1) > 0 ? $totalPages_Recordset1  - ($max_links-1) : 1;
            }
        }
        else {
            $fgp = 0;
            $egp = $totalPages_Recordset1 >= $max_links ? $max_links : $totalPages_Recordset1+1;
        }
        if($totalPages_Recordset1 >= 1) {
            #   ------------------------
            #   Searching for $_GET vars
            #   ------------------------
            $_get_vars = '';            
            if(!empty($_GET) || !empty($HTTP_GET_VARS)){
                $_GET = empty($_GET) ? $HTTP_GET_VARS : $_GET;
                foreach ($_GET as $_get_name => $_get_value) {
                    if ($_get_name != "pageNum_Recordset1") {
                        $_get_vars .= "&$_get_name=$_get_value";
                    }
                }
            }
            $successivo = $pageNum_Recordset1+1;
            $precedente = $pageNum_Recordset1-1;
            $firstArray = ($pageNum_Recordset1 > 0) ? "<a href=\"$_SERVER[PHP_SELF]?pageNum_Recordset1=$precedente$_get_vars\">$prev_Recordset1</a>" :  "$prev_Recordset1";
            # ----------------------
            # page numbers
            # ----------------------
            for($a = $fgp+1; $a <= $egp; $a++){
                $theNext = $a-1;
                if($show_page)
                {
                    $textLink = $a;
                } else {
                    $min_l = (($a-1)*$maxRows_Recordset1) + 1;
                    $max_l = ($a*$maxRows_Recordset1 >= $totalRows_Recordset1) ? $totalRows_Recordset1 : ($a*$maxRows_Recordset1);
                    $textLink = "$min_l - $max_l";
                }
                $_ss_k = floor($theNext/26);
                if ($theNext != $pageNum_Recordset1)
                {
                    $pagesArray .= "<a href=\"$_SERVER[PHP_SELF]?pageNum_Recordset1=$theNext$_get_vars\">";
                    $pagesArray .= "$textLink</a>" . ($theNext < $egp-1 ? $separator : "");
                } else {
                    $pagesArray .= "$textLink"  . ($theNext < $egp-1 ? $separator : "");
                }
            }
            $theNext = $pageNum_Recordset1+1;
            $offset_end = $totalPages_Recordset1;
            $lastArray = ($pageNum_Recordset1 < $totalPages_Recordset1) ? "<a href=\"$_SERVER[PHP_SELF]?pageNum_Recordset1=$successivo$_get_vars\">$next_Recordset1</a>" : "$next_Recordset1";
        }
    }
    return array($firstArray,$pagesArray,$lastArray);
}
?>
<?php require_once('Connections/theconnect.php'); ?>
<?php
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") 
{
  if (PHP_VERSION < 6) {
    $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;
}
}

$maxRows_Recordset1 = 5;
$pageNum_Recordset1 = 0;
if (isset($_GET['pageNum_Recordset1'])) {
  $pageNum_Recordset1 = $_GET['pageNum_Recordset1'];
}
$startRow_Recordset1 = $pageNum_Recordset1 * $maxRows_Recordset1;

$colname_Recordset1 = "-1";
if (isset($_GET['textfield'])) {
  $colname_Recordset1 = $_GET['textfield'];
}
mysql_select_db($database_theconnect, $theconnect);
$query_Recordset1 = sprintf("SELECT *  FROM abstract  WHERE keyword LIKE %s OR id  LIKE %s  UNION ALL SELECT *  FROM cartoons  WHERE keyword LIKE %s OR id  LIKE %s  UNION ALL  SELECT *  FROM cute   WHERE keyword LIKE %s OR id  LIKE %s  UNION ALL  SELECT * FROM fashion  WHERE keyword LIKE %s OR id  LIKE %s  UNION ALL  SELECT * FROM forguys  WHERE keyword LIKE %s OR id  LIKE %s  UNION ALL  SELECT *  FROM hiphop  WHERE keyword LIKE %s OR id  LIKE %s  UNION ALL  SELECT *  FROM movies WHERE keyword LIKE %s OR id  LIKE %s  UNION ALL  SELECT *  FROM other  WHERE keyword LIKE %s OR id  LIKE %s  UNION ALL  SELECT *  FROM pop  WHERE keyword LIKE %s OR id  LIKE %s  UNION ALL  SELECT *  FROM quotes  WHERE keyword LIKE %s OR id  LIKE %s  UNION ALL SELECT * FROM rnb WHERE keyword LIKE %s OR id  LIKE %s  UNION ALL SELECT * FROM random WHERE keyword LIKE %s OR id  LIKE %s  UNION ALL SELECT * FROM rock WHERE keyword LIKE %s OR id  LIKE %s  UNION ALL SELECT * FROM sports WHERE keyword LIKE %s OR id  LIKE %s  ", GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"),GetSQLValueString("%" . $colname_Recordset1 . "%", "text"));
$query_limit_Recordset1 = sprintf("%s LIMIT %d, %d", $query_Recordset1, $startRow_Recordset1, $maxRows_Recordset1);
$Recordset1 = mysql_query($query_limit_Recordset1, $theconnect) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);

if (isset($_GET['totalRows_Recordset1'])) {
  $totalRows_Recordset1 = $_GET['totalRows_Recordset1'];
} else {
  $all_Recordset1 = mysql_query($query_Recordset1);
  $totalRows_Recordset1 = mysql_num_rows($all_Recordset1);
}
$totalPages_Recordset1 = ceil($totalRows_Recordset1/$maxRows_Recordset1)-1;
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="description" content="do this later"/>
<meta name="keywords" content="words and phrases for my site"/>
<title>mysite</title>
<style type="text/css">
body {
    margin-top: -3px;
    margin-bottom: -3px;
    background-image: url(images/bg.png);
    background-repeat: repeat;
}
</style>
<link href="css/style.css" rel="stylesheet" type="text/css" />
<script type="text/xml">
<!--
<oa:widgets>
  <oa:widget wid="2149022" binding="#OAWidget" />
</oa:widgets>
-->
</script>
</head>

<body>
<div id="shadow">
  <table width="910" border="0" align="center">
    <tr>
      <td bgcolor="#FFFFFF"><div id="header">
        <form id="form1" name="form1" method="get" action="results.php">
          <div id="headlinksR">
            <?php require_once('includes/header_nav.php'); ?>
          </div>
          <span class="searchbar">
            <input name="textfield" type="text" class="tfield_position" id="textfield" value="" />
            <input name="button" type="submit" class="search" id="button" value="Search!" />
            </span>
        </form>
        <?php require_once('includes/logo.php'); ?>
      </div>
        <div id="bodywrap">
          <div id="content">
            <div id="bannerad">
              <?php require_once('includes/banner_ad.php'); ?>
            </div>
            <div class="Csepbar">do this later</div>
            <div id="centerhold">
              <div id="adhold">
                <?php require_once('includes/center_ad.php'); ?>
              </div>
              <div id="fbapi">
                <?php require_once('includes/fb_api.php'); ?>
              </div>
            </div>
            <div class="Csepbar"> Results!</div>
            <div id="covers">
              <table align="center" cellspacing="5">
                <?php do { ?>
                <tr>
                  <td class="text"><div id="coverlike">
                    <script type="text/javascript">
// BeginOAWidget_Instance_2149022: #OAWidget

    var urlToLike = 'view.php?id=<?php echo $row_Recordset1['id']; ?>&image=<?php echo $row_Recordset1['image']; ?>';
    if (urlToLike == '') {
            urlToLike = window.location.href;
      }
      urlToLike = encodeURIComponent(urlToLike);

      var font = encodeURIComponent('arial');


document.write ('<iframe src="http://www.facebook.com/widgets/like.php?locale=en_US&amp;href='+urlToLike+'&amp;layout=button_count&amp;show_faces=true&amp;width=50&amp;height=20&amp;action=like&amp;font='+font+'&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:hidden; border-color:#ffffff; overflow:hidden; width:50; height:20"></iframe>')


// EndOAWidget_Instance_2149022
                      </script>
                  </div>
                    <div id="cname"><?php echo $row_Recordset1['name']; ?></div></td>
                </tr>
                <tr>
                  <td><img src="<?php echo $row_Recordset1['image']; ?>" alt="facebook cover" width="500" height="200" /></td>
                </tr>
                <tr>
                  <td><a href="view.php?id=<?php echo $row_Recordset1['id']; ?>&amp;image=<?php echo $row_Recordset1['image']; ?>"><img src="images/bar_bg.png" alt="Facebook Covers" width="500" height="30" border="0" /></a></td>
                </tr>
                <?php } while ($row_Recordset1 = mysql_fetch_assoc($Recordset1)); ?>
              </table>
            </div>
            <div id="pagination"><span class="pagination">
              <?php 
# variable declaration
$prev_Recordset1 = "« previous";
$next_Recordset1 = "next »";
$separator = " | ";
$max_links = 5;
$pages_navigation_Recordset1 = buildNavigation($pageNum_Recordset1,$totalPages_Recordset1,$prev_Recordset1,$next_Recordset1,$separator,$max_links,true); 

print $pages_navigation_Recordset1[0]; 
?>
              <?php print $pages_navigation_Recordset1[1]; ?> <?php print $pages_navigation_Recordset1[2]; ?></span></div>
          </div>
          <div id="sidenav">
            <div id="fb_like">
              <?php require_once('includes/fb_like.php'); ?>
            </div>
            <div class="sepbar">
              <p class="sepbarT">Categories</p>
            </div>
            <?php require_once('includes/side_nav.php'); ?>
            <div class="sepbar">
              <p span class="sepbarT">Sponsored By</p>
            </div>
            <div id="sidenavad">
              <?php require_once('includes/side_ad.php'); ?>
            </div>
          </div>
        </div>
        <div id="footer">
          <?php require_once('includes/footer.php'); ?>
        </div></td>
    </tr>
  </table>
</div>
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
var pageTracker = _gat._getTracker("UA-27886561-1");
pageTracker._initData();
pageTracker._trackPageview();
</script>
</body>
</html>
<?php
mysql_free_result($Recordset1);
?>

Upvotes: 0

Views: 995

Answers (2)

halil
halil

Reputation: 1812

or you can put your sql result to an array or list and check null or size. by the way your search sql will be very slow if you have more than 100000 records in db.

Upvotes: 0

nand
nand

Reputation: 627

You will need to use mysql_num_rows. eg.

$query = mysql_query('SELECT `col` FROM `tbl` WHERE `cond`');

if (mysql_num_rows($query) <= 0) {
   // no results
   echo 'No results found.';
} else {
   do {
    // output
   } while($res = mysql_fetch_assoc($query));
}

See: http://php.net/manual/en/function.mysql-num-rows.php

Upvotes: 1

Related Questions