Recidivist Posted December 4, 2004 Posted December 4, 2004 I hate to post so much code, but this problem seems intractable to me. Someone with more advanced php skills than me will no doubt spot the problem immediately. Basically, I've made quite a few major modifications to product_info.php for layout and usability purposes. I didn't notice when it happened exactly but review count, manufacturer url, products_also_purchased, expected products etc no longer show on this page. Can someone perhaps see why? It's driving me bonkers! KB <?php /* $Id: product_info.php,v 1.97 2003/07/01 14:34:54 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_PRODUCT_INFO); // ADDED BY CLEMENT for design define('HEADING_IMAGE_FILE', 'table_background_default.gif'); require(DIR_WS_INCLUDES . FILENAME_DESIGN); //** $product_check_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_status = '1' and p.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "'"); $product_check = tep_db_fetch_array($product_check_query); ?> <!-- begin dynamic meta tags contribution query --> <?php $the_product_info_query = tep_db_query("select pd.language_id, p.products_id, pd.products_name, pd.products_description, p.products_model, p.products_quantity, p.products_image, pd.products_url, p.products_price, p.products_tax_class_id, p.products_date_added, p.products_date_available, p.manufacturers_id from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and pd.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "'" . " and pd.language_id ='" . (int)$languages_id . "'"); $the_product_info = tep_db_fetch_array($the_product_info_query); $the_product_name = strip_tags ($the_product_info['products_name'], ""); $the_product_description = strip_tags ($the_product_info['products_description'], ""); $the_product_model = strip_tags ($the_product_info['products_model'], ""); ?> <?php $the_manufacturer_query = tep_db_query("select m.manufacturers_id, m.manufacturers_name from " . TABLE_MANUFACTURERS . " m left join " . TABLE_MANUFACTURERS_INFO . " mi on (m.manufacturers_id = mi.manufacturers_id and mi.languages_id = '" . (int)$languages_id . "'), " . TABLE_PRODUCTS . " p where p.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and p.manufacturers_id = m.manufacturers_id"); $the_manufacturers = tep_db_fetch_array($the_manufacturer_query); ?> <!-- // dynamic meta tags query --> <!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN"> <HTML <?php echo HTML_PARAMS; ?>> <HEAD> <!-- dynamic meta tags contribution --> <title><?php echo TITLE ?>: <?php echo $the_product_name; ?></title> <meta name="keywords" content="<?php echo TITLE ?>, <?php echo $the_product_name; ?>, <?php echo $the_product_model; ?>, <?php echo $the_manufacturers['manufacturers_name']; ?>"> <meta name="description" content="<?php echo $the_product_description . "," . $the_product_name; ?>"> <!-- // dynamic meta tags --> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=<?php echo CHARSET; ?>"> <BASE HREF="<?php echo (($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER) . DIR_WS_CATALOG; ?>"> <LINK REL="stylesheet" TYPE="text/css" HREF="stylesheet.css"> <script language="javascript"><!-- function popupWindow(url) { window.open(url,'popupWindow','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,res izable=yes,copyhistory=no,width=100,height=100,screenX=150,screenY=150,top=150,le ft=150') } //--></SCRIPT> <?php echo HEAD_TAGS; ?><?php echo BODY_TAG; ?> <!-- header //--> <?php require(DIR_WS_INCLUDES . 'header.php'); if (COLUMN_LEFT_DISPLAY == 'true') { echo '<!-- left_navigation //-->'; require(DIR_WS_INCLUDES . 'column_left.php'); echo '<!-- left_navigation_eof //-->'; } ?> <!-- body_text //--> <TD <?php echo CONTENT_PARAM_FIRST_TD; ?>> <?php echo tep_draw_form('cart_quantity', tep_href_link(FILENAME_PRODUCT_INFO, tep_get_all_get_params(array('action')) . 'action=add_product')); ?> <?php echo CONTENT_TOP_FIRST_TD; ?> <TABLE <?php echo CONTENT_PARAM_FIRST_TABLE; ?>> <?php if ($product_check['total'] < 1) { ?> <?php echo CONTENT_TOP_FIRST_TABLE; ?> <TR> <TD><?php new infoBox(array(array('text' => TEXT_PRODUCT_NOT_FOUND))); ?></TD> </TR> <TR> <TD><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></TD> </TR> <TR> <TD><TABLE BORDER="0" WIDTH="100%" CELLSPACING="1" CELLPADDING="2" CLASS="infoBox_button"> <TR CLASS="infoBoxContents_button"> <TD><TABLE BORDER="0" WIDTH="100%" CELLSPACING="0" CELLPADDING="2"> <TR> <TD WIDTH="10"><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></TD> <TD ALIGN="right"><?php echo '<a href="' . tep_href_link(FILENAME_DEFAULT) . '">' . tep_image_button('button_continue.gif', IMAGE_BUTTON_CONTINUE) . '</a>'; ?></TD> <TD WIDTH="10"><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></TD> </TR> </TABLE></TD> </TR> </TABLE></TD> </TR> <?php } else { $product_info_query = tep_db_query("select p.products_id, pd.products_name, pd.products_description, p.products_model, p.products_quantity, p.products_image, pd.products_url, p.products_price, p.products_tax_class_id, p.products_date_added, p.products_date_available, p.manufacturers_id, p.products_demo_url, p.products_demo_username, p.products_demo_password, products_demo_provider from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_status = '1' and p.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "'"); $product_info = tep_db_fetch_array($product_info_query); tep_db_query("update " . TABLE_PRODUCTS_DESCRIPTION . " set products_viewed = products_viewed+1 where products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and language_id = '" . (int)$languages_id . "'"); if ($new_price = tep_get_products_special_price($product_info['products_id'])) { $products_price = '<s>' . $currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id'])) . '</s> <span class="productSpecialPrice">' . $currencies->display_price($new_price, tep_get_tax_rate($product_info['products_tax_class_id'])) . '</span>'; } else { $products_price = $currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id'])); } if (tep_not_null($product_info['products_model'])) { $products_name = $product_info['products_name'] . ' <span class="smallText">[' . $product_info['products_model'] . ']</span>'; } else { $products_name = $product_info['products_name']; } ?> <TR> <TD><TABLE BORDER="0" WIDTH="100%" CELLSPACING="0" CELLPADDING="0"> <TR> <TD VALIGN="top"><h2><?php echo $products_name; ?></h2></TD> </TR> </TABLE></TD> </TR> <TR> <TD><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></TD> </TR> <TR> <TD CLASS="main"> <?php if (tep_not_null($product_info['products_image'])) { ?> <!-- start of product image display and ready to buy table --> <table border="0" cellspacing="0" cellpadding="0" width="100%"> <tr> <td align="center" class="main" valign="top" width="150"><script language="javascript" type="text/javascript"> <!-- <?php echo 'document.write(\'<a href="javascript:popupWindow(\\\'' . tep_href_link(FILENAME_POPUP_IMAGE, 'pID=' . $product_info['products_id']) . '\\\')">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], addslashes($product_info['products_name']), SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT, '') . '</a><br>\');'; ?> <?php echo 'document.write(\'<a href="javascript:popupWindow(\\\'' . tep_href_link(FILENAME_POPUP_IMAGE, 'pID=' . $product_info['products_id']) . '\\\')">' . TEXT_CLICK_TO_ENLARGE . '</a>\');'; ?> // --> </script> <noscript> <?php echo '<a href="' . tep_href_link(DIR_WS_IMAGES . $product_info['products_image']) . '" target="_blank">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], $product_info['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT, 'hspace="5" vspace="5"') . '</a>'; ?> <?php echo '<a href="' . tep_href_link(DIR_WS_IMAGES . $product_info['products_image']) . '" target="_blank" title="' . TEXT_CLICK_TO_ENLARGE .'">' . TEXT_CLICK_TO_ENLARGE . '</a>'; ?> </noscript> </td> <td width="20"> </td> <td class="main"> <div id="readyToBuyHead">Ready to buy?</div> <div id="readyToBuy"><span class="ourPrice">Our price:</span> <span class="priceDisplay"><?php echo $products_price; ?></span> <span class="tinyText"> <?php // calculates price inc vat $products_price = $product_info['products_price']; $products_price *= 1.175; echo $currencies->format($products_price); echo ' ' . VAT_TEXT; ?> </span> <br><?php echo TEXT_READYTOBUY; ?><br><br><?php echo tep_draw_hidden_field('products_id', $product_info['products_id']) . tep_image_submit('button_in_cart.gif', IMAGE_BUTTON_IN_CART); ?></div> </td> </tr> </table> <!-- end of product image display table --> <?php } ?> <!-- from here --> <?php } ?> <?php // demo fields if (tep_not_null($product_info['products_demo_url'])) { echo '<br><br><strong>' . TEXT_PRODUCTS_DEMO_MESSAGE . '</strong> <a href="' . $product_info['products_demo_url'] . '" target="_blank">' . TEXT_PRODUCTS_DEMO_URL . '</a>'; } if (tep_not_null($product_info['products_demo_username'])) { echo ' <span class="smalltext">(' . TEXT_PRODUCTS_DEMO_USERNAME.' '.$product_info['products_demo_username'] . ''; } if (tep_not_null($product_info['products_demo_password'])) { echo ' ' . TEXT_PRODUCTS_DEMO_PASSWORD.' '.$product_info['products_demo_password'] . ' - opens in a new window)</span>'; } if (tep_not_null($product_info['products_demo_provider'])) { echo '<br>' . TEXT_PRODUCTS_DEMO_PROVIDER.' '.$product_info['products_demo_provider'] . ''; } // end of demo fields ?> <P><?php echo stripslashes($product_info['products_description']); ?></P><br><br> <!-- // START of attributes --> <?php // KB changed trying to fix attribute sort order problem with SELECTED $products_attributes_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS_OPTIONS . " popt, " . TABLE_PRODUCTS_ATTRIBUTES . " patrib where patrib.products_id='" . (int)$HTTP_GET_VARS['products_id'] . "' and patrib.options_id = popt.products_options_id and popt.language_id = '" . (int)$languages_id . "' order by options_values_id"); $products_attributes = tep_db_fetch_array($products_attributes_query); if ($products_attributes['total'] > 0) { ?> <br><TABLE BORDER="0" CELLSPACING="0" CELLPADDING="0" class="infoBox_attributes" width="100%" ALIGN="center"> <TR> <TD CLASS="main" COLSPAN="2"><strong><?php echo TEXT_PRODUCT_OPTIONS; ?></strong></TD> </TR> <?php $products_options_name_query = tep_db_query("select distinct popt.products_options_id, popt.products_options_name from " . TABLE_PRODUCTS_OPTIONS . " popt, " . TABLE_PRODUCTS_ATTRIBUTES . " patrib where patrib.products_id='" . (int)$HTTP_GET_VARS['products_id'] . "' and patrib.options_id = popt.products_options_id and popt.language_id = '" . (int)$languages_id . "' order by popt.products_options_name"); while ($products_options_name = tep_db_fetch_array($products_options_name_query)) { $products_options_array = array(); $products_options_query = tep_db_query("select pov.products_options_values_id, pov.products_options_values_name, pa.options_values_price, pa.price_prefix from " . TABLE_PRODUCTS_ATTRIBUTES . " pa, " . TABLE_PRODUCTS_OPTIONS_VALUES . " pov where pa.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and pa.options_id = '" . (int)$products_options_name['products_options_id'] . "' and pa.options_values_id = pov.products_options_values_id and pov.language_id = '" . (int)$languages_id . "'"); while ($products_options = tep_db_fetch_array($products_options_query)) { $products_options_array[] = array('id' => $products_options['products_options_values_id'], 'text' => $products_options['products_options_values_name']); if ($products_options['options_values_price'] != '0') { $products_options_array[sizeof($products_options_array)-1]['text'] .= ' (' . $products_options['price_prefix'] . $currencies->display_price($products_options['options_values_price'], tep_get_tax_rate($product_info['products_tax_class_id'])) .') '; } } if (isset($cart->contents[$HTTP_GET_VARS['products_id']]['attributes'][$products_options_name['products_options_id']])) { $selected_attribute = $cart->contents[$HTTP_GET_VARS['products_id']]['attributes'][$products_options_name['products_options_id']]; } else { $selected_attribute = false; } ?> <TR> <TD CLASS="main" width="170"><?php echo $products_options_name['products_options_name'] . ':'; ?></TD> <TD><?php echo tep_draw_pull_down_menu('id[' . $products_options_name['products_options_id'] .']', $products_options_array, $selected_attribute); ?><br></TD> </TR> <?php } ?> </TABLE><br> <!-- // END of attributes --> </TD> </TR> <TR> <TD><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></TD> </TR> <?php $reviews_query = tep_db_query("select count(*) as count from " . TABLE_REVIEWS . " where products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "'"); $reviews = tep_db_fetch_array($reviews_query); if ($reviews['count'] > 0) { ?> <TR> <TD CLASS="main"><?php echo TEXT_CURRENT_REVIEWS . ' ' . $reviews['count']; ?></TD> </TR> <TR> <TD><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></TD> </TR> <?php } if (tep_not_null($product_info['products_url'])) { ?> <TR> <TD CLASS="main"><?php echo sprintf(TEXT_MORE_INFORMATION, tep_href_link(FILENAME_REDIRECT, 'action=url&goto=' . urlencode($product_info['products_url']), 'NONSSL', true, false)); ?></TD> </TR> <TR> <TD><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></TD> </TR> <?php } if ($product_info['products_date_available'] > date('Y-m-d H:i:s')) { ?> <TR> <TD ALIGN="center" CLASS="smallText"><?php echo sprintf(TEXT_DATE_AVAILABLE, tep_date_long($product_info['products_date_available'])); ?></TD> </TR> <?php } else { ?> <TR> <TD ALIGN="center" CLASS="smallText"><?php echo sprintf(TEXT_DATE_ADDED, tep_date_long($product_info['products_date_added'])); ?></TD> </TR> <?php } ?> <TR> <TD><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></TD> </TR> <TR> <TD><TABLE BORDER="0" WIDTH="100%" CELLSPACING="1" CELLPADDING="2" CLASS="infoBox_button"> <TR CLASS="infoBoxContents_button"> <TD><TABLE BORDER="0" WIDTH="100%" CELLSPACING="0" CELLPADDING="2"> <TR> <TD WIDTH="10"><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></TD> <TD CLASS="main"><?php echo '<a href="' . tep_href_link(FILENAME_PRODUCT_REVIEWS, tep_get_all_get_params()) . '">' . tep_image_button('button_reviews.gif', IMAGE_BUTTON_REVIEWS) . '</a>'; ?></TD> <TD CLASS="main" ALIGN="right"><?php echo tep_draw_hidden_field('products_id', $product_info['products_id']) . tep_image_submit('button_in_cart.gif', IMAGE_BUTTON_IN_CART); ?></TD> <TD WIDTH="10"><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></TD> </TR> </TABLE></TD> </TR> </TABLE></TD> </TR> <TR> <TD><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></TD> </TR> <TR> <TD> <?php if ((USE_CACHE == 'true') && empty($SID)) { echo tep_cache_also_purchased(3600); } else { include(DIR_WS_MODULES . FILENAME_ALSO_PURCHASED_PRODUCTS); } } ?> </TD> </TR> <?php echo CONTENT_BOTTOM_FIRST_TABLE; ?> </TABLE> </form> <?php echo CONTENT_BOTTOM_FIRST_TD; ?> </TD> <!-- body_text_eof //--> <?php if (COLUMN_RIGHT_DISPLAY == 'true') { echo '<!-- right_navigation //-->'; require(DIR_WS_INCLUDES . 'column_right.php'); echo '<!-- right_navigation_eof //-->'; } require(DIR_WS_INCLUDES . 'footer.php'); ?> <?php echo ENDING_TAGS; ?> <?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?> Network Webcams - The IP Camera Specialists
Recidivist Posted December 5, 2004 Author Posted December 5, 2004 Sorry to bump this, but I'm still stuggling. Can anyone help at all? KB Network Webcams - The IP Camera Specialists
Recommended Posts
Archived
This topic is now archived and is closed to further replies.