Shopsystem ShopPilot

ShopPilot => SSP - Shop Server Pages => SSP Bibliothek => Thema gestartet von: dobra am August 26, 2015, 20:02:11

Titel: Bestseller nur für die jeweilige Kategorie ausgeben
Beitrag von: dobra am August 26, 2015, 20:02:11
Aufgabe:

es sollen in der jeweiligen Katalog-Kategorie nur die Bestseller Artikel aus dieser Kategorie angezeigt werden.

Also z.B bei "Drucker und Zubehör" keine Kabel oder Mäuse sondern nur die Bestseller aus der Kategorie Drucker und Zubehör
(https://www.woll-insel.at/Bilder/SP-Forum/bestseller.jpg)

Lösung:

in iplBestseller.ipl

$query = qq~
SELECT $OITEMS.ITEMID,
Sum($OITEMS.COUNT) AS itemcount
FROM $OITEMS
GROUP BY $OITEMS.ITEMID
ORDER BY itemcount DESC
LIMIT $MAX_OUT
~;

mit

#  Suche auf Unterseiten beschraenken
my $page = $ssp::pgid;
main::getChildCategoriesRecursive($page,\%pages);
my $suchort_sql = " PGID IN (" . join(",", keys(%pages)) . ")";

my $OITEMS = ssp::db_get_prefix() . "OITEMS";
my $ITEM = ssp::db_get_prefix() . "ITEM";

my $query = qq|SELECT $OITEMS.ITEMID, Sum($OITEMS.COUNT) AS itemcount FROM $OITEMS
LEFT JOIN $ITEM ON $OITEMS.ITEMID=$ITEM.ITEMID WHERE $suchort_sql GROUP BY $OITEMS.ITEMID ORDER BY itemcount DESC LIMIT $MAX_OUT|;

ersetzen.

Das ist jetzt nur die Lösung für mySQL - wie/ob es für Access auch funktioniert weiß ich nicht ....