Shop Support News Archive - Shopbetreiber News -> Forum : Agb Pdf An Bestellbestaetigung
Hallo
Ich möchte eine AGB-PDF, die bei mir auf dem Webspace liegt, automatisch als Anhang mit der Bestellbestätigungs-eMail versenden.
Kann mir jemand helfen wie ich das rnichtig einrnichte?
Was muss ich hierfür in welche Dateien einarbeiten?
Gruss TIMBaER
distwe65
15.11.2006, 20:55
Hallo,
eine schöne Idee.
Hierzu sind zwei Änderungen notwendig:
1. order.php
Dort findest Du relativ am Ende zwei Aufrufe von xtc_php_mail (Mail an Kunden und an Dich). Einen davon habe ich mal kopiert.
xtc_php_mail($order->customer['email_address'], $order->customer['firstname'], EMAIL_BILLING_ADDRESS, STORE_NAME, EMAIL_BILLING_FORWARDING_STRING, $order->customer['email_address'], $order->customer['firstname'], 'pub/agb_csquiltdesign.pdf', '', $order_subject, $html_mail, $txt_mail);
Dort gibt es zwei leere Parameter zwischen firstname und order_subject. Beim ersten handelt es sich um ein Attachment, beim zweiten um ein Zweites...
Hier kannst Du also relativ ab dem Basispfad Deiner Installation die AGB-Datei angeben. Bei mir liegt sie also direkt im pub-Verzeichnis.
2. Das war es dann aber noch nicht. Die zweite Änderung muss in inc/xtc_php_mail_inc.php geschehen. Dort ist relativ zum Ende der Versand von Anhängen auskommentiert. Ich habe bei mir nun nur das erste Attachment "freigeschaltet".
if ($mail->AddAttachment != '') {
$mail->AddAttachment($path_to_attachement); // add attachments
}
Das war es schon. Viel Erfolg
°Dirk
distwe65
15.11.2006, 21:28
'Tschuldigung. Da war ein kleiner, aber feiner Fehler drin...
Am Schluss muss es natürlich lauten:
if ($path_to_attachement != '') {
$mail->AddAttachment($path_to_attachement); // add attachments
}
°Dirk
Danke für die Hilfe, werde ich mal ausprobieren.
Gruss TIMBaER
wolfganggeisler
04.01.2007, 15:30
''>ZITAT(distwe65 @ Nov 15 2006, 20:55) 15044
Hallo,
eine schöne Idee.
Hierzu sind zwei Änderungen notwendig:
1. order.php
Dort findest Du relativ am Ende zwei Aufrufe von xtc_php_mail (Mail an Kunden und an Dich). Einen davon habe ich mal kopiert.
xtc_php_mail($order->customer['email_address'], $order->customer['firstname'], EMAIL_BILLING_ADDRESS, STORE_NAME, EMAIL_BILLING_FORWARDING_STRING, $order->customer['email_address'], $order->customer['firstname'], 'pub/agb_csquiltdesign.pdf', '', $order_subject, $html_mail, $txt_mail);
Dort gibt es zwei leere Parameter zwischen firstname und order_subject. Beim ersten handelt es sich um ein Attachment, beim zweiten um ein Zweites...
Hier kannst Du also relativ ab dem Basispfad Deiner Installation die AGB-Datei angeben. Bei mir liegt sie also direkt im pub-Verzeichnis.
2. Das war es dann aber noch nicht. Die zweite Änderung muss in inc/xtc_php_mail_inc.php geschehen. Dort ist relativ zum Ende der Versand von Anhängen auskommentiert. Ich habe bei mir nun nur das erste Attachment "freigeschaltet".
if ($mail->AddAttachment != '') {
$mail->AddAttachment($path_to_attachement); // add attachments
}
°Dirk
[/b]
Hallo,
in welchem Genauen Pfad liegt die order.php?
viele Grüße
Wolfgang
Das war es schon. Viel Erfolg
distwe65
04.01.2007, 15:45
''>ZITAT(wguns @ Jan 4 2007, 15:30) 17937
Hallo,
in welchem Genauen Pfad liegt die order.php?
viele Grüße
Wolfgang
Das war es schon. Viel Erfolg
[/b]
Hallo Wolfgang,
das ist ganz einfach! Die order.php ist ein Pseudonym. :) Im wirklichen Leben heißt die Datei "send_order.php" und liegt im Root-Verzeichnis Deines Shops.
'Tschuldigung für die kleine Verwirrung.
°Dirk
SuperETAEnte
22.03.2007, 19:32
Hallo Dirk,
also ich habe dein text 1:1 (bis auf das eigentliches Dokument) kopiert und finde keinen Email-Anhang
Siehe send_order.php
// send mail to admin
****xtc_php_mail(EMAIL_BILLING_ADDRESS, EMAIL_BILLING_NAME, EMAIL_BILLING_ADDRESS, STORE_NAME, EMAIL_BILLING_FORWARDING_STRING, $order->customer['email_address'], $order->customer['firstname'], '', '', $order_subject, $html_mail, $txt_mail);
****// send mail to customer
****xtc_php_mail($order->customer['email_address'], $order->customer['firstname'], EMAIL_BILLING_ADDRESS, STORE_NAME, EMAIL_BILLING_FORWARDING_STRING, $order->customer['email_address'], $order->customer['firstname'], 'pub/AGB-WebShop-Berlin.de.pdf', '', $order_subject, $html_mail, $txt_mail);
So und nu xtc_php_mail.inc.php
$mail->AddAddress($to_email_address, $to_name);
****if ($forwarding_to != '')
********$mail->AddBCC($forwarding_to);
****$mail->AddReplyTo($reply_address, $reply_address_name);
ich habe wirklich nicht viel Ahnung davon gib mir aber große Mühe um zu verstehen.
wäre toll wenn Du mir oder jemand anderes weiter helfen könnte.
MFG Toni
SuperETAEnte
26.03.2007, 19:05
Hallo,
und recht schönen Dank für Eure Hilfe.
Habe es auch gleich erfolgreich ausgeführt, hat alles gut geklappt.
Nur noch eine Frage, wie bekomme ich es hin das ich anstatt ein Dokument drei Dokumente
mit sende, die sich im gleichen Verzeichnes befinden?
Wäre Euch für diese Hilfe auch sehr dankbar
MfG Toni
''>ZITAT(SuperETAEnte @ Mar 26 2007, 19:05) 23475
Hallo,
und recht schönen Dank für Eure Hilfe.
Habe es auch gleich erfolgreich ausgeführt, hat alles gut geklappt.
Nur noch eine Frage, wie bekomme ich es hin das ich anstatt ein Dokument drei Dokumente
mit sende, die sich im gleichen Verzeichnes befinden?
Wäre Euch für diese Hilfe auch sehr dankbar
MfG Toni
[/b]
Dazu musst du die Funktion etwas erweitern.
Bisher ist es ja so, dass zwei Plätze vorgesehen sind: $path_to_attachements und $path_to_more_attachements
Entweder man ergänzt nun $path_to_even_more_attachements
oder man definiert $path_to_attachements gleich als array und kann dann so viele Attachments wie man nur will einfügen.
SuperETAEnte
27.03.2007, 17:40
Hallo Danillo,
Danke Dir erst einmal für Deine Antwort, hilft mir nur leider nicht weiter .Da ich mich zu wenig
damit auskenne, es also ohne konkreten Beispiel nicht nachvollziehen kann.
was bedeutet array, hab es zwar bei wikipedia nachgeschlagen werde daraus aber nicht schlau
''>ZITAT</div>Entweder man ergänzt nun $path_to_even_more_attachements
oder man definiert $path_to_attachements gleich als array und kann dann so viele Attachments wie man nur will einfügen.[/b]
Wär Dir sehr dankbar wenn du mir da trotzdem weiter helfen könntest, um
Deinen Beitrag nachzuvollziehen und zu realiesieren.
MfG Toni
''>ZITAT(SuperETAEnte @ Mar 27 2007, 17:40) 23556
Hallo Danillo,
Danke Dir erst einmal für Deine Antwort, hilft mir nur leider nicht weiter .Da ich mich zu wenig
damit auskenne, es also ohne konkreten Beispiel nicht nachvollziehen kann.
was bedeutet array, hab es zwar bei wikipedia nachgeschlagen werde daraus aber nicht schlau
Wär Dir sehr dankbar wenn du mir da trotzdem weiter helfen könntest, um
Deinen Beitrag nachzuvollziehen und zu realiesieren.
MfG Toni
[/b]
Also ich hab das ganze mal so probiert:
aus $path_to_attachement = DIR_FS_DOCUMENT_ROOT . 'pub/AGB-WebShop-Berlin.de.pdf';wird
$path_to_attachement = array(DIR_FS_DOCUMENT_ROOT . 'pub/AGB-WebShop-Berlin.de.pdf', DIR_FS_DOCUMENT_ROOT . 'pub/AGB2-WebShop-Berlin.de.pdf');
und aus $mail->AddAttachment($path_to_attachement); wird
foreach($path_to_attachement as $attachement) {$mail->AddAttachment($attachement);}
Das funktioniert soweit auch. Nur bekomme ich jetz beim Versenden immer eine Fehlermeldung: Warning: Invalid argument supplied for foreach() in .../inc/xtc_php_mail.inc.php on line 96
Ich erhalte die Mail mit beiden Attachements, aber jetzt muss noch der Fehler weg.
Viellenicht kann da mal einer schauen, woher der Fehler kommt.
Ich bin jetzt etwas verwirrt. Wenn ich vor die foreach-Schleife var_dump($path_to_attachement); einfüge, und in der Schleife echo $attachement; erhalte ich folgende Meldung:
string(0) ""
Warning: Invalid argument supplied for foreach() in .../inc/xtc_php_mail.inc.php on line 97
array(2) { [0]=> string(40) ".../pub/AGB.pdf" [1]=> string(41) ".../pub/AGB2.pdf" } .../pub/AGB.pdf.../pub/AGB2.pdf
Das bedeutet doch, dass $path_to attachement nicht als array erkannt wurde, oder?
Manchmal ist es doch gut mal kurz aufzustehen:
Einfach so schreiben:
if(!$path_to_attachement==''){
********foreach($path_to_attachement as $attachement) {
****************$mail->AddAttachment($attachement);}}
dann funktioniert's.
Kopernikus
29.03.2007, 11:27
Wieso speicherst du das PDF mit den AGBs nicht einfach auf deinem Server ab und deponierst einen Link in der Bestellbestätigung wo der Kunde diese abrufen kann?
Manche Kunden stören sich an Anhängen in E-Mails, weil sie sich noch immer per Modem einwählen und es dann jeweils sehr lange dauert bis das Mail abgerufen wurde.
Gruss Kopernikus
bluemoon
29.03.2007, 11:33
''>ZITAT(Kopernikus @ Mar 29 2007, 11:27) 23717
Wieso speicherst du das PDF mit den AGBs nicht einfach auf deinem Server ab und deponierst einen Link in der Bestellbestätigung wo der Kunde diese abrufen kann?
Manche Kunden stören sich an Anhängen in E-Mails, weil sie sich noch immer per Modem einwählen und es dann jeweils sehr lange dauert bis das Mail abgerufen wurde.
Gruss Kopernikus
[/b]
viellenicht weil der 'klick' auf den Link 'freiwillig' ist ;
hängen die AGB direkt an der Mail hat sie der Kunde zugestellt bekommen.
SuperETAEnte
29.03.2007, 12:34
''>ZITAT</div>Manche Kunden stören sich an Anhängen in E-Mails, weil sie sich noch immer per Modem einwählen und es dann jeweils sehr lange dauert bis das Mail abgerufen wurde. [/b]
Das ist ja rnichtig, aber ich denke das DSL usw. das Modem langsam aber sicher verdrängt.
Frag dich doch mal selbst Pro und Kontra zwischen Modem und DSL denn da liegt die Antwort.
Desweiteren ist es ja doch so, du hast eine Imformationspflnicht über Rechte und Pflnichten an den
Kunden. Weil es ist doch so, ich bestelle bei Klaus Dieter und soll bei dem AGBs ein Hacken setzen,
lese ich wirklich die AGB?
und mit der information (Wiederrufsrecht) habe ich Ihnen schon darüber aufgeklärt.
Ich habe es auch mal mit Ausschnitte direkt im html Text versucht, kommt aber nicht gut an. Da der
User alle Seiten drucken müsste ,wenn er es dann täte, also kann er sich aussuchen ob er nur die
Bestellbestätigung druckt oder die Dateianhänge auch.
''>ZITAT</div>viellenicht weil der 'klick' auf den Link 'freiwillig' ist ;
hängen die AGB direkt an der Mail hat sie der Kunde zugestellt bekommen. [/b]
Nnicht nur das sondern man kann sicher sein das es an die Adresse geschickt bekommen hat aber hier bleibt
es ja den User auch wieder freigestellt ob er diese im Anhang öffnet und liest.
Es dient eigentlich als Zusatzsicherung für Käufer und Verkäufer.
DayWalker
17.04.2007, 18:45
also ich hab ein externes modul mit dem man eine Datei hochladen kann und sie denn einer email als anhang anfügen kann... das ganze geht bei der Create account mail, bestellbestätigung und statusänderung. bei allen drei emails können jeweils 2 anhänge ausgewählt werden.
es ist so ähnlich wieder der Contentmanager.
bei interesse PN oder eMail.
danke danillo für eine weitere geniale umsetzung von dir.
geht prima mit dem array
vBulletin® v3.8.4, Copyright ©2000-2012, Jelsoft Enterprises Ltd.