Jump to content
xt:Commerce Community Forum

Bestellstatus E-Mail / {$nr} / {$date} wird nicht ausgefüllt


arnie83

Recommended Posts

Hallo Leute,

ich habe ein ganz großes Problem.

Wenn ich meinen Kunden den Bestellstatus ändere bekommen diese

dann automatisch eine E-Mail zugesandt. Das Probelm das jetzt

auftritt ist, das in der Betreffzeile folgendes steht:

Online-Shop Bestell-Nr:{$nr} / {$date}

Der Shop trägt irgendwie die Bestellnummer und das Datum nicht ein!!!!!

Bei einer Bestellung von einem Kunden funktioniert das aber nur bei einer änderung des Bestellstatus nicht.

Wie kann ich das Problem lösen bzw. Die Betreffzeile beim Bestellstatus ändern?????

DANKE

Link to comment
Share on other sites

  • 1 month later...
  • Replies 51
  • Created
  • Last Reply

Das Problem habe ich auch. Funktionieren diese $-Variablen etwa nur im unteren Feld "Verrechnung - Email-Betreff", das dann auch mit dem Hinweis auf diese Variablen untertitelt ist?:confused:

Bei einer großen Menge Bestellungen, ist das sehr unpraktisch, wenn man vom Kunden eine Mail aufgrund einer Änderung des Bestellstatus zurückbekommt und dort im Betreff die Bestellungs-Nummer nicht angezeigt werden kann (etwas wenn der Kunde das ursprüngliche Mail aus dem Text entfernt hat). Dann sucht man alle Bestellungen durch...

Gruß

W.

Link to comment
Share on other sites

  • 2 months later...
  • 3 weeks later...
  • 1 month later...

hallo

habe es angesehen, ausprobiert und wieder gelassen. beim mir funzt das überhaupt nicht. :(

es geht darin vorallem um den text mit den zusatzangaben in der besagten mail. und nicht um die betreff-zeile, wie hier bei uns...

zusätzlich, es ist ein beitrag aus dem letzten jahr und deswegen glaube ich, dass es auf der neusten version nicht funktioniert.

ich denke in einem solchen fall wäre der Administrator gefragt oder die Entwickler oder so... :D

Link to comment
Share on other sites

  • 4 months later...

Der Betreff der Infomail an den Kunden soll wie bei der Bestellbestätigung aussehen ” Ihre Bestellung Nr: 11 vom Montag, 27. Februar 2006 ”

Dazu in der \admin\orders.php folgenden Code: ca Zeile 245

xtc_php_mail(EMAIL_BILLING_ADDRESS, EMAIL_BILLING_NAME, $check_status[’customers_email_address’],

$check_status[’customers_name’], ‘’, EMAIL_BILLING_REPLY_ADDRESS,

EMAIL_BILLING_REPLY_ADDRESS_NAME, ‘’, ‘’, EMAIL_BILLING_SUBJECT, $html_mail, $txt_mail);

durch diesen Code ersetzen:

// create subject

$order_subject = str_replace('{$nr}', $oID, EMAIL_BILLING_SUBJECT);

$order_subject = str_replace('{$date}', strftime(DATE_FORMAT_LONG), $order_subject);

$order_subject = str_replace('{$lastname}', $order->customer['lastname'], $order_subject);

$order_subject = str_replace('{$firstname}', $order->customer['firstname'], $order_subject);

xtc_php_mail(EMAIL_BILLING_ADDRESS, EMAIL_BILLING_NAME, $check_status['customers_email_address'],

$check_status['customers_name'], '', EMAIL_BILLING_REPLY_ADDRESS,

EMAIL_BILLING_REPLY_ADDRESS_NAME, '', '', $order_subject, $html_mail, $txt_mail);

Das sollte funktionieren.

Link to comment
Share on other sites

  • 4 weeks later...

hallo ulysses

leider finde ich an der von dir beschriebenen stelle:

...

Dazu in der \admin\orders.php folgenden Code: ca Zeile 245

xtc_php_mail(EMAIL_BILLING_ADDRESS, EMAIL_BILLING_NAME, $check_status[’customers_email_address’],

$check_status[’customers_name’], ‘’, EMAIL_BILLING_REPLY_ADDRESS,

EMAIL_BILLING_REPLY_ADDRESS_NAME, ‘’, ‘’, EMAIL_BILLING_SUBJECT, $html_mail, $txt_mail);

durch diesen Code ersetzen:...

keinen solchen bereich...

vielleicht meintest du eine andere datei?

grüsse

Link to comment
Share on other sites

  • 4 weeks later...
  • 1 month later...
  • 4 weeks later...
  • 3 weeks later...

Hallo, doch die Lösung gibt es!

In admin/ order.php in Zeile ca. 114 folgendes einfügen:

//xtc_php_mail(EMAIL_BILLING_ADDRESS,EMAIL_BILLING_NAME , $check_status['customers_email_address'], $check_status['customers_name'], '', EMAIL_BILLING_REPLY_ADDRESS, EMAIL_BILLING_REPLY_ADDRESS_NAME, '', '', EMAIL_BILLING_SUBJECT, $html_mail , $txt_mail);

				$billing_subject=str_replace('{$nr}',$oID,EMAIL_BILLING_SUBJECT);

				$billing_subject=str_replace('{$date}',xtc_date_long($check_status['date_purchased']),$billing_subject);

				$billing_subject=str_replace('{$name}',$check_status['customers_name'],$billing_subject);


				xtc_php_mail(EMAIL_BILLING_ADDRESS,EMAIL_BILLING_NAME , $check_status['customers_email_address'], $check_status['customers_name'], '', EMAIL_BILLING_REPLY_ADDRESS, EMAIL_BILLING_REPLY_ADDRESS_NAME, '', '', $billing_subject, $html_mail , $txt_mail);

			}

			xtc_db_query("insert into ".TABLE_ORDERS_STATUS_HISTORY." (orders_id, orders_status_id, date_added, customer_notified, comments) values ('".xtc_db_input($oID)."', '".xtc_db_input($status)."', now(), '".$customer_notified."', '".xtc_db_input($comments)."')");

Funktioniert!:D

Link to comment
Share on other sites

Hey artep0123,

erst mal danke für den code. Hat bei mir auch geklappt.

Aber noch ein kleiner Tipp: Beim einflegen von dem Code ist mir eine kleine Sache aufgefallen. Mann sollte den Quellcode an dieser Stelle nicht einfach nur einfügen sondern wirklich ersetzen. Ich hatte nämlich so das Problem, dass der Kunde jedesmal zwei Mails bekommtm hat. Eine wo die Betreffzeile richtig angezeit wird und eine wo sie falsch angezeigt wird. Das lag daran, dass mein sytsem einmal vor den Strings "str_replace" eine Mail verschickt und einmal danach. Folglich war nur die E-Mail danach richitg angezeigt worden.

Ich bin jetzt kein PHP Crack habe aber durch logische Denkensweise und ein bischen herumbasteln das herausgefunden. Vielleicht weißt das auch jeder schon aber ich habe gedacht schreib ich das einfach mal.

Will mich hier auch in Zukunft weiter beteiligen. Aber genung davon, soll ja nicht off topic werden.

Also nochmals Danke und allen ein schönes Wochende.

Link to comment
Share on other sites

Die Änderung habe ich eingebaut, aber bei mir zeigt er immer noch nicht die gewünschte Betreffzeile. Wie kommts?

Kann meinen Fehler nicht sehen.

Habe die folgende Zeile

xtc_php_mail(EMAIL_BILLING_ADDRESS, EMAIL_BILLING_NAME, $check_status['customers_email_address'], $check_status['customers_name'], '', EMAIL_BILLING_REPLY_ADDRESS, EMAIL_BILLING_REPLY_ADDRESS_NAME, '', '', EMAIL_BILLING_SUBJECT, $html_mail, $txt_mail);[/Code]

durch den Code von artep0123 ersetzt.

Link to comment
Share on other sites

Hallo hajo3894,

danke, daß Du Dir das mal ansehen willst. Hier ist der Quelltext mit ein paar Zeilen vorher und nachher:

$smarty->assign('ORDER_STATUS', $orders_status_array[$status]);

    $html_mail = $smarty->fetch(CURRENT_TEMPLATE.'/admin/mail/'.$order->info['language'].'/change_order_mail.html');

    $txt_mail = $smarty->fetch(CURRENT_TEMPLATE.'/admin/mail/'.$order->info['language'].'/change_order_mail.txt');

  // xtc_php_mail(EMAIL_BILLING_ADDRESS, EMAIL_BILLING_NAME, $check_status['customers_email_address'], $check_status['customers_name'], '', EMAIL_BILLING_REPLY_ADDRESS, EMAIL_BILLING_REPLY_ADDRESS_NAME, '', '', EMAIL_BILLING_SUBJECT, $html_mail, $txt_mail);

  // Änderung Anfang

    [COLOR=red]$billing_subject = str_replace('{$nr}',$oID,EMAIL_BILLING_SUBJECT);[/COLOR]

[COLOR=red]  $billing_subject = str_replace('{$date}',xtc_date_long($check_status['date_purchased']), $billing_subject);[/COLOR]

[COLOR=red]  $billing_subject = str_replace('{$name}',$check_status['customers_name'], $billing_subject);    [/COLOR]

[COLOR=red]  xtc_php_mail(EMAIL_BILLING_ADDRESS, EMAIL_BILLING_NAME, $check_status['customers_email_address'], $check_status['customers_name'], '', EMAIL_BILLING_REPLY_ADDRESS, EMAIL_BILLING_REPLY_ADDRESS_NAME, '', '', $billing_subject, $html_mail , $txt_mail);[/COLOR] 

//Änderung Ende

    $customer_notified = '1';

   }

   xtc_db_query("insert into ".TABLE_ORDERS_STATUS_HISTORY." (orders_id, orders_status_id, date_added, customer_notified, comments) values ('".xtc_db_input($oID)."', '".xtc_db_input($status)."', now(), '".$customer_notified."', '".xtc_db_input($comments)."')");

   $order_updated = true;

  }

Dieser Code ist bei mir bei etwa Zeile 117.

Viele Grüße

Gecko6

Link to comment
Share on other sites

Ersetze bei dir zwischen //Änderung Anfang und //Änderung Ende deinen Code mit folgendem:

				$billing_subject=str_replace('{$nr}',$oID,EMAIL_BILLING_SUBJECT);
$billing_subject=str_replace('{$date}',xtc_date_long($check_status['date_purchased']),$billing_subject);
$billing_subject=str_replace('{$name}',$check_status['customers_name'],$billing_subject);

xtc_php_mail(EMAIL_BILLING_ADDRESS,EMAIL_BILLING_NAME , $check_status['customers_email_address'], $check_status['customers_name'], '', EMAIL_BILLING_REPLY_ADDRESS, EMAIL_BILLING_REPLY_ADDRESS_NAME, '', '', $billing_subject, $html_mail , $txt_mail);[/PHP]

Dann müsste es funktionieren. Schreib dann mal ob es geklappt hat.

Gruß

Link to comment
Share on other sites

Danke hajo3894, aber das ist exakt der gleiche Quellcode wie ich ihn verwendet habe. Einziger Unterschied:


Meine Version: [FONT=Courier New][COLOR=#0000bb]$billing_subject [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000bb]str_replace...[/COLOR][/FONT]

[FONT=Courier New][COLOR=#0000bb]Deine Version: [COLOR=#0000bb]$billing_subject[/COLOR][COLOR=#007700]=[/COLOR][COLOR=#0000bb]str_replace...[/COLOR][/COLOR][/FONT]

Und das hat es leider nicht gebracht. Oder hast Du eventuell versehentlich den unveränderten Code reingestellt?

Bin nach wi vor sehr an dieser Änderung interessiert! Danke.

Link to comment
Share on other sites

  • 2 months later...

Hallo,

ich hab hier mal das ganze Szenario durchgespielt und bei mir wird die Bestellnummer und das Datum auch nicht angezeigt.

Es würde mir ja schon reichen wenn ich die Bestellnummer und das Bestelldatum in den Text einbauen kann und dieser in der Mail angezeigt wird.

Ohne die Angaben in der Betreff-Zeile der E-Mail könnte man ja noch leben, aber so ist das echt blöd.

Kann denn nicht jemand mal eine funktionsfähige Kurzanleitung hier reinsetzen wie man das anstellt. Wäre echt super.

:D

Link to comment
Share on other sites

  • 4 months later...

Archived

This topic is now archived and is closed to further replies.


×
  • Create New...