Solved

Need assistance with loop and hiding a value

Posted on 2011-03-18
3
169 Views
Last Modified: 2012-06-27
Hi,
    I have a page on my website which is below.  This code picks specials up from my site.  On the page, it basically displays all items which are pulled from my database.  However what I have is some items which have a zero stock level, in which case I want to hide the add to cart image.

I have added this value to my database select statement, which is correct and working:

p.products_quantity

This can be callsed by:

$specials[products_quantity]

So what I need to do is check to see if:

$specials[products_quantity] == "0"

in whcih case don't show this line:

<a href="' . tep_href_link(basename($PHP_SELF), tep_get_all_get_params(array('action')) . 'action=buy_now&products_id=' . $specials['products_id']) . '">' . tep_image_button('button_in_cart.gif') . '</a>

BUT if the product quantity is above > 0, then include this line.  How is this possible?

Thanks
<?php
/*
  $Id: specials.php,v 1.49 2003/06/09 22:35:33 hpdl Exp $

  osCommerce, Open Source E-Commerce Solutions
  http://www.oscommerce.com

  Copyright (c) 2003 osCommerce

  Released under the GNU General Public License
*/

  require('includes/application_top.php');

  require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_SPECIALS);

  $breadcrumb->add(NAVBAR_TITLE, tep_href_link(FILENAME_SPECIALS));
?>
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
<html <?php echo HTML_PARAMS; ?>>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>">
<title>Washer,Cooker,Dryer spares & parts Special offers</title>
<base href="<?php echo (($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER) . DIR_WS_CATALOG; ?>">
<link rel="stylesheet" type="text/css" href="stylesheet.css">
</head>
<body marginwidth="0" marginheight="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0">
<!-- header //-->
<?php require(DIR_WS_INCLUDES . 'header.php'); ?>
<!-- header_eof //-->

<!-- body //-->
<table border="0" width="100%" valign="top"  cellspacing="0" cellpadding="0" >
  <tr>
<!-- body_text //-->

<td width="100%" valign="top">


      <table cellspacing=0 cellpadding=0 width=100%>
       <tr><td width=6></td></tr> 
       <tr><td colspan=3 bgcolor=#84bbe4 height=30><span style="padding-left: 13px"></span><span class=ch10>Our Latest Specials</span></td></tr>
       <tr><td height=7></td></tr>
       <tr>


<?php
  $specials_query_raw = "select p.products_id, p.products_quantity, pd.products_name, p.products_price, p.products_tax_class_id, p.products_image, s.specials_new_products_price from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_SPECIALS . " s where p.products_status = '1' and s.products_id = p.products_id and p.products_id = pd.products_id and pd.language_id = '" . (int)$languages_id . "' and s.status = '1' order by s.specials_date_added DESC";
  $specials_split = new splitPageResults($specials_query_raw, MAX_DISPLAY_SPECIAL_PRODUCTS); 

  if (($specials_split->number_of_rows > 0) && ((PREV_NEXT_BAR_LOCATION == '1') || (PREV_NEXT_BAR_LOCATION == '3'))) {
?>

      <tr>
        <td><table border="0" cellspacing="0" cellpadding="2">
          <tr>
            <td class="smallText"><?php echo $specials_split->display_count(TEXT_DISPLAY_NUMBER_OF_SPECIALS); ?></td>
            <td width=150></td>
            <td align="right" class="smallText"><?php echo TEXT_RESULT_PAGE . ' ' . $specials_split->display_links(MAX_DISPLAY_PAGE_LINKS, tep_get_all_get_params(array('page', 'info', 'x', 'y'))); ?></td>
          </tr>
        </table></td>
      </tr>
<?php
  }
?>
      <tr>
        <td><table valign=top  cellspacing="0" cellpadding="0" width=100%>
          <tr>
<?php
    $row = 0;
    $specials_query = tep_db_query($specials_split->sql_query);
    while ($specials = tep_db_fetch_array($specials_query)) {
      $row++;
      $product_query = tep_db_query("select products_description  from " . TABLE_PRODUCTS_DESCRIPTION . " where products_id = '" . (int)$specials['products_id'] . "' and language_id = '" . (int)$languages_id . "'");
      $product = tep_db_fetch_array($product_query);
      $new_products['products_description'] = $product['products_description'];

   // get products category
   $categories_query = tep_db_query("select categories_id from " . TABLE_PRODUCTS_TO_CATEGORIES . " where products_id = '" . (int)$specials['products_id'] . "'");
   if (tep_db_num_rows($categories_query) > 0) {
     $categories = tep_db_fetch_array($categories_query);
     $categories_query2 = tep_db_query("select categories_name from " . TABLE_CATEGORIES_DESCRIPTION . " where categories_id = '" . (int)$categories['categories_id'] . "'");
     $categories2 = tep_db_fetch_array($categories_query2);
     $category_name = $categories2['categories_name'];
   } else {
     $category_name = '';
   }
   
   $specials_products_quantity = $specials['products_quantity'];
   
   if ($specials_products_quantity == "0") {
	
      echo '

         <td valign=top width="543">
          <table cellspacing=0 cellpadding=0>
           <tr><td height=7></td></tr>
		   <tr>
		   
          <td width=200 align=center><a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $specials['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $specials['products_image'], $specials['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT, 'class=ch11') . '</a></td>
           <td width=340 valign=top>
            <table cellspacing=0 cellpadding=0>
             <tr><td height=35 colspan=2 valign=middle><a class="pr_name"  href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $specials['products_id']) . '">' . $specials['products_name'] . '</a></td></tr>  
             <tr><td height=15></td></tr>
             <tr><td colspan=2>
              <table cellspacing=0 cellpadding=0>
               <tr><td width=160><span class=ch99><b>Price Was</b>:</span> <span  class="pr_price" style="#color:#4f4f4f; font-size:11px"><s>'.$currencies->display_price($specials['products_price'], tep_get_tax_rate($specials['products_tax_class_id'])) . '</s></span><br><b>Price Now</b>: <span class=pr_price>' . $currencies->display_price($specials['specials_new_products_price'], tep_get_tax_rate($specials['products_tax_class_id'])) . '</span></span></td>
			   <td height=40></td>
               <td align="right"><a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $specials['products_id']) . '">' . tep_image_button('small_view1.png') . '</a><div style="padding-top: 5px"></div><a href="' . tep_href_link(basename($PHP_SELF), tep_get_all_get_params(array('action')) . 'action=buy_now&products_id=' . $specials['products_id']) . '">' . tep_image_button('button_in_cart.gif') . '</a></td></tr>  
              </table> 
             </td></tr>
            </table> 
           </td></tr>
           <tr><td height=7></td></tr>
          </table>   
         </td>
           ' . "\n"; };
   else {
   
         echo '

         <td valign=top width="543">
          <table cellspacing=0 cellpadding=0>
           <tr><td height=7></td></tr>
		   <tr>
		   
          <td width=200 align=center><a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $specials['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $specials['products_image'], $specials['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT, 'class=ch11') . '</a></td>
           <td width=340 valign=top>
            <table cellspacing=0 cellpadding=0>
             <tr><td height=35 colspan=2 valign=middle><a class="pr_name"  href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $specials['products_id']) . '">' . $specials['products_name'] . '</a></td></tr>  
             <tr><td height=15></td></tr>
             <tr><td colspan=2>
              <table cellspacing=0 cellpadding=0>
               <tr><td width=160><span class=ch99><b>Price Was</b>:</span> <span  class="pr_price" style="#color:#4f4f4f; font-size:11px"><s>'.$currencies->display_price($specials['products_price'], tep_get_tax_rate($specials['products_tax_class_id'])) . '</s></span><br><b>Price Now</b>: <span class=pr_price>' . $currencies->display_price($specials['specials_new_products_price'], tep_get_tax_rate($specials['products_tax_class_id'])) . '</span></span></td>
			   <td height=40></td>
               <td align="right"><a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $specials['products_id']) . '">' . tep_image_button('small_view1.png') . '</a><div style="padding-top: 5px"></div><a href="' . tep_href_link(basename($PHP_SELF), tep_get_all_get_params(array('action')) . 'action=buy_now&products_id=' . $specials['products_id']) . '">' . tep_image_button('button_in_cart.gif') . '</a></td></tr>  
              </table> 
             </td></tr>
            </table> 
           </td></tr>
           <tr><td height=7></td></tr>
          </table>   
         </td>
           ' . "\n"; };
   

    //  if ((($row / 2) == floor($row / 2))) {
	$col ++;
    if ($col > 0) {
      $col = 0;
      $row ++;
      echo '
          </tr>
         <tr><td background=images/m19.gif height=1></td></tr>
         <tr>



           ';
    } else echo '';
  }


  echo '
         </tr>
        </table> 


       ';
?>

     <!--   </tr>  
         <tr><td colspan=3 style="padding-left: 1px">
          <table cellspacing=0 cellpadding=0>
           <tr>

        <td width=271>
            <table cellspacing=0 cellpadding=0 width=260>
             <tr><td height=7></td></tr>
             <tr><td background=images/m19.gif height=1></td></tr>
             <tr><td height=7></td></tr>
            </table>
           </td> 
           <td background=images/m24.gif width=1></td>
           <td width=271 align=right>
            <table cellspacing=0 cellpadding=0 width=260>
             <tr><td height=7></td></tr>
             <tr><td background=images/m19.gif height=1></td></tr>
             <tr><td height=7></td></tr>
            </table>
           </td></tr>
          </table>
         </td></tr>
       <tr>-->



<?php  //middle coln space
    //  }else echo '<td background=images/m24.gif width=1></td>';
  //  }
?>
        </tr>  
        <tr><td height=10></td></tr>
       </table>


       
       </td>

      </tr>
<?php
  if (($specials_split->number_of_rows > 0) && ((PREV_NEXT_BAR_LOCATION == '2') || (PREV_NEXT_BAR_LOCATION == '3'))) {
?>
      <tr>
        <td><br><table border="0" cellspacing="0" cellpadding="0">
          <tr>
            <td class="smallText"><?php echo $specials_split->display_count(TEXT_DISPLAY_NUMBER_OF_SPECIALS); ?></td>
            <td width=150></td>
            <td align="right" class="smallText"><?php echo TEXT_RESULT_PAGE . ' ' . $specials_split->display_links(MAX_DISPLAY_PAGE_LINKS, tep_get_all_get_params(array('page', 'info', 'x', 'y'))); ?></td>
          </tr>
        </table></td>
      </tr>
<?php
  }
?>

      </tr>
     </table>
    
    </td>
<!-- body_text_eof //-->
  </tr>
</table>
<!-- body_eof //-->

<!-- footer //-->
<?php require(DIR_WS_INCLUDES . 'footer.php'); ?>
<!-- footer_eof //-->
</body>
</html>
<?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>

Open in new window

0
Comment
Question by:damianb123
  • 2
3 Comments
 
LVL 34

Expert Comment

by:Beverley Portlock
ID: 35166248
Hopefully I've sorted out the quotes.....

if (  $specials[products_quantity] > "0"  ) {

     echo "<a href='" . tep_href_link(basename($PHP_SELF), tep_get_all_get_params(array('action')) . "action=buy_now&products_id={$specials['products_id']}"'>" . tep_image_button('button_in_cart.gif') . "</a>";

}

Open in new window

0
 
LVL 34

Accepted Solution

by:
Beverley Portlock earned 500 total points
ID: 35166258
Typical - press the button and you see some missing ones...

if (  $specials['products_quantity'] > 0  ) {

     echo "<a href='" . tep_href_link(basename($PHP_SELF), tep_get_all_get_params(array('action')) . "action=buy_now&products_id={$specials['products_id']}"'>" . tep_image_button('button_in_cart.gif') . "</a>";

}

Open in new window


0
 

Author Closing Comment

by:damianb123
ID: 35171408
Perfect, just what I needed, thanks very much
0

Featured Post

Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Author Note: Since this E-E article was originally written, years ago, formal testing has come into common use in the world of PHP.  PHPUnit (http://en.wikipedia.org/wiki/PHPUnit) and similar technologies have enjoyed wide adoption, making it possib…
Things That Drive Us Nuts Have you noticed the use of the reCaptcha feature at EE and other web sites?  It wants you to read and retype something that looks like this.Insanity!  It's not EE's fault - that's just the way reCaptcha works.  But it is …
Learn how to match and substitute tagged data using PHP regular expressions. Demonstrated on Windows 7, but also applies to other operating systems. Demonstrated technique applies to PHP (all versions) and Firefox, but very similar techniques will w…
The viewer will learn how to count occurrences of each item in an array.

810 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question