Zum Inhalt springen

tt_products und HTML Mails

Erstellt am 29. März 2006 · 24 Antworten · letzte Antwort am 11. April 2006 · Seite 1 von 2

Tags: E-Mail-Versand, Frage

Unbekannter Benutzer ·

Hallo Flink!

Ich hab in der Online Repository nachgeschaut, die aktuelle Version von Table Library ist aber 0.0.9. Wie soll ich auf 0.0.10 aktualisieren?

LG,

Emanuel

Unbekannter Benutzer ·

Hi Flink!

Nachdem ich beide Verzeichnisse auf meinem Server aktualisiert habe, erscheint folgender Fehlerhinweis:

Warning: main(/htdocs/cms/typo3conf/ext/tt_products/lib/class.tx_ttproducts_article.php): failed to open stream: No such file or directory in htdocs/cms/typo3conf/ext/tt_products/pi1/class.tx_ttproducts_pi1.php on line 51

Fatal error: main(): Failed opening required htdocs/cms/typo3conf/ext/tt_products/lib/class.tx_ttproducts_article.php' (include_path='.:/usr/local/lib/php') in htdocs/cms/typo3conf/ext/tt_products/pi1/class.tx_ttproducts_pi1.php on line 51

In der Zeile 51 in der Datei class.tx_ttproducts_pi1.php steht

require_once(PATH_BE_fh_library.'/sysext/cms/tslib/class.fhlibrary_pibase.php');

Unbekannter Benutzer ·

Jetzt funktioniert die ganze Seite nicht!! :o :o
Komisch, die Datei class.fhlibrary_pibase.php existiert aber. Was hab ich denn jetzt falsch gemacht?

Bitte um Hilfe!

Unbekannter Benutzer ·

Tja, hab's wieder hinbekommen.
Hab die Extension tt_products entfernt und wieder neu eingefügt.

Tja, das mit der E-Mail funktioniert aber trotzdem nicht.

Hab folgende Versionen:

tt_products: 2.4.9
fh_library: 0.0.8

Was empfehlt ihr mir?

Unbekannter Benutzer ·

Habe deine Dateien upgedatet auf meinem Server.
Es erscheinen aber folgende Fehler:

Warning: Missing argument 5 for init() in /var/www/webs/phpgrocomat/web/htdocs/cms/typo3conf/ext/tt_products/lib/class.tx_ttproducts_article.php on line 55

Warning: Missing argument 6 for init() in /var/www/webs/phpgrocomat/web/htdocs/cms/typo3conf/ext/tt_products/lib/class.tx_ttproducts_article.php on line 55

Warning: Missing argument 7 for init() in /var/www/webs/phpgrocomat/web/htdocs/cms/typo3conf/ext/tt_products/lib/class.tx_ttproducts_article.php on line 55

Warning: Missing argument 2 for init() in /var/www/webs/phpgrocomat/web/htdocs/cms/typo3conf/ext/tt_products/lib/class.tx_ttproducts_category.php on line 53

Warning: Missing argument 3 for init() in /var/www/webs/phpgrocomat/web/htdocs/cms/typo3conf/ext/tt_products/lib/class.tx_ttproducts_category.php on line 53

Warning: Missing argument 4 for init() in /var/www/webs/phpgrocomat/web/htdocs/cms/typo3conf/ext/tt_products/lib/class.tx_ttproducts_category.php on line 53

Warning: Missing argument 5 for init() in /var/www/webs/phpgrocomat/web/htdocs/cms/typo3conf/ext/tt_products/lib/class.tx_ttproducts_category.php on line 53

Fatal error: Call to undefined function: setnotcafieldarray() in /var/www/webs/phpgrocomat/web/htdocs/cms/typo3conf/ext/tt_products/lib/class.tx_ttproducts_category.php on line 62

Unbekannter Benutzer ·

Hi Flink!

Danke für deine Bemühungen, aber es funktioniert noch immer nicht. Der einzige Unterschied ist jetzt der, dass zwar die Seite angezeigt wird, oberhalb des Layouts aber wieder folgender Output ausgegeben wird:

Warning: Missing argument 5 for init() in /var/www/webs/phpgrocomat/web/htdocs/cms/typo3conf/ext/tt_products/lib/class.tx_ttproducts_article.php on line 55

Warning: Missing argument 6 for init() in /var/www/webs/phpgrocomat/web/htdocs/cms/typo3conf/ext/tt_products/lib/class.tx_ttproducts_article.php on line 55

Warning: Missing argument 7 for init() in /var/www/webs/phpgrocomat/web/htdocs/cms/typo3conf/ext/tt_products/lib/class.tx_ttproducts_article.php on line 55

Warning: Missing argument 2 for init() in /var/www/webs/phpgrocomat/web/htdocs/cms/typo3conf/ext/tt_products/lib/class.tx_ttproducts_category.php on line 53

Warning: Missing argument 3 for init() in /var/www/webs/phpgrocomat/web/htdocs/cms/typo3conf/ext/tt_products/lib/class.tx_ttproducts_category.php on line 53

Warning: Missing argument 4 for init() in /var/www/webs/phpgrocomat/web/htdocs/cms/typo3conf/ext/tt_products/lib/class.tx_ttproducts_category.php on line 53

Warning: Missing argument 5 for init() in /var/www/webs/phpgrocomat/web/htdocs/cms/typo3conf/ext/tt_products/lib/class.tx_ttproducts_category.php on line 53

Warning: Cannot modify header information - headers already sent by (output started at /var/www/webs/phpgrocomat/web/htdocs/cms/typo3conf/ext/tt_products/lib/class.tx_ttproducts_article.php:55) in /var/www/webs/phpgrocomat/web/htdocs/cms/tslib/class.tslib_fe.php on line 2612

Was ist denn bei deinen Dateien anders?
Woran liegt es denn, dass die HTML Formatierung nicht gesendet wird? Vielleicht kann ich es selbst programmieren.

LG #paralyzed#

Flink ·
$this->tt_products_articles->init($this,$this->conf,$this->config,$this->tt_products,$this->LLkey, $this->conf['table.']['tt_products_articles'],$this->conf['table.']['tt_products_articles.']);

function init(&$pibase, &$conf, &$config, &$tt_products, $LLkey, $tablename, &$tableconf)  {

Die Anzahl der Parameter muß hier übereinstimmen. Hast du tatsächlich die angegebenen Dateien verwendet?

Überprüfe die init-Methoden in der Datei pi1/class.tx_ttproducts_pi1.php. Hier stimmt etwas nicht, denn sonst müßte ich ja auch auf dieselben Fehlermeldungen stoßen.

Unbekannter Benutzer ·

Hab's noch einmal probiert. Jetzt wird der Shop angezeigt.

Nach dem Drücken des Buttons "Bestellung versenden" wird aber folgendes angezeigt:

Fatal error: Call to a member function on a non-object in /htdocs/cms/typo3conf/ext/tt_products/lib/class.tx_ttproducts_email.php on line 56

In dieser Datei auf Zeile 56 steht

$this->table->addDefaultFieldArray(array('sorting' => 'sorting'));

Was für mich aber ziemlich verwirrend ist. #paralyzed#

Hab grad gesehen, dass du der Autor von dieser Datei bist, Flink!
Hoffe, du kannst mir weiterhelfen.

Flink ·

#angry#

class tx_ttproducts_email {
	var $emailArray;	// array of read in emails
	var $table;		 // object of the type tx_table_db

	/**
	 * Getting all tt_products_cat categories into internal array
	 */
	function init() {
		global $TYPO3_DB;
		
		$this->table = t3lib_div::makeInstance('tx_table_db');
		$this->table->addDefaultFieldArray(array('sorting' => 'sorting'));
		$this->table->setTCAFieldArray('tt_products_emails');
	} // init


	function getEmail ($uid) {
		global $TYPO3_DB;
		$rc = $this->emailArray[$uid];;
		if (!$rc) {
			$sql = t3lib_div::makeInstance('tx_table_db_access');
			$sql->prepareFields($this->table, 'select', '*');
			$sql->prepareWhereFields ($this->table, 'uid', '=', $uid);
			$this->table->enableFields('tt_products_emails');
			// Fetching the email
			$res = $sql->exec_SELECTquery();
			$row = $TYPO3_DB->sql_fetch_assoc($res);
			$rc = $this->emailArray[$row['uid']] = $row;
		}
		return $rc;
	}


}
Unbekannter Benutzer ·

Hi!

Es funktioniert nun.
Aber die E-Mail wird trotzdem nicht im HTML Format versendet.
Muss ich in meiner Shop tmpl Datei einen eigenen Bereich für die HTML Formatierung definieren?

Ich möchte nämlich die Bestellnummer fett markieren.
Wenn ich in meiner jetzigen Template Datei <b> und </b> reinschreibe, wird <b> und </b> auch in der E-Mail angezeigt.

LG

Flink ·
::emanuel:: schrieb

Aber die E-Mail wird trotzdem nicht im HTML Format versendet.
Muss ich in meiner Shop tmpl Datei einen eigenen Bereich für die HTML Formatierung definieren?

###EMAIL_PLAINTEXT_TEMPLATE### und ###EMAIL_HTML_SHELL###

::emanuel:: schrieb

Ich möchte nämlich die Bestellnummer fett markieren.
Wenn ich in meiner jetzigen Template Datei <b> und </b> reinschreibe, wird <b> und </b> auch in der E-Mail angezeigt.

Ja, erst als HTML-Email kann das auch berücksichtigt werden.

Unbekannter Benutzer ·

Danke für deine Hilfe Flink!

Die E-Mail wird nun im HTML Format versendet.
In der Mail werden aber alle Marker dargestellt - also nicht der eigentliche Wert des Markers:

Ihre Bestellung ####ORDER_UID###

Flink ·
::emanuel:: schrieb

In der Mail werden aber alle Marker dargestellt - also nicht der eigentliche Wert des Markers:

Ihre Bestellung ####ORDER_UID###

Wie hast du das gemacht, daß die Marker nicht ersetzt werden? Verwendest du ein eigenes Bezahlskript?

Unbekannter Benutzer ·

Hi Flink!

Nun, ich weiß auch nicht. Beim Plaintext E-Mail Template werden die Marker ersetzt.
Hier der Bereich meines Plaintext Templates:

<!-- ###EMAIL_PLAINTEXT_TEMPLATE### begin
Subpart used as template for the order-emails
First line is used as subject for the mail.
-->

Test - Ihre Bestellung ####ORDER_UID###

Auftragsbestätigung: 

Vielen Dank für Ihre Bestellung!
Ihre Bestellung ist vollständig und hat folgende Bestellnummer:

<b>###ORDER_UID###</b>

Bitte nutzen Sie die Bestellnummer als Referenz, wenn Sie uns kontaktieren.

Ihre Trackingnummer lautet 

<b>###ORDER_TRACKING_NO###</b>

Mit dieser Nummer können Sie Ihre Bestellung online verfolgen.

BESTELLUNG:

1) Produkt:
<!-- ###ITEM_CATEGORY_AND_ITEMS### --><!-- ###ITEM_LIST### begin --><!-- ###ITEM_SINGLE### begin-->
Produktname: ###PRODUCT_TITLE###
Artikel-Nummer: ###PRODUCT_ITEMNUMBER###
Preis: ###PRICE_TAX### Euro
Menge: ###FIELD_QTY### = ###PRICE_TOTAL_TAX### EURO
<!-- ###ITEM_SINGLE### end --><!-- ###ITEM_LIST### end --><!-- ###ITEM_CATEGORY_AND_ITEMS###  end -->
2) Rechnungsadresse:
###PERSON_NAME###
###PERSON_ADDRESS###
Telefon: ###PERSON_TELEPHONE###
Email: ###PERSON_EMAIL###

3) Lieferadresse:
###DELIVERY_ADDRESS###
Name: ###DELIVERY_NAME###
Telefon: ###DELIVERY_TELEPHONE###
Email: ###DELIVERY_EMAIL###

5) Versand:
###SHIPPING_TITLE###

6) Zahlungsart:
###PAYMENT_TITLE###


Rechnungsendbetrag: Euro ###PRICE_TOTAL_TAX###

(Netto: ###PRICE_TOTAL_NO_TAX###)


Mit freundlichen Grüßen


Tesdt

<!-- ###EMAIL_PLAINTEXT_TEMPLATE### end -->

Beim HTML E-Mail Template hab ich einfach diesen Bereich nach unten kopiert und den Marker mit EMAIL_HTML_SHELL ersetzt. Also einfach statt

###EMAIL_PLAINTEXT_TEMPLATE###

###EMAIL_HTML_SHELL###

Alles andere bleibt gleich.
Hast du vielleicht eine Ahnung?

Flink ·
::emanuel:: schrieb

Also einfach statt

###EMAIL_PLAINTEXT_TEMPLATE###

###EMAIL_HTML_SHELL###

Alles andere bleibt gleich.
Hast du vielleicht eine Ahnung?

Das ist falsch.

Der ###EMAIL_HTML_SHELL### muß anders aussehen.

<!-- ###EMAIL_HTML_SHELL### begin -->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>

<style type="text/css">
<!--

		select  {  font-family: Verdana, Arial, Helvetica; font-size: 10px }
		textarea  {  font-family: Verdana, Arial, Helvetica; font-size: 10px}
		input   {  font-family: Verdana, Arial, Helvetica; font-size: 10px }

-->
</style>
<title>bananaguard.de: Bezahlung / Versand</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta name="generator" content="TYPO3 3.8 CMS" />

<script language="javascript" type="text/javascript">
<!--
	browserName = navigator.appName;
	browserVer = parseInt(navigator.appVersion);
	var msie4 = (browserName == "Microsoft Internet Explorer" && browserVer >= 4);
	if ((browserName == "Netscape" && browserVer >= 3) || msie4) {version = "n3";} else {version = "n2";}

	function openPic(url,winName,winParams)	{
		var theWindow = window.open(url,winName,winParams);
		if (theWindow)	{theWindow.focus();}
	}
	function blurLink(theObject)	{
		if (msie4)	{
			theObject.blur();
		}
	}


// End Hiding Script -->
</script>

</head>
<body bgcolor="#FBF9F7" link="black" vlink="black" alink="black" leftmargin="10" topmargin="10" marginwidth="10" marginheight="10">

###HTML_BODY###

</body></html>

<!-- ###EMAIL_HTML_SHELL### end -->
Unbekannter Benutzer ·

Hallo Flink!!

😃 Es funktioniert!!!
Danke, du warst mir wirklich eine sehr sehr große Hilfe!
Ich hab auch noch zusätzliche Felder eingebaut. Den Hinweis wie es funktioniert hab ich auch von einem Tip von dir einem anderen Thread! Spitze!

Eine letzte Frage hätt i dann aber noch:

nimmt ###HTML_BODY### die Formatierungen von der letzten Seite des Bestellprozesses - also Auftragsbestätigung?

Kann es sein dass <!-- ###MESSAGE_PAYMENT### --> für die Formatierung zuständig ist?

LG

Flink ·
::emanuel:: schrieb

nimmt ###HTML_BODY### die Formatierungen von der letzten Seite des Bestellprozesses - also Auftragsbestätigung?

Das liest den Bereich der normalen Email aus ###EMAIL_PLAINTEXT_TEMPLATE### ein.

Andreas2000 ·

So - ich hab jetzt tt_products auf 2.4.10 upgedatet - ebenso die table library. Nun habe ich wieder das Phänomen, daß die Produkte leider nicht mehr mehrspaltig angezeigt werden - unter 2.4.9 hats noch funktioniert...
Eine Idee worans liegen könnte?