Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Category display problem


Guest

Recommended Posts

When my products display I only get one line of products (a row of 3 products), and no new columns are generating to show the rest of the products on the category page. I imagine the code I'm pasting is causing it as I made an edit (removed a ; to see if I would get a parse error to know I'm working with the right file. Code is below, any help greatly appreciated:

 

<?php

/*

$Id: categories.php,v 1.1.1.1 2003/09/18 19:06:16 wilt Exp $

 

osCommerce, Open Source E-Commerce Solutions

http://www.oscommerce.com

 

Copyright ? 2002 osCommerce

 

Released under the GNU General Public License

 

Shoppe Enhancement Controller - Copyright ? 2003 WebMakers.com

Linda McGrath - [email protected]

*/

 

function tep_show_category($counter) {

global $foo, $categories_string, $id, $aa;

 

for ($a=0; $a<$foo[$counter]['level']; $a++) {

if ($a == $foo[$counter]['level']-1)

{

$categories_string .= "<font color='#000000'>-</font>";

} else

{

$categories_string .= "<font color='#ff0000'> </font>";

}

 

}

if ($foo[$counter]['level'] == 0)

{

if ($aa == 1)

{

$categories_string .= "";

}

else

{$aa=1;}

 

}

 

 

 

$categories_string .= '<nobr><a nowrap href="';

 

if ($foo[$counter]['parent'] == 0) {

$cPath_new = 'cPath=' . $counter;

} else {

$cPath_new = 'cPath=' . $foo[$counter]['path'];

}

 

$categories_string .= tep_href_link(FILENAME_DEFAULT, $cPath_new);

$categories_string .= '">';

 

if ( ($id) && (in_array($counter, $id)) ) {

$categories_string .= "<b><font color='#ff0000'>";

}

 

// display category name

$categories_string .= $foo[$counter]['name'];

 

if ( ($id) && (in_array($counter, $id)) ) {

$categories_string .= '</font></b>';

}

 

// if (tep_has_category_subcategories($counter)) {

// $categories_string .= '->';

// }

 

$categories_string .= '</nobr></a>';

 

// if (SHOW_COUNTS == 'true') {

// $products_in_category = tep_count_products_in_category($counter);

// if ($products_in_category > 0) {

// $categories_string .= ' (' . $products_in_category . ')';

// } }

 

$categories_string .= '<br>';

 

if ($foo[$counter]['next_id']) {

tep_show_category($foo[$counter]['next_id']);

}

}

?>

<!-- categories //-->

<tr>

<td>

<?php

$aa = 0;

$info_box_contents = array();

$info_box_contents[] = array('text' => '<font color="' . $font_color . '">' . BOX_HEADING_CATEGORIES . '</font>');

new infoBoxHeading($info_box_contents, true, false);

 

$categories_string = '';

 

$categories_query = tep_db_query("select c.categories_id, cd.categories_name, c.parent_id from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '0' and c.categories_id = cd.categories_id and cd.language_id='" . $languages_id ."' order by sort_order, cd.categories_name");

while ($categories = tep_db_fetch_array($categories_query)) {

$foo[$categories['categories_id']] = array(

'name' => $categories['categories_name'],

'parent' => $categories['parent_id'],

'level' => 0,

'path' => $categories['categories_id'],

'next_id' => false

);

 

if (isset($prev_id)) {

$foo[$prev_id]['next_id'] = $categories['categories_id'];

}

 

$prev_id = $categories['categories_id'];

 

if (!isset($first_element)) {

$first_element = $categories['categories_id'];

}

}

 

//------------------------

if ($cPath) {

$new_path = '';

$id = split('_', $cPath);

reset($id);

while (list($key, $value) = each($id)) {

unset($prev_id);

unset($first_id);

$categories_query = tep_db_query("select c.categories_id, cd.categories_name, c.parent_id from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '" . $value . "' and c.categories_id = cd.categories_id and cd.language_id='" . $languages_id ."' order by sort_order, cd.categories_name");

$category_check = tep_db_num_rows($categories_query);

if ($category_check > 0) {

$new_path .= $value;

while ($row = tep_db_fetch_array($categories_query)) {

$foo[$row['categories_id']] = array(

'name' => $row['categories_name'],

'parent' => $row['parent_id'],

'level' => $key+1,

'path' => $new_path . '_' . $row['categories_id'],

'next_id' => false

);

 

if (isset($prev_id)) {

$foo[$prev_id]['next_id'] = $row['categories_id'];

}

 

$prev_id = $row['categories_id'];

 

if (!isset($first_id)) {

$first_id = $row['categories_id'];

}

 

$last_id = $row['categories_id'];

}

$foo[$last_id]['next_id'] = $foo[$value]['next_id'];

$foo[$value]['next_id'] = $first_id;

$new_path .= '_';

} else {

break;

}

}

}

tep_show_category($first_element);

 

$info_box_contents = array();

$info_box_contents[] = array('align' => 'left',

'text' => $categories_string

);

 

 

 

//$info_box_contents[] = array('align' => 'center" valign="top',

//'text' => '' . BOX_INFORMATION_ALLPRODS . '</a>');

 

 

 

new infoBox($info_box_contents);

 

?>

 

</td>

</tr>

<!-- categories_eof //-->

Link to comment
Share on other sites

Oh no! My mistake, THIS is what is causing the problem, but I'm just not good enough with coding to figure out why...

<?php

/*

$Id: product_listing_col.php,v 1.1.1.1 2003/09/18 19:04:53 wilt Exp $

*/

 

$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 == '3') ) ) {

?>

<table border="0" width="100%" cellspacing="0" cellpadding="2">

 

</table>

<?php

}

 

$list_box_contents = array();

 

if ($listing_split->number_of_rows > 0) {

$listing_query = tep_db_query($listing_split->sql_query);

 

$row = 0;

$column = 0;

while ($listing = tep_db_fetch_array($listing_query)) {

 

$product_contents = array();

 

for ($col=0, $n=sizeof($column_list); $col<$n; $col++) {

$lc_align = '';

 

switch ($column_list[$col]) {

case 'PRODUCT_LIST_MODEL':

$lc_align = '';

$lc_text = ' ' . $listing['products_model'] . ' ';

break;

case 'PRODUCT_LIST_NAME':

$lc_align = '';

if (isset($HTTP_GET_VARS['manufacturers_id'])) {

$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 {

$lc_text = ' <a href="' . tep_href_link(FILENAME_PRODUCT_INFO, ($cPath ? 'cPath=' . $cPath . '&' : '') . 'products_id=' . $listing['products_id']) . '">' . $listing['products_name'] . '</a><BR> ';

}

break;

case 'PRODUCT_LIST_MANUFACTURER':

$lc_align = '';

$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_get_products_special_price($listing['products_id'])) {

$lc_text = ' <s>' . $currencies->display_price($listing['products_price'], tep_get_tax_rate($listing['products_tax_class_id'])) . '</s>  <span class="productSpecialPrice">' . $currencies->display_price(tep_get_products_special_price($listing['products_id']), tep_get_tax_rate($listing['products_tax_class_id'])) . '</span> ';

 

} else {

$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';

$lc_text = ' ' . $listing['products_quantity'] . ' ';

break;

case 'PRODUCT_LIST_WEIGHT':

$lc_align = 'right';

$lc_text = ' ' . $listing['products_weight'] . ' ';

break;

case 'PRODUCT_LIST_IMAGE':

$lc_align = 'center';

if (isset($HTTP_GET_VARS['manufacturers_id'])) {

$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 {

$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_template_image_button('button_buy_now.gif', IMAGE_BUTTON_BUY_NOW) . '</a> ';

break;

}

$product_contents[] = $lc_text;

 

}

$lc_text = implode('<br>', $product_contents);

$list_box_contents[$row][$column] = array('align' => 'center',

'params' => 'class="productListing-data"',

'text' => $lc_text);

$column ++;

if ($column >= 3) {

$row ++;

$column = 0;

}

}

 

new productListingBox($list_box_contents);

} else {

$list_box_contents = array();

 

$list_box_contents[0] = array('params' => 'class="productListing-odd"');

$list_box_contents[0][] = array('params' => 'class="productListing-data"',

'text' => TEXT_NO_PRODUCTS);

 

new productListingBox($list_box_contents);

}

 

if ( ($listing_split->number_of_rows > 0) && ((PREV_NEXT_BAR_LOCATION == '2') || (PREV_NEXT_BAR_LOCATION == '3')) ) {

?>

<table border="0" width="100%" cellspacing="0" cellpadding="2">

 

</table>

<?php

}

?>

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...