Eintragsdetails ansehen
ID | Projekt | Kategorie | Sichtbarkeit | Meldungsdatum | Zuletzt aktualisiert |
---|---|---|---|---|---|
0000176 | WEB-Shop | Frontend | öffentlich | 17.10.2009 20:09 | 16.10.2010 18:54 |
Reporter | xantiva | Bearbeitung durch | |||
Priorität | normal | Schweregrad | kleinerer Fehler | Reproduzierbar | nicht getestet |
Status | anerkannt | Lösung | offen | ||
Produktversion | 1.0.4 | ||||
Zielversion | 1.1 | ||||
Zusammenfassung | 0000176: Optimierung der Abfrage der boxes/whats_new.php im Template | ||||
Beschreibung | htt p ://ww w.ecombase.de/forum/index.php?showtopic=47822&st=10# Zitat aus dem Forum: so, das ding konnt ich mir so nicht anschauen, ich hab da mal unnötiges iterieren durch zu große resultsets, nen komplett ungenutzen aufruf von xtprice und den genauso unnötigen aufruf von xtc_get_products_name (der aber zumindest genutzt wurde) rausgeschmissen, den zufall auf die datenbankengine ausgelagert und das resultset auf 1 limitiert, ihm aber gleichzeitig die bedingung mitgegeben, das in der aktuellen sprache auch ein produktname vorhanden sein muss... die bedingung, das es der maximalen anzeigedauer für neue produkte gehorcht hab ich auch noch mit reingenommen, kommt immer uncool wenn man über den link "neue produkte" dieser box dann auf ne leere seite kommt, dann lieber die box automatisch mit ausblenden wenn keine produkte die bedingung mehr erfüllen das sollte die performance dieser box doch erheblich steigern. | ||||
Zusätzliche Informationen | <?php /* ----------------------------------------------------------------------------------------- $Id: whats_new.php 1292 2005-10-07 16:10:55Z mz $ XT-Commerce - community made shopping http ://w w.xt-commerce.com Copyright (c) 2003 XT-Commerce ----------------------------------------------------------------------------------------- based on: (c) 2000-2001 The Exchange Project (earlier name of osCommerce) (c) 2002-2003 osCommerce(whats_new.php,v 1.31 2003/02/10); www.oscommerce.com (c) 2003 nextcommerce (whats_new.php,v 1.12 2003/08/21); www.nextcommerce.org Released under the GNU General Public License ----------------------------------------------------------------------------------------- Third Party contributions: Enable_Disable_Categories 1.3 Autor: Mikel Williams | mikel@ladykatcostumes.com Performance Mod Autor: Tordt Schmidt | info@smt-webservices.de Released under the GNU General Public License ---------------------------------------------------------------------------------------*/ $box_smarty = new smarty ( ); $box_smarty->assign ( 'tpl_path', 'templates/' . CURRENT_TEMPLATE . '/' ); $box_content = ''; require_once (DIR_FS_INC . 'xtc_get_products_name.inc.php'); //fsk18 lock $fsk_lock = ''; if ($_SESSION ['customers_status'] ['customers_fsk18_display'] == '0') { $fsk_lock = ' AND p.products_fsk18!=1'; } if (GROUP_CHECK == 'true') { $group_check = " AND p.group_permission_" . $_SESSION ['customers_status'] ['customers_status_id'] . "=1 "; } if (MAX_DISPLAY_NEW_PRODUCTS_DAYS != '0') { $date_new_products = date ( "Y-m-d", mktime ( 1, 1, 1, date ( m ), date ( d ) - MAX_DISPLAY_NEW_PRODUCTS_DAYS, date ( Y ) ) ); $days = " and p.products_date_added > '" . $date_new_products . "' "; } $sql = "SELECT DISTINCT p.products_id, p.products_image, p.products_tax_class_id, p.products_vpe, p.products_vpe_status, p.products_vpe_value, p.products_price, pd.products_name FROM " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c, " . TABLE_CATEGORIES . " c, " . TABLE_PRODUCTS_DESCRIPTION . " pd WHERE p.products_status=1 AND pd.products_id=p.products_id AND pd.language_id=" . $_SESSION ['languages_id'] . " AND pd.products_name!='' AND p.products_id = p2c.products_id AND p.products_id !='" . ( int ) $_GET ['products_id'] . "' AND c.categories_id = p2c.categories_id " . $group_check . " " . $fsk_lock . " ".$days." AND c.categories_status=1 ORDER BY RAND(), p.products_date_added DESC LIMIT 0,1"; $res = xtc_db_query ( $sql ); if ($random_product = mysql_fetch_assoc ( $res )) { $box_smarty->assign ( 'box_content', $product->buildDataArray ( $random_product ) ); $box_smarty->assign ( 'LINK_NEW_PRODUCTS', xtc_href_link ( FILENAME_PRODUCTS_NEW ) ); $box_smarty->assign ( 'language', $_SESSION ['language'] ); // set cache ID if (! CacheCheck ()) { $box_smarty->caching = 0; $box_whats_new = $box_smarty->fetch ( CURRENT_TEMPLATE . '/boxes/box_whatsnew.html' ); } else { $box_smarty->caching = 1; $box_smarty->cache_lifetime = CACHE_LIFETIME; $box_smarty->cache_modified_check = CACHE_CHECK; $cache_id = $_SESSION ['language'] . $random_product ['products_id'] . $_SESSION ['customers_status'] ['customers_status_name']; $box_whats_new = $box_smarty->fetch ( CURRENT_TEMPLATE . '/boxes/box_whatsnew.html', $cache_id ); } $smarty->assign ( 'box_WHATSNEW', $box_whats_new ); } ?> | ||||
Tags | Keine Tags zugeordnet. | ||||
Änderungsdatum | Benutzername | Feld | Änderung |
---|---|---|---|
17.10.2009 20:09 | xantiva | Neuer Eintrag | |
17.10.2009 20:10 | xantiva | Beschreibung aktualisiert | |
17.10.2009 20:10 | xantiva | Zusätzliche Informationen aktualisiert | |
17.10.2009 20:10 | xantiva | Status | neu => anerkannt |
16.10.2010 18:54 | xantiva | Beschreibung aktualisiert | |
16.10.2010 18:54 | xantiva | Zusätzliche Informationen aktualisiert |