blondi2108 Geschrieben 18. November 2010 Teilen Geschrieben 18. November 2010 Hi, wie kann oder womit kann ich ein Worddokument an eine Email anfügen. Ich habe zuerst ein Rtfdokument, welches ich mit Daten aus einer Datenbank fülle und als Worddokument abspeicher. Nun möchte ich das neue Worddokument als Anhang an eine Email anfügen. Wie zum ....... kann ich das umsetzen. function _send_Antrag($antrag_id) { $text = "../../dokument.doc"; //dieses Dokument soll im Anhang der Email versendet werden $file = fopen($text,"r"); $text = fread($file,filesize($text)); fclose ($file); $text_start = "Antrags-ID: " . $antrag_id . "\n\n"; $text = $text_start . $text; $mail_object = &Mail::factory('sendmail'); $headers['From'] = $GLOBALS["OPEN_SOURCE_ABSENDER"]; $email = "meineadresse@kdvz.de"; $headers['To'] = $email; $headers['Subject'] = 'Antrag_ID:' .$antrag_id. " " . date("d.m.y H:i:s"); $email = $mail_object->send($email, $headers, $text); //bisheriger Gedanke ist Dokument als $text anfügen. Das geht aber nicht, weil dies der Text in der Email ist. Ich brauche das Dok aber als Anhang if(PEAR::isError($email)){ $error = "( " . $email->getMessage() . " ) !"; } return $error; } [/PHP] Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
etreu Geschrieben 18. November 2010 Teilen Geschrieben 18. November 2010 Wenn du einen Anhang an die Mail hängen willst, dann must du eine MIME-Mail senden. Dafür gibt es schon einige fertige Skripte und Klassen (z.B. Manual :: Mail_Mime). Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
blondi2108 Geschrieben 18. November 2010 Autor Teilen Geschrieben 18. November 2010 Jetzt habe ich es so, trotzdem stürtz er ab und macht nichts function _sendtest(){ //$text = 'This is a text message.'; // Text version of the email $html = '<html><body><p>This is a html message</p></body></html>'; // HTML version of the email $crlf = "\n"; $headers['From'] = $GLOBALS["OPEN_SOURCE_ABSENDER"]; $email = "adresse@x.de"; $headers['To'] = $email; $headers['Subject'] = 'Antrag_ID:' .$antrag_id. " " . date("d.m.y H:i:s"); // Creating the Mime message $mime = new Mail_mime($crlf); // Setting the body of the email //$mime->setTXTBody($text); $mime->setHTMLBody($html); // Add an attachment $file = "x.doc"; // Content of the file $file_name = "x.doc"; // Name of the Attachment $content_type = "Application/doc"; // Content type of the file $mime->addAttachment ($file, $content_type, $file_name, 1); // Add the attachment to the email $body = $mime->get(); $headers = $mime->headers($headers); // Sending the email $mail =& Mail::factory('sendmail'); $mail->send($recipient, $headers, $body); }[/PHP] Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
etreu Geschrieben 18. November 2010 Teilen Geschrieben 18. November 2010 Was heist "stürzt ab"? Gibt es Fehlermeldungen im Browser oder im Serverlog? Der Dateiinhalt sieht komisch aus. Du kannst den inhalt via PHP: file_get_contents - Manual oder ähnliche Funktionen auslesen. Nur der Dateiname wird dir nicht helfen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
blondi2108 Geschrieben 18. November 2010 Autor Teilen Geschrieben 18. November 2010 Bekomme weiterhin keinen Anhang.. die Email wird aber versendet! Jemand ne Idee? $text = " Antrags-ID: " . $antrag_id . "\n\n"; // $crlf = "\n"; $mail_object = &Mail::factory('sendmail'); $headers['From'] = $GLOBALS["OPEN_SOURCE_ABSENDER"]; $email = "mail@test.de"; $headers['To'] = $email; $headers['Subject'] = ' Antrag_ID:' .$antrag_id. " " . date("d.m.y H:i:s"); // $mime = new Mail_mime($crlf); $mime = new Mail_mime(); $file = file_get_contents(dirname(__FILE__) . "/x.doc"); //$file="x.doc"; $file_name = "x.doc"; $content_type = "Application/msword"; $mime->addAttachment ($file, $content_type, $file_name,1); $body = $mime->get(); $email = $mail_object->send($email, $headers, $text,$body); if(PEAR::isError($email)) { $error = "( " . $email->getMessage() . " ) !"; } return $error;[/PHP] Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
etreu Geschrieben 18. November 2010 Teilen Geschrieben 18. November 2010 (bearbeitet) Was kommt denn an? Bzw. was steht denn in Senden-Queue des SMTP-Servers? Kannst du prüfen wie die erzeugte MIME-Mail aussieht? Edit: Funktioniert bei dir das Beispiel unter http://pear.php.net/manual/en/package.mail.mail-mime.example.php ? Bearbeitet 18. November 2010 von etreu Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.