繁体   English   中英

joomla - 列出类别下的产品

[英]joomla - List products under category

我会将产品列出到指定的类别,但它不起作用。 我认为它在 sql 查询中的任何地方都是一个错误...

$query = "
            SELECT 
                cat.`name_".$language."` AS catname,
                cat.category_id AS category_id, 
                prod.`name_".$language."` AS prodname,
                prod.product_id AS product_id
            FROM 
                `#__jshopping_products` AS prod
            INNER JOIN 
                `#__jshopping_products_to_categories` AS pr_cat 
            ON 
                pr_cat.product_id = prod.product_id
            LEFT JOIN 
                `#__jshopping_categories` AS cat 
            ON 
                pr_cat.category_id = cat.category_id
            WHERE 
                prod.product_publish = '1'
            AND 
                cat.category_publish='1'
            AND 
                pr_cat.product_id = prod.product_id
            ";
$db->setQuery($query);
$row = $db->loadObjectList();
foreach ($row as $value) {
  print_r("Katname: ".$value->catname."<br>Produkte zur Kategorie: ".$value->prodname."<br><br>");
}

sql表

categories
category_id, name
products
product_id, name
products_to_categories
category_id, product_id

print_r 显示这个:

Katname: Wandbilder
Produkte: Acryl Schild
Katname: Dekoration
Produkte: Pappdisplay
Katname: Wandbilder
Produkte: Pappdisplay
Katname: Dekoration
Produkte: Foto-Tischläufer & Tischdecke
...​

我会打印例如。

Katname: Wandbilder Produkte: Acryl Schild, Pappdisplay, ...
Katname: Dekoration Produkte: Pappdisplay, Foto-Tischläufer & Tischdecke​, ...
....

有人可以帮忙吗?

$query = " SELECT cat. name_".$language." AS catname, cat.category_id AS category_id FROM #__jshopping_categories AS cat

 WHERE cat.category_publish='1' "; $db->setQuery($query); $row = $db->loadObjectList(); foreach ($row as $value) { print_r("<br><br>Katname: ".$value->catname."<br><br>\\n"); $query = " SELECT prod.`name_".$language."` AS prodname, prod.product_id AS product_id FROM `#__jshopping_products` AS prod LEFT JOIN `#__jshopping_products_to_categories` AS pr_cat ON pr_cat.product_id = prod.product_id WHERE prod.product_publish='1' AND pr_cat.category_id = ".$value->category_id." "; $db->setQuery($query); $row = $db->loadObjectList(); foreach ($row as $value) { print_r("Produkte: ".$value->prodname."<br>\\n"); }

}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM