Post by crt-inc » Wed Jun 24, 2009 9:48 pm

I can have only one related product? am trying to add more than 1 related product to another one in a different category or same and i just can get one showing up on related products.

I read around looks like a bug? but daniel said it was fixed on the latest release? i just installed the shopping cart yesterday so is the latest version.

Thanks for any help

New member

Posts

Joined
Wed Jun 24, 2009 3:55 am

Post by readyman » Thu Jun 25, 2009 12:43 pm

yep same here... version 1.2.9 - I'll have a look at this one later today.

http://www.alreadymade.com
Follow me on twitter.com/alreadymade


User avatar
Global Moderator

Posts

Joined
Wed May 20, 2009 5:16 am
Location - Sydney

Post by readyman » Thu Jun 25, 2009 10:51 pm

In catalog/model/catalog/product.php in the function getProductsRelated and the very long sql query...

Look for language_id = '" . (int)$this->language->getId() . "' GROUP BY pr.product_id ORDER BY pd.name ASC");

Delete bolded.

Here's the entire 'new' sql for you. Works for me... Daniel or other admin, please confirm this 'fix'.

Code: Select all

$query = $this->db->query("SELECT *, pd.name AS name, p.image, m.name AS manufacturer, ss.name AS stock, (SELECT AVG(r.rating) FROM " . DB_PREFIX . "review r WHERE p.product_id = r.product_id GROUP BY r.product_id) AS rating FROM " . DB_PREFIX . "product_related pr LEFT JOIN " . DB_PREFIX . "product p ON (pr.related_id = p.product_id) LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "manufacturer m ON (p.manufacturer_id = m.manufacturer_id) LEFT JOIN " . DB_PREFIX . "stock_status ss ON (p.stock_status_id = ss.stock_status_id) LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p.product_id = p2c.product_id) WHERE pr.product_id = '" . (int)$product_id . "' AND p.status = '1' AND p.date_available <= NOW() AND pd.language_id = '" . (int)$this->language->getId() . "' AND ss.language_id = '" . (int)$this->language->getId() . "' ORDER BY pd.name ASC");

http://www.alreadymade.com
Follow me on twitter.com/alreadymade


User avatar
Global Moderator

Posts

Joined
Wed May 20, 2009 5:16 am
Location - Sydney

Post by crt-inc » Thu Jun 25, 2009 11:29 pm

Well it is working now for me as far i add 2 new products, now shows me 2 products on the related items let me add more products and i'll edit the post

Edit: Yes it's working now, thanks so much

New member

Posts

Joined
Wed Jun 24, 2009 3:55 am

Post by Bugbites » Thu Jun 25, 2009 11:47 pm

Hi,

I have a different related products issue. It displays 2 of the same product on the front end. I tried using the code pasted above but i get an error that a table does not exist. Here is an example of what it is doing...

http://www.discountdesignerhardware.com ... uct_id=216

here is the sql query

Code: Select all

public function getProductRelated($product_id) {
		$query = $this->db->query("SELECT *, pd.name AS name, p.image, m.name AS manufacturer, ss.name AS stock, (SELECT AVG(r.rating) FROM review r WHERE p.product_id = r.product_id GROUP BY r.product_id) AS rating FROM product_related pr LEFT JOIN product p ON (pr.related_id = p.product_id) LEFT JOIN product_description pd ON (p.product_id = pd.product_id) LEFT JOIN manufacturer m ON (p.manufacturer_id = m.manufacturer_id) LEFT JOIN stock_status ss ON (p.stock_status_id = ss.stock_status_id) LEFT JOIN product_to_category p2c ON (p.product_id = p2c.product_id) WHERE pr.product_id = '" . (int)$product_id . "' AND p.status = '1' AND p.date_available <= NOW() AND pd.language_id = '" . (int)$this->language->getId() . "' AND ss.language_id = '" . (int)$this->language->getId() . "' ORDER BY pd.name ASC");
		
		return $query->rows;
And this is in the template to display the related products

Code: Select all

<?php if ($products) { ?>
    <table class="list">
      <?php for ($i = 0; $i < sizeof($products); $i = $i + 4) { ?>
      <tr>
        <?php for ($j = $i; $j < ($i + 4); $j++) { ?>
        <td width="25%"><?php if (isset($products[$j])) { ?>
          <a href="<?php echo $products[$j]['href']; ?>"><img src="<?php echo $products[$j]['thumb']; ?>" title="<?php echo $products[$j]['name']; ?>" alt="<?php echo $products[$j]['name']; ?>" /></a><br />
          <a href="<?php echo $products[$j]['href']; ?>"><?php echo $products[$j]['name']; ?></a><br />
          <span style="color: #999; font-size: 11px;"><?php echo $products[$j]['model']; ?></span><br />
          <?php if (!$products[$j]['special']) { ?>
          <span style="color: #900; font-weight: bold;"><?php echo $products[$j]['price']; ?></span><br />
          <?php } else { ?>
          <span style="color: #900; font-weight: bold; text-decoration: line-through;"><?php echo $products[$j]['price']; ?></span> <span style="color: #F00;"><?php echo $products[$j]['special']; ?></span>
          <?php } ?>
          <?php if ($products[$j]['rating']) { ?>
          <img src="catalog/view/theme/default/image/stars_<?php echo $products[$j]['rating'] . '.png'; ?>" alt="<?php echo $products[$j]['stars']; ?>" />
          <?php } ?>
          <?php } ?>

New member

Posts

Joined
Tue Jun 02, 2009 1:10 am

Post by crt-inc » Thu Jun 25, 2009 11:57 pm

what is your cart version? i have the latest one and this works for me and i don't have the problem that you say

check here: http://68.196.1.236/store/index.php?rou ... duct_id=52

New member

Posts

Joined
Wed Jun 24, 2009 3:55 am

Post by Bugbites » Fri Jun 26, 2009 12:01 am

Yes I also have the latest version. I.2.8

New member

Posts

Joined
Tue Jun 02, 2009 1:10 am

Post by crt-inc » Fri Jun 26, 2009 12:15 am

Nop, latest is 1.2.9 check it

New member

Posts

Joined
Wed Jun 24, 2009 3:55 am

Post by Bugbites » Fri Jun 26, 2009 12:22 am

Oh I see. Do you know of a solution that I can fix my issue with? I have 2 mods that I do not want to loss by upgrading. Does the upgrade effect mods?

New member

Posts

Joined
Tue Jun 02, 2009 1:10 am

Post by crt-inc » Fri Jun 26, 2009 12:26 am

well maybe the others guys can, i just started to work on this cart since 3 days ago and i liked so much but still i have a long way to go to learn more.

New member

Posts

Joined
Wed Jun 24, 2009 3:55 am

Post by readyman » Fri Jun 26, 2009 11:57 am

You would have to be specific about the problems that you are having in those mods for me to help. Maybe you could start a different topic.

http://www.alreadymade.com
Follow me on twitter.com/alreadymade


User avatar
Global Moderator

Posts

Joined
Wed May 20, 2009 5:16 am
Location - Sydney

Post by kdmp » Tue Jul 21, 2009 1:56 am

readyman wrote:In catalog/model/catalog/product.php in the function getProductsRelated and the very long sql query...

Look for language_id = '" . (int)$this->language->getId() . "' GROUP BY pr.product_id ORDER BY pd.name ASC");

Delete bolded.
Okay when I used the provided correction by readyman the related products were doubling up and in some cases tripling. I think I have resolved this by simply changing it to this:
...language_id = '" . (int)$this->language->getId() . "' GROUP BY pd.product_id ORDER BY pd.name ASC");
Change the PR to PD and that will stop the 'doubling' / 'tripling' :)

Kevin Davidson
Purolator Shipping Module
Canpar Shipping Module
VQMod - Paypal Transaction ID to Payment Details


Active Member

Posts

Joined
Thu Jun 04, 2009 10:40 am
Location - Ontario, Canada
Who is online

Users browsing this forum: HAO and 141 guests