Jump to content

osclearner

Members
  • Content count

    152
  • Joined

  • Last visited

Posts posted by osclearner


  1. i found the solution :

    replace

    // We show them all
    	$listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_PRODUCTS . " p left join " . TABLE_MANUFACTURERS . " m on p.manufacturers_id = m.manufacturers_id, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c left join " . TABLE_SPECIALS . " s on p2c.products_id = s.products_id where p.products_status = '1' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$current_category_id . "'";
      }
    }

     

    with

    // We show them all
      $cPathA = explode("_", $cPath);
      $size = sizeof($cPathA)-1;
      $subcategories_array = array();
      tep_get_subcategories($subcategories_array, $cPathA[$size]);
      $size_sc = sizeof($subcategories_array); //Subcat count
      $cat_Search = "(";
      for($i = 0; $i < $size_sc; $i++){
      $cat_Search .= "p2c.categories_id = '" . $subcategories_array[$i] . "' or ";
      }
      $cat_Search .= "p2c.categories_id = '" . $cPathA[$size] . "'" . ")";
    
      $listing_sql = "select " . $_list . " p.products_image, pd.products_name, p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_PRODUCTS . " p left join " . TABLE_MANUFACTURERS . " m on p.manufacturers_id = m.manufacturers_id left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_status = '1' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and " . $cat_Search . "";
      }
    }


  2. theantiquestore:

     

    i copied and pasted the file u pm' me and it gets error 1054, if the index.php file is ok, is this problem caused by includes/modules/product_listing.php? because i didnt change anything on this file , i showed it to u in the above reply of this topic cause there are some different lines, i dont know how to change it.

     

    can you help me to take a look at product_listing.php and tell me how to change it ?

     

    thank you very much


  3. hi, i have just modifield the index.php and when clicking the main category in categories list box, i have error:

    1054 - Unknown column 'distinctp.products_image' in 'field list'
    
    select distinctp.products_image, pd.products_name, p.products_image, pd.products_name, p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from products_description pd, products p left join manufacturers m on p.manufacturers_id = m.manufacturers_id left join specials s on p.products_id = s.products_id, products_to_categories p2c where p.products_status = '1' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '4' and (p2c.categories_id = '4' or p2c.categories_id = '5' or p2c.categories_id = '6' or p2c.categories_id = '7' or p2c.categories_id = '8' or p2c.categories_id = '9' or p2c.categories_id = '16' or p2c.categories_id = '17' or p2c.categories_id = '1') order by pd.products_name limit 0, 20
    
    [TEP STOP]

     

    here's my index.php. hope that you can help me

    <?php
    /*
     $Id: index.php,v 1.1 2003/06/11 17:37:59 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');
    
    // the following cPath references come from application_top.php
     $category_depth = 'top';
     if (isset($cPath) && tep_not_null($cPath)) {
    $categories_products_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS_TO_CATEGORIES . " where categories_id = '" . (int)$current_category_id . "'");
    $cateqories_products = tep_db_fetch_array($categories_products_query);
    if ($cateqories_products['total'] > 0) {
      $category_depth = 'products'; // display products
    } else {
      $category_parent_query = tep_db_query("select count(*) as total from " . TABLE_CATEGORIES . " where parent_id = '" . (int)$current_category_id . "'");
      $category_parent = tep_db_fetch_array($category_parent_query);
      if ($category_parent['total'] > 0) {
    	$category_depth = 'nested'; // navigate through the categories
      } else {
    	$category_depth = 'products'; // category has no products, but display the 'no products' message
      }
    }
     }
    
     require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_DEFAULT);
    ?>
    <!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><?php echo TITLE; ?></title>
    <base href="<?php echo (($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER) . DIR_WS_CATALOG; ?>">
    <link rel="stylesheet" type="text/css" href="stylesheet.css">
    <link rel="shortcut icon" href="favicon.ico" >
    </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%" cellspacing="0" cellpadding="0">
    <tr>
      <td valign="top">
    <!-- left_navigation //-->
    <?php require(DIR_WS_INCLUDES . 'column_left.php'); ?>
    <!-- left_navigation_eof //-->
    </td>
    <!-- body_text //-->
    <?php
     if ($category_depth == 'nested') {
    $category_query = tep_db_query("select cd.categories_name, c.categories_image from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.categories_id = '" . (int)$current_category_id . "' and cd.categories_id = '" . (int)$current_category_id . "' and cd.language_id = '" . (int)$languages_id . "'");
    $category = tep_db_fetch_array($category_query);
    ?>
    <td width="100%" valign="top">
    
    <?  tep_draw_heading_top();?>
    
    <? new contentBoxHeading_ProdNew($info_box_contents);?>
    
    <?  tep_draw_heading_top_1();?>
    
    
    
    
    				<table border="0" cellspacing="2" cellpadding="0" align="center" class="box_width_cont product">
    
    					<tr>
    <?php
    if (isset($cPath) && strpos('_', $cPath)) {
    // check to see if there are deeper categories within the current category
      $category_links = array_reverse($cPath_array);
      for($i=0, $n=sizeof($category_links); $i<$n; $i++) {
    	$categories_query = tep_db_query("select count(*) as total from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '" . (int)$category_links[$i] . "' and c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "'");
    	$categories = tep_db_fetch_array($categories_query);
    	if ($categories['total'] < 1) {
    	  // do nothing, go through the loop
    	} else {
    	  $categories_query = tep_db_query("select c.categories_id, cd.categories_name, c.categories_image, c.parent_id from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '" . (int)$category_links[$i] . "' and c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "' order by sort_order, cd.categories_name");
    	  break; // we've found the deepest category the customer is in
    	}
      }
    } else {
      $categories_query = tep_db_query("select c.categories_id, cd.categories_name, c.categories_image, c.parent_id from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '" . (int)$current_category_id . "' and c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "' order by sort_order, cd.categories_name");
    }
    
    $number_of_categories = tep_db_num_rows($categories_query);
    
    $rows = 0;
    while ($categories = tep_db_fetch_array($categories_query)) {
      $rows++;
      $cPath_new = tep_get_path($categories['categories_id']);
      $width = (int)(100 / MAX_DISPLAY_CATEGORIES_PER_ROW) . '%';
      echo '			   
    
    		<td  align="center" width="' . $width . '">'.tep_draw_prod_top().'
    				<table cellspacing="0" cellpadding="0" border="0" >
    					<tr>
    						<td width="157" height="47"><br style="line-height:15px">
    						 <a href="' . tep_href_link(FILENAME_DEFAULT, $cPath_new) . '">' . $categories['categories_name'] . '</a></td>
    					</tr>
    					<tr>
    					  <td width="157" height="150" class="pic" align="center"><a href="' . tep_href_link(FILENAME_DEFAULT, $cPath_new) . '">' . tep_image(DIR_WS_IMAGES . $categories['categories_image'], $categories['categories_name'], SUBCATEGORY_IMAGE_WIDTH, SUBCATEGORY_IMAGE_HEIGHT) . '</a><br></td>
    					</tr>
    				</table>			
    		'.tep_draw_prod_bottom().'
    
    		</td>
    
      ' . "\n";
    			  if ($col!=(MAX_DISPLAY_CATEGORIES_PER_ROW-1)){
    			  echo '
    										<td>'.tep_draw_separator('spacer.gif', '12', '1').'</td>
    										<td class="bg6">'.tep_draw_separator('spacer.gif', '1', '1').'</td>
    										<td>'.tep_draw_separator('spacer.gif', '16', '1').'</td>
    					';
    			  }
    			 else{				  
    
      if ((($rows / MAX_DISPLAY_CATEGORIES_PER_ROW) == floor($rows / MAX_DISPLAY_CATEGORIES_PER_ROW)) && ($rows != $number_of_categories)) {
    	echo '			  </tr><tr><td colspan="9"> </td></tr>' . "\n";
    	echo '			  <tr>' . "\n";
      }
    }
    if ($col==MAX_DISPLAY_CATEGORIES_PER_ROW-1){
    $col=0;
    }else{
    $col++;
    }
    }	
    
    // needed for the new products module shown below
    $new_products_category_id = $current_category_id;
    ?>
    
    
    			</table>
    
    <?  tep_draw_heading_bottom_1();?>				
    <? tep_draw_heading_bottom();?>
    
    <table cellpadding="0" cellspacing="0"><tr><td height="1"></td></tr></table>
    
    <? tep_draw_heading_top();?>
    
    <? new contentBoxHeading_WHATS_NEW($info_box_contents, true, false);?>
    
    <? tep_draw_heading_top_1();?>			
    
    		<?php include(DIR_WS_MODULES . FILENAME_NEW_PRODUCTS); ?>
    
    <? tep_draw_heading_bottom_1();?>
    
    <? tep_draw_heading_bottom();?>	
    
    
    
    </td>
    
    <?php
     } elseif ($category_depth == 'products' || isset($HTTP_GET_VARS['manufacturers_id'])) {
    // create column list
    $define_list = array('PRODUCT_LIST_MODEL' => PRODUCT_LIST_MODEL,
    					 'PRODUCT_LIST_NAME' => PRODUCT_LIST_NAME,
    					 'PRODUCT_LIST_MANUFACTURER' => PRODUCT_LIST_MANUFACTURER,
    					 'PRODUCT_LIST_PRICE' => PRODUCT_LIST_PRICE,
    					 'PRODUCT_LIST_QUANTITY' => PRODUCT_LIST_QUANTITY,
    					 'PRODUCT_LIST_WEIGHT' => PRODUCT_LIST_WEIGHT,
    					 'PRODUCT_LIST_IMAGE' => PRODUCT_LIST_IMAGE,
    					 'PRODUCT_LIST_BUY_NOW' => PRODUCT_LIST_BUY_NOW);
    
    asort($define_list);
    
    $column_list = array();
    reset($define_list);
    while (list($key, $value) = each($define_list)) {
      if ($value > 0) $column_list[] = $key;
    }
    
    $select_column_list = '';
    
    for ($i=0, $n=sizeof($column_list); $i<$n; $i++) {
      switch ($column_list[$i]) {
    	case 'PRODUCT_LIST_MODEL':
    	  $select_column_list .= 'p.products_model, ';
    	  break;
    	case 'PRODUCT_LIST_NAME':
    	  $select_column_list .= 'pd.products_name, ';
    	  break;
    	case 'PRODUCT_LIST_MANUFACTURER':
    	  $select_column_list .= 'm.manufacturers_name, ';
    	  break;
    	case 'PRODUCT_LIST_QUANTITY':
    	  $select_column_list .= 'p.products_quantity, ';
    	  break;
    	case 'PRODUCT_LIST_IMAGE':
    	  $select_column_list .= 'p.products_image, ';
    	  break;
    	case 'PRODUCT_LIST_WEIGHT':
    	  $select_column_list .= 'p.products_weight, ';
    	  break;
      }
    }
    
    // show the products of a specified manufacturer
    if (isset($HTTP_GET_VARS['manufacturers_id'])) {
      if (isset($HTTP_GET_VARS['filter_id']) && tep_not_null($HTTP_GET_VARS['filter_id'])) {
    // We are asked to show only a specific category
    	$listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_MANUFACTURERS . " m, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$HTTP_GET_VARS['filter_id'] . "'";
      } else {
    // We show them all
    	$listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_MANUFACTURERS . " m where p.products_status = '1' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "'";
      }
    } else {
    // show the products in a given categorie
      if (isset($HTTP_GET_VARS['filter_id']) && tep_not_null($HTTP_GET_VARS['filter_id'])) {
    // We are asked to show only specific catgeory
    	$listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_MANUFACTURERS . " m, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '" . (int)$HTTP_GET_VARS['filter_id'] . "' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$current_category_id . "'";
      } else {
    // We show them all
    	$listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_PRODUCTS . " p left join " . TABLE_MANUFACTURERS . " m on p.manufacturers_id = m.manufacturers_id left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_status = '1' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$current_category_id . "'";
      }
    }
    
    if ( (!isset($HTTP_GET_VARS['sort'])) || (!ereg('[1-8][ad]', $HTTP_GET_VARS['sort'])) || (substr($HTTP_GET_VARS['sort'], 0, 1) > sizeof($column_list)) ) {
      for ($i=0, $n=sizeof($column_list); $i<$n; $i++) {
    	if ($column_list[$i] == 'PRODUCT_LIST_NAME') {
    	  $HTTP_GET_VARS['sort'] = $i+1 . 'a';
    	  $listing_sql .= " order by pd.products_name";
    	  break;
    	}
      }
    } else {
      $sort_col = substr($HTTP_GET_VARS['sort'], 0 , 1);
      $sort_order = substr($HTTP_GET_VARS['sort'], 1);
      $listing_sql .= ' order by ';
      switch ($column_list[$sort_col-1]) {
    	case 'PRODUCT_LIST_MODEL':
    	  $listing_sql .= "p.products_model " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name";
    	  break;
    	case 'PRODUCT_LIST_NAME':
    	  $listing_sql .= "pd.products_name " . ($sort_order == 'd' ? 'desc' : '');
    	  break;
    	case 'PRODUCT_LIST_MANUFACTURER':
    	  $listing_sql .= "m.manufacturers_name " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name";
    	  break;
    	case 'PRODUCT_LIST_QUANTITY':
    	  $listing_sql .= "p.products_quantity " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name";
    	  break;
    	case 'PRODUCT_LIST_IMAGE':
    	  $listing_sql .= "pd.products_name";
    	  break;
    	case 'PRODUCT_LIST_WEIGHT':
    	  $listing_sql .= "p.products_weight " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name";
    	  break;
    	case 'PRODUCT_LIST_PRICE':
    	  $listing_sql .= "final_price " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name";
    	  break;
      }
    }
    ?>
    <td width="100%" valign="top">
    
    
    
    <? tep_draw_heading_top();?>	  
    
    
    
    		  <table border="0" cellspacing="0" cellpadding="0" align="center" class="box_width_cont">
    				  <tr>
    <?php
    // optional Product List Filter
     /*  if (PRODUCT_LIST_FILTER > 0) {
      if (isset($HTTP_GET_VARS['manufacturers_id'])) {
    	$filterlist_sql = "select distinct c.categories_id as id, cd.categories_name as name from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c, " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where p.products_status = '1' and p.products_id = p2c.products_id and p2c.categories_id = c.categories_id and p2c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "' and p.manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "' order by cd.categories_name";
      } else {
    	$filterlist_sql= "select distinct m.manufacturers_id as id, m.manufacturers_name as name from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c, " . TABLE_MANUFACTURERS . " m where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and p.products_id = p2c.products_id and p2c.categories_id = '" . (int)$current_category_id . "' order by m.manufacturers_name";
      }
      $filterlist_query = tep_db_query($filterlist_sql);
      if (tep_db_num_rows($filterlist_query) > 1) {
    	echo '			<td align="center" class="main">' . tep_draw_form('filter', FILENAME_DEFAULT, 'get') . TEXT_SHOW . ' ';
    	if (isset($HTTP_GET_VARS['manufacturers_id'])) {
    	  echo tep_draw_hidden_field('manufacturers_id', $HTTP_GET_VARS['manufacturers_id']);
    	  $options = array(array('id' => '', 'text' => TEXT_ALL_CATEGORIES));
    	} else {
    	  echo tep_draw_hidden_field('cPath', $cPath);
    	  $options = array(array('id' => '', 'text' => TEXT_ALL_MANUFACTURERS));
    	}
    	echo tep_draw_hidden_field('sort', $HTTP_GET_VARS['sort']);
    	while ($filterlist = tep_db_fetch_array($filterlist_query)) {
    	  $options[] = array('id' => $filterlist['id'], 'text' => $filterlist['name']);
    	}
    	echo tep_draw_pull_down_menu('filter_id', $options, (isset($HTTP_GET_VARS['filter_id']) ? $HTTP_GET_VARS['filter_id'] : ''), 'onchange="this.form.submit()"');
    	echo '</form></td>' . "\n";
      }
    }*/
    
    // Get the right image for the top-right
    $image = DIR_WS_IMAGES . 'table_background_list.gif';
    if (isset($HTTP_GET_VARS['manufacturers_id'])) {
      $image = tep_db_query("select manufacturers_image from " . TABLE_MANUFACTURERS . " where manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "'");
      $image = tep_db_fetch_array($image);
      $image = $image['manufacturers_image'];
    } elseif ($current_category_id) {
      $image = tep_db_query("select categories_image from " . TABLE_CATEGORIES . " where categories_id = '" . (int)$current_category_id . "'");
      $image = tep_db_fetch_array($image);
      $image = $image['categories_image'];
      $name = tep_db_query("select categories_name from " . TABLE_CATEGORIES_DESCRIPTION . " where categories_id = '" . (int)$current_category_id . "'");
      $name = tep_db_fetch_array($name);
      $name = $name['categories_name'];
    }
    ?>
    
    				</tr>
    			</table>
    			<table border="0" cellspacing="0" cellpadding="0" align="center" class="box_width_cont">
    				<tr><td align="center" valign="top"><?php include(DIR_WS_MODULES . FILENAME_PRODUCT_LISTING); ?></td></tr>
    			</table>
    
    <? tep_draw_heading_bottom_1(); ?>
    
    <? tep_draw_heading_bottom(); ?>
    
    	</td>
    
    <?php
     } else { // default page
    ?>
    <td width="100%" valign="top">
    <?php require(DIR_WS_BOXES . 'panel_top.php'); ?>
    
    <? tep_draw_heading_top();?>
    
    <? new contentBoxHeading_ProdNew($info_box_contents);?>
    
    <? tep_draw_heading_top_1();?>
    
    
    				<table border="0" cellspacing="0" cellpadding="0" align="center" class="box_width_cont">
    					<tr><td><?php include(DIR_WS_MODULES . FILENAME_NEW_PRODUCTS); ?></td></tr>
    							<?php include(DIR_WS_MODULES . FILENAME_UPCOMING_PRODUCTS);?>
    				</table>
    
    <? tep_draw_heading_bottom_1();?>
    
    <? tep_draw_heading_bottom();?>
    
    </td>
    <?php
     }
    ?>
    <!-- body_text_eof //-->
    <td valign="top">
    <!-- right_navigation //-->
    <?php require(DIR_WS_INCLUDES . 'column_right.php'); ?>
    <!-- right_navigation_eof //-->
    </td>
     </tr>
    </table>
    <!-- body_eof //-->
    
    <!-- footer //-->
    <?php require(DIR_WS_INCLUDES . 'footer.php'); ?>
    <!-- footer_eof //-->
    <br>
    </body>
    </html>
    <?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>

     

    and here's my includes/modules/product_listing.php

    <?php
    /*
     $Id: product_listing.php,v 1.44 2003/06/09 22:49:59 hpdl Exp $
    
     osCommerce, Open Source E-Commerce Solutions
     http://www.oscommerce.com
    
     Copyright (c) 2003 osCommerce
    
     Released under the GNU General Public License
    */
    ?>
    <? /*
    
    <?=$breadcrumb->trail(' » ')?>
    
    */?>
    					<table cellspacing="0" cellpadding="0" border="0" >
    						<tr>
    							<td><?=tep_image(DIR_WS_IMAGES.'q1.gif')?></td>
    							<td class="column_left_header_txt"><?=$breadcrumb->trail(' » ')?></td>
    							<td><?=tep_image(DIR_WS_IMAGES.'q2.gif')?></td>
    						</tr>	
    					</table>
    
    <? tep_draw_heading_top_1();?>
    
    <?
     $listing_split = new splitPageResults($listing_sql, MAX_DISPLAY_SEARCH_RESULTS, 'p.products_id');
    
     if ( ($listing_split->number_of_rows > 0) && ( (PREV_NEXT_BAR_LOCATION == '1') || (PREV_NEXT_BAR_LOCATION == '2') ) ) {
    ?>
    <table border="0" cellspacing="0" cellpadding="0" class="result box_width_cont">
     <tr>
    <td><?php echo $listing_split->display_count(TEXT_DISPLAY_NUMBER_OF_PRODUCTS); ?></td>
    <td class="result_right"><?php echo TEXT_RESULT_PAGE . ' ' . $listing_split->display_links(MAX_DISPLAY_PAGE_LINKS, tep_get_all_get_params(array('page', 'info', 'x', 'y'))); ?></td>
     </tr>
    </table>
    
    <?php
     }
    ?>
    <table border="0" cellspacing="0" cellpadding="0" class="box_width_cont">
     <tr><td valign="top">
    <?
    $info_box_contents = array();
     $list_box_contents = array();
    $my_row = 0;
    $my_col = 0;
    
     $td_counter = 0;
     for ($col=0, $n=sizeof($column_list); $col<$n; $col++) {
    switch ($column_list[$col]) {
      case 'PRODUCT_LIST_MODEL':
    	$lc_text = TABLE_HEADING_MODEL;
    	$lc_align = '';
    	break;
      case 'PRODUCT_LIST_NAME':
    	$lc_text = TABLE_HEADING_PRODUCTS;
    	$lc_align = '';
    	break;
      case 'PRODUCT_LIST_MANUFACTURER':
    	$lc_text = TABLE_HEADING_MANUFACTURER;
    	$lc_align = '';
    	break;
      case 'PRODUCT_LIST_PRICE':
    	$lc_text = TABLE_HEADING_PRICE;
    	$lc_align = 'right';
    	break;
      case 'PRODUCT_LIST_QUANTITY':
    	$lc_text = TABLE_HEADING_QUANTITY;
    	$lc_align = 'right';
    	break;
      case 'PRODUCT_LIST_WEIGHT':
    	$lc_text = TABLE_HEADING_WEIGHT;
    	$lc_align = 'right';
    	break;
      case 'PRODUCT_LIST_IMAGE':
    	$lc_text = TABLE_HEADING_IMAGE;
    	$lc_align = 'center';
    	break;
      case 'PRODUCT_LIST_BUY_NOW':
    	$lc_text = TABLE_HEADING_BUY_NOW;
    	$lc_align = 'center';
    	break;
    }
    
    if ( ($column_list[$col] != 'PRODUCT_LIST_BUY_NOW') && ($column_list[$col] != 'PRODUCT_LIST_IMAGE') ) {
      $lc_text = tep_create_sort_heading($HTTP_GET_VARS['sort'], $col+1, $lc_text);
    }
    
    $list_box_contents[0][] = array('align' => $lc_align,
    								'params' => 'class="productListing-heading"',
    								'text' => ' ' . $lc_text . ' ');
     }
    
     if ($listing_split->number_of_rows > 0) {
    $rows = 0;
    $listing_query = tep_db_query($listing_split->sql_query);
    while ($listing = tep_db_fetch_array($listing_query)) {
      $rows++;
    
      if (($rows/2) == floor($rows/2)) {
    	$list_box_contents[] = array('params' => 'class="productListing-even"');
      } else {
    	$list_box_contents[] = array('params' => 'class="productListing-odd"');
      }
    
      $cur_row = sizeof($list_box_contents) - 1;
    
      for ($col=0, $n=sizeof($column_list); $col<$n; $col++) {
    	$lc_align = '';
    
    	switch ($column_list[$col]) {
    	  case 'PRODUCT_LIST_MODEL':
    		$lc_align = '';
    	   $p_model =  $lc_text = '' . $listing['products_model'] . '';
    		break;
    	  case 'PRODUCT_LIST_NAME':
    		$lc_align = '';
    		if (isset($HTTP_GET_VARS['manufacturers_id'])) {
    	   $p_name = $lc_text = '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'manufacturers_id=' . $HTTP_GET_VARS['manufacturers_id'] . '&products_id=' . $listing['products_id']) . '">' .$listing['products_name']. '</a>';
    		} else {
    		 $p_name = $lc_text = '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, ($cPath ? 'cPath=' . $cPath . '&' : '') . 'products_id=' . $listing['products_id']) . '">' .$listing['products_name']. '</a>';
    		}
    		break;
    	  case 'PRODUCT_LIST_MANUFACTURER':
    		$lc_align = '';
    	   $p_manuf = $lc_text = '<a href="' . tep_href_link(FILENAME_DEFAULT, 'manufacturers_id=' . $listing['manufacturers_id']) . '">' . $listing['manufacturers_name'] . '</a>';
    		break;
    	  case 'PRODUCT_LIST_PRICE':
    		$lc_align = 'right';
    		if (tep_not_null($listing['specials_new_products_price'])) {
    		$p_price =  $lc_text = '<s>' .  $currencies->display_price($listing['products_price'], tep_get_tax_rate($listing['products_tax_class_id'])) . '</s>   <span >' . $currencies->display_price($listing['specials_new_products_price'], tep_get_tax_rate($listing['products_tax_class_id'])) . '</span>';
    		} else {
    	   $p_price = $lc_text = '' . $currencies->display_price($listing['products_price'], tep_get_tax_rate($listing['products_tax_class_id'])) . '';
    		}
    		break;
    	  case 'PRODUCT_LIST_QUANTITY':
    		$lc_align = 'right';
    	   $p_quntity = $lc_text = '' . $listing['products_quantity'] . '';
    		break;
    	  case 'PRODUCT_LIST_WEIGHT':
    		$lc_align = 'right';
    		$p_weight = $lc_text = '' . $listing['products_weight'] . '';
    		break;
    	  case 'PRODUCT_LIST_IMAGE':
    		$lc_align = 'center';
    		if (isset($HTTP_GET_VARS['manufacturers_id'])) {
    		 $p_pic =  $lc_text = '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'manufacturers_id=' . $HTTP_GET_VARS['manufacturers_id'] . '&products_id=' . $listing['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $listing['products_image'], $listing['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '</a>';
    		} else {
    		 $p_pic = $lc_text = '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, ($cPath ? 'cPath=' . $cPath . '&' : '') . 'products_id=' . $listing['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $listing['products_image'], $listing['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '</a>';
    		}
    		break;
    	  case 'PRODUCT_LIST_BUY_NOW':
    		$lc_align = 'center';
    		$lc_text = '<a href="' . tep_href_link(basename($PHP_SELF), tep_get_all_get_params(array('action')) . 'action=buy_now&products_id=' . $listing['products_id']) . '">' . tep_image_button('button_buy_now.gif', IMAGE_BUTTON_BUY_NOW) . '</a>';
    		break;
    	}
    
    
    $product_query = tep_db_query("select products_description, products_id from " . TABLE_PRODUCTS_DESCRIPTION . " where products_id = '" . (int)$listing['products_id'] . "' and language_id = '" . (int)$languages_id . "'");
      $product = tep_db_fetch_array($product_query);
    
       	$p_desc = substr($product['products_description'], 0, MAX_DESCR_1);
    	$p_id = $product['products_id'];
    /*		$list_box_contents[$cur_row][] = array('align' => $lc_align,
    										   'params' => '',
    										   'text'  => $lc_text); */
    
    }
    
    
    $info_box_contents[$my_row][$my_col] = array('align' => 'center',
    									   'params' => ' valign="top"',
    									   'text' => ''.tep_draw_prod_top().'
    											<table cellspacing="0" cellpadding="0" border="0" >
    												<tr>
    													<td width="157" height="52" style=" vertical-align:middle;">
    										 			 '.$p_name.'</td>
    												</tr>
    												<tr>
    													<td width="157" height="100" class="pic" align="center">'.$p_pic.'</td>
    												</tr>
    												<tr>
    												 	<td width="87" height="29" align="center"><span>'.$p_price.'</span></td>
    												</tr>									
    												<tr>
    													<td width="157" height="44">
    														<table cellspacing="0" cellpadding="0" border="0" >
    															<tr>
    															<td width="157" height="45">'.$p_desc.'...</td>
    															</tr>
    															<tr><td height="20" align="center">
    																<table cellpadding="0" cellspacing="0" border="0" style=" width:10px;">
    																	<tr><td><a href="' . tep_href_link('product_info.php?products_id='.$p_id) . '">'.tep_image_button("button_details.gif").'</a></td>
    																	<td><img src="images/spacer.gif" width="5" height="1" alt=""></td>
    																	<td><a href="'.tep_href_link("products_new.php","action=buy_now&products_id=".$p_id).'">'.tep_image_button('button_add_to_cart1.gif').'</a><br></td></tr>
    																</table>
    															</td></tr>
    														</table>
    													</td>
    												</tr>
    											</table>									
    								'.tep_draw_prod_bottom());
    
    
    
    
    $my_col ++;
    if ($my_col > 2) {
      $my_col = 0;
    	$my_row ++;
    }
     }
    
    
    
    
    
    echo '</td></tr></table>';
    
    
    new contentBox($info_box_contents); 
    //	new productListingBox($list_box_contents);
    } else {  ?>
    
    
    
    </td></tr></table>
    
    
    
    
    
    
    
    
    <?
    $list_box_contents = array();
    
    $list_box_contents[0] = array('params' => 'class=""');
    $list_box_contents[0][] = array('params' => 'class=""',
    							   'text' => TEXT_NO_PRODUCTS);
    
    //   new productListingBox($list_box_contents);
    echo '<br style="line-height:1px;"><br style="line-height:15px;">
    	<table border="0" cellspacing="0" cellpadding="2" class="infoBox box_width_cont">
    	  <tr class="infoBoxContents">
    		<td>
    			<table cellpadding="0" cellspacing="0" class="sea_2 product">
    				<tr><td>'.TEXT_NO_PRODUCTS.'</td></tr>
    			</table>
    		</td>
    	  </tr>
    </table>
    			';
     }
    
     if ( ($listing_split->number_of_rows > 0) && ((PREV_NEXT_BAR_LOCATION == '2') || (PREV_NEXT_BAR_LOCATION == '3')) ) {
    ?>
    <table border="0" cellspacing="0" cellpadding="0" class="result box_width_cont">
     <tr>
    <td><?php echo $listing_split->display_count(TEXT_DISPLAY_NUMBER_OF_PRODUCTS); ?></td>
    <td class="result_right"><?php echo TEXT_RESULT_PAGE . ' ' . $listing_split->display_links(MAX_DISPLAY_PAGE_LINKS, tep_get_all_get_params(array('page', 'info', 'x', 'y'))); ?></td>
     </tr>
    </table>
    <?php
     }
    ?>

     

    can you tell me how to edit this page to install the mod? cause there are something different in my file and i dont know how to change it

     

    I'm very appreciate for your help and thank you very much!


  4. Skittles

    thanks a lot.i have done the strip function in seo.class.php as your instruction.it converts well :))

    but there are some product links

    http://localhost/shop/-productname-productname--p-1531.html?osCsid=c5849f13b733c5604d936d2c02af00c0

     

    instead of

    http://localhost/shop/productname-productname-p-1531.html?osCsid=c5849f13b733c5604d936d2c02af00c0

    can you tell me how to solve?

    thanks a lot


  5. osclearner,

     

    Those characters are stored in the configuration table. Theoretically, you could changed the table, but not a that's not a good idea.

     

    I helped another member to add a function to the seo.class.php file which converted Cyrillic characters to the Roman Alphabet equivalents. Would something like that work for you?

     

    -Skittles

     

    skittles,thanks a lot . i'm interested in your function to the seo.class.php . If you have free time to help me. i will send you some special characters for my language!

     

    thanks a lot


  6. i get error when enable ultimate SEO,when clicking the "buy now" button in product_listing,it leads to cart but no product is in it (your cart is empty)

    i realize the link when hover to the buy now button is

    http://localhost/shop/cngtccm-c-22.html?pr...e1688cc9274f76f

     

    so i disable ultimate seo and the link become:

    http://localhost/shop/index.php?cPath=22&a...e1688cc9274f76f

    and the problem is fixed

     

    can someone tell me exactly what this problem is and how to fix?i realize "sort2a" in the link but no idea

    thanks a lot

×