jmartins Posted November 22, 2016 Report Share Posted November 22, 2016 Hallo lieber Forum, ich habe ein Problem mit ein Produkt Filter dropdownbox, dass ich Euch vorstellen wollte. Die dropdownbox wird mit den Werte aus eine MySQL Abfrage bevölkert. Alles ist schön, aber kurz später werden die Dropdownbox Einträge nicht mehr angezeigt, bis man die Cache im Backend löscht (Backend > System > Cache > Cache entleeren > All). Habt Ihr eine Idee warum so ist? Die Dropdown wird in http://MySite/de/search angezeigt mit dem Code, <div class="control-group span6"> <label for="prod_type">Typ</label> {form params='id="prod_type"' type=select name=prod_type class='span12 select-block' default=$default_type value=$type_data} </div> Der Query findet in class.search.php statt mit folgende function: public function getTypeList() { global $db,$language; $prod_types = array(); $query = "SELECT products_type AS id, COUNT(*) AS items, CONCAT(products_type, ' (',COUNT(*),')') AS text FROM xt_products_description WHERE language_code='" . $_SESSION['selected_language'] . "' GROUP BY products_type ORDER BY products_type;"; $rc = $db->Execute($query); if ($rc->RecordCount()>0) { while (!$rc->EOF) { $prod_types[] = $rc->fields; $rc->MoveNext(); } } $rc->Close(); $prod_types = array_slice($prod_types,2); return $prod_types; } Und in search.php wird die function aufgerufen $type_list = $search->getTypeList(); $type_list = array_merge($tmp_data, $type_list) und die variablen werden an dem Template übergeben. Es gibt wahrscheinlich effizienteren Wege, aber so funktioniert es und ich würde gern wissen warum dieses Cache Problem auftaucht. Viele Grüße und ich bedanke mich herzlich für jeden Hinweis. Joao Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.