Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Need a little Help


camaro8

Recommended Posts

Hello

 

Im using one contribution right now for random products on main page and want to install another one that aligns products they both use new_products.php. I cant figure out what code needs to be added to the first randon products new_products.php to make the other one work also.

Code follows

 

Random products code

 

<?php

/*

$Id: new_products.php,v 1.35 2004/02/05 15:50:00 adf Exp $

Randomize New Products

$Id: new_products.php,v 1.34 2003/06/09 22:49:58 hpdl Exp $

 

osCommerce, Open Source E-Commerce Solutions

http://www.oscommerce.com

 

Copyright © 2003 osCommerce

 

Released under the GNU General Public License

*/

?>

<!-- new_products //-->

<?php

$info_box_contents = array();

$info_box_contents[] = array('text' => sprintf(TABLE_HEADING_NEW_PRODUCTS, strftime('%B')));

 

new contentBoxHeading($info_box_contents);

 

if ( (!isset($new_products_category_id)) || ($new_products_category_id == '0') ) {

// start random new products

$new_products_query = tep_db_query("select p.products_id, p.products_image, p.products_tax_class_id, if(s.status, s.specials_new_products_price, p.products_price) as products_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id where products_status = '1' order by p.products_date_added desc limit " . MAX_RANDOM_SELECT_NEW);

} else {

$new_products_query = tep_db_query("select distinct p.products_id, p.products_image, p.products_tax_class_id, if(s.status, s.specials_new_products_price, p.products_price) as products_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c, " . TABLE_CATEGORIES . " c where p.products_id = p2c.products_id and p2c.categories_id = c.categories_id and c.parent_id = '" . (int)$new_products_category_id . "' and p.products_status = '1' order by p.products_date_added desc limit " . MAX_RANDOM_SELECT_NEW);

// end random new products

}

// start random new products

// To configure:

//

// Under Admin - Configuration - Maximum Values

// Set the following:

// 'Selection of Random New Products'

// (MAX_RANDOM_SELECT_NEW) - Sets how many of the most recent new product entries are queried

// 'New Products Module'

// (MAX_DISPLAY_NEW_PRODUCTS) - Sets how many random new products are displayed on screen

//

$row = 0;

$col = 0;

$pCount = 0;

$info_box_contents = array();

$found_products = array();

$num_rows = tep_db_num_rows($new_products_query);

if (MAX_DISPLAY_NEW_PRODUCTS > MAX_RANDOM_SELECT_NEW) {

// don't allow more new products than will be queried

$max_new_products = MAX_RANDOM_SELECT_NEW;

} else {

$max_new_products = MAX_DISPLAY_NEW_PRODUCTS;

}

if ($num_rows < $max_new_products) {

$max_new_products = $num_rows;

}

// echo "num_rows: " . $num_rows . " max_new_products " . $max_new_products . "<br>";

if ($num_rows > 0) {

while ($pCount < $max_new_products) {

// choose a random row

$random_product = '';

$random_row = tep_rand(0, ($num_rows - 1));

tep_db_data_seek($new_products_query, $random_row);

$random_product = tep_db_fetch_array($new_products_query);

// see if found already, if not use else skip

$found = 0;

for ($ii=0; $ii < $pCount; $ii++) {

if ($found_products[$ii] == $random_product['products_id']) {

$found = 1;

break;

}

}

if ($found == 0) {

// keep track of found id's

$found_products[$pCount] += $random_product['products_id'];

$pCount ++;

// add to display array

$random_product['products_name'] = tep_get_products_name($random_product['products_id']);

$info_box_contents[$row][$col] = array('align' => 'center',

'params' => 'class="smallText" width="33%" valign="top"',

'text' => '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $random_product['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $random_product['products_image'], $random_product['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '</a><br><a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $random_product['products_id']) . '">' . $random_product['products_name'] . '</a><br>' . $currencies->display_price($random_product['products_price'], tep_get_tax_rate($random_product['products_tax_class_id'])));

$col ++;

if ($col > 2) {

$col = 0;

$row ++;

}

} // found

} // while pCount

} // num_rows

// end random new products

 

new contentBox($info_box_contents);

?>

<!-- new_products_eof //-->

 

Align products code

 

<?php

/*

$Id: new_products.php,v 1.34 2003/06/09 22:49:58 hpdl Exp $

 

osCommerce, Open Source E-Commerce Solutions

http://www.oscommerce.com

 

Copyright © 2003 osCommerce

 

Released under the GNU General Public License

*/

?>

<!-- new_products //-->

<?php

$info_box_contents = array();

$info_box_contents[] = array('text' => sprintf(TABLE_HEADING_NEW_PRODUCTS, strftime('%B')));

 

if ( (!isset($new_products_category_id)) || ($new_products_category_id == '0') ) {

$new_products_query = tep_db_query("select p.products_id, p.products_image, p.products_tax_class_id, if(s.status, s.specials_new_products_price, p.products_price) as products_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id where products_status = '1' order by p.products_date_added desc limit " . MAX_DISPLAY_NEW_PRODUCTS);

} else {

$new_products_query = tep_db_query("select distinct p.products_id, p.products_image, p.products_tax_class_id, if(s.status, s.specials_new_products_price, p.products_price) as products_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c, " . TABLE_CATEGORIES . " c where p.products_id = p2c.products_id and p2c.categories_id = c.categories_id and c.parent_id = '" . (int)$new_products_category_id . "' and p.products_status = '1' order by p.products_date_added desc limit " . MAX_DISPLAY_NEW_PRODUCTS);

 

if (!tep_db_num_rows($new_products_query)) {

$where_str = "";

$subcategories_array = array();

tep_get_subcategories($subcategories_array, $new_products_category_id);

 

for ($i=0, $n=sizeof($subcategories_array); $i<$n; $i++ ) {

$where_str .= ($where_str == "") ? (int)$subcategories_array[$i] : ", " . (int)$subcategories_array[$i];

}

if ($where_str != "")

$new_products_query = tep_db_query("select distinct p.products_id, p.products_image, p.products_tax_class_id, if(s.status, s.specials_new_products_price, p.products_price) as products_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c, " . TABLE_CATEGORIES . " c where p.products_id = p2c.products_id and p2c.categories_id in (" . $where_str . ") and p.products_status = '1' order by p.products_date_added desc limit " . MAX_DISPLAY_NEW_PRODUCTS);

}

 

}

 

$row = 0;

$nextrow = 1;

$col = 0;

$info_box_contents = array();

while ($new_products = tep_db_fetch_array($new_products_query)) {

$new_products['products_name'] = tep_get_products_name($new_products['products_id']);

$info_box_contents[$row][$col] = array('align' => 'center',

'params' => 'class="smallText" width="33%" valign="middle"',

'text' => '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $new_products['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $new_products['products_image'], $new_products['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '</a>');

$info_box_contents[$nextrow][$col] = array('align' => 'center',

'params' => 'class="smallText" width="33%" valign="top"',

'text' => '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $new_products['products_id']) . '">' . $new_products['products_name'] . '</a><br>' . $currencies->display_price($new_products['products_price'], tep_get_tax_rate($new_products['products_tax_class_id'])));

$col ++;

if ($col > 2) {

$col = 0;

$row = ++ $nextrow;

$nextrow ++;

}

}

 

if (sizeof($info_box_contents)) {

new contentBoxHeading($info_box_contents, false, false);

new contentBox($info_box_contents);

}

?>

<!-- new_products_eof //-->

Any help would be greatly appreciated.

 

Thanks

Chris

Link to comment
Share on other sites

Archived

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

×
×
  • Create New...