kaleido Posted September 15, 2011 Report Share Posted September 15, 2011 Hallo zusammen, ich hoffe ich bin hier richtig mit meinem Problemchen: Ich möchte in der Bestellbestätigungs-Mail (also send_order) die Tabelle mit der Übersicht der bestellten Artikel ergänzen und die "products_description" noch unter "products_name" darstellen. Habe schon vieles versucht, aber ich denke das funktioniert wohl nur über eine foreach-Abfrage, die ich aber leider nicht hinbekomme, da ich kaum PHP-Kenne habe. Einfach nur "<td class="left">{$order_values.products_name}<br />{$order_values.products_description}</td>" ergänzen funktioniert ja leider nicht. Kann mir dabei jemand auf die Sprünge helfen? Dank euch schonmal. Link to comment Share on other sites More sharing options...
kaleido Posted September 16, 2011 Author Report Share Posted September 16, 2011 Hat niemand einen Tipp für mich? Für PHP-Kenner müsste das doch simpel sein, oder? Ich stecke leider noch so gaaaanz am Anfang und schnall die Logik hinter diesen "foreach-Schleifen" nicht richtig. Meine abzurufende Variable steckt in folgendem Pfad: SESSION: Array (... [cart] => cart Object (... [show_content] => Array ( [*Artikel-Variable - abhängig von Art und Anzahl der bestellten Artikel - logisch*] => Array ( [products_description] => Produktbeschreibung, die ich abrufen möchte! Link to comment Share on other sites More sharing options...
oldbear Posted September 16, 2011 Report Share Posted September 16, 2011 naja, eigentlich holt sich die class.order.php zum Zeitpunkt des Mailversands die Daten bereits aus der xt_orders. Aus der Session ist eh etwas blöd, also lieber auf die Tabelle zugreifen: <!-- Variable an php übergeben --> {assign var=products_id value=$order_values.products_id} {php} // Globale Variable global $db, $language; // Holen Template-Variable $products_id = $this->get_template_vars('products_id'); // Datenbank-Zugriff xt_products_description $rs = $db->Execute("SELECT products_description FROM ".TABLE_PRODUCTS_DESCRIPTION." WHERE products_id = '".$products_id."' AND language_code = '".$language->code."'"); // Rückgabe ans Template $this->assign('products_description',$rs->fields['products_description]); {/php} <!-- Ausgabe der mit assign definierten Variable --> {$products_description} Grüsse Link to comment Share on other sites More sharing options...
kaleido Posted September 16, 2011 Author Report Share Posted September 16, 2011 hi oldbear, danke für deine Antwort erstmal. Wo muss ich den Code denn einfügen? Ich habe es in die send_order über den E-Mail-Manager versucht, aber dann leitet der "Bestellung bestätigen"-Butten nur auf eine weiße Seite. gruß Link to comment Share on other sites More sharing options...
oldbear Posted September 16, 2011 Report Share Posted September 16, 2011 da ist noch ein Fehlerchen dringewesen: $this->assign('products_description',$rs->fields['products_description']); Natürlich muss der Code in das foreach der Positionen mit rein, wie Du die Variable {$products_description} weiter ausgibst, muss Du ja selber wissen. mfg P.S.: Garantien für "fehlerfreie" Lösungsansätze gibts hier natürlich nicht, kann nicht jeden Lösungsweg aus lauter Nächstenliebe auch noch austesten ...:-) Link to comment Share on other sites More sharing options...
kaleido Posted September 16, 2011 Author Report Share Posted September 16, 2011 hi oldbear, jouppppiiiii – funktioniert!! Hatte parallel das Skript auch durchgeschaut und das fehlende '-Zeichen entdeckt. Aber bis man diese kleinen "Scheißerchen" alle mal richtig zugeordnet hat, fängt man ja halb an zu Schielen. Sollte auch kein Vorwurf sein, dass hier alles "fehlerfrei" sein muss :-) Für 'nen Laien oft nur schwieriger herauszufinden, wo der Fehler, oder hier das Fehlerchen steckt ;-)) Danke - Danke nochmals vielmal. Da haben sich drei Tage Kopfzerbrechen vor dem Wochenende doch noch in Luftsprünge verwandelt! vg Link to comment Share on other sites More sharing options...
CoE Posted December 17, 2013 Report Share Posted December 17, 2013 Funktioniert 1a, vielen Dank! Hat mir eine Menge Arbeit erspart Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.