gswkaiser Posted January 12, 2006 Report Share Posted January 12, 2006 Ich habe in einer Kategorie x-Artikel. In dieser Kategorie gibt es weitere Unterkategorien, die aber, zur zus?tzlichen Klassifizierung der x Artikel, nur Kopien der Artikel in der Hauptkatagorie haben. In der Kategoriendarstellung wird nun aber die Summe der Artikel in der Hauptkategorie + der kopierten Artikel in den Unterkategorien angezeigt. Das Problem ist, dass in der Routine xtc_count_products_in_category gnadenlos auch alle Unterkategorien aufsummiert werden, ohne zu pr?fen, ob die Artikel der Unterkategorie nicht schon (durch Kopieren) in der Hauptkategorie enthalten sind. function xtc_count_products_in_category($category_id, $include_inactive = false) { $products_count = 0; $sql_command="select count(distinct p.products_id) as total from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_id = p2c.products_id and p2c.categories_id = '" . $category_id . "'"; if (!$include_inactive) { $sql_command .= " and p.products_status = '1'"; } $products_query = xtc_db_query($sql_command); $products = xtc_db_fetch_array($products_query); $products_count += $products['total']; $child_categories_query = xtc_db_query("select categories_id from " . TABLE_CATEGORIES . " where parent_id = '" . $category_id . "'"); if (xtc_db_num_rows($child_categories_query)) { while ($child_categories = xtc_db_fetch_array($child_categories_query)) { $products_count += xtc_count_products_in_category($child_categories['categories_id'], $include_inactive); } } return $products_count; } Hat jemand das Problem schon mal gel?st?? Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.