[Postfixbuch-users] Offtopic - Mail aus PHP mit Attachment	senden
    Markus Heinze 
    max at freecards.de
                  
    Do Apr 17 13:31:48 CEST 2014
    
    
Moin moin
Am 2014-04-17 12:44, schrieb Christian Garling:
> Hallo Liste,
> 
> hat nicht direkt mit Postfix zu tun, vielleicht kann trotzdem jemand
> helfen. Meine Kollegen aus der Entwicklung haben Mailversand mit
> Attachment in eine unserer PHP Applikationen implementiert. Sie nutzen
> dafür folgenden Code:
> 
> $fileToAttach = 'test.zip';
> 
> $boundary = md5(date('r', time()));
> $fileSize = filesize($fileToAttach);
> $fd = fopen($fileToAttach, 'r');
> $fileContent = fread($fd, $fileSize);
> $content = chunk_split(base64_encode($fileContent));
> 
> $mailHeader  = 'Reply-To: '.$doNotReplyTo."\n";
> $mailHeader .= "MIME-Version: 1.0\r\n";
> $mailHeader .= 'Content-Type: multipart/mixed;
> boundary="'.$boundary.'"'."\r\n\r\n";
> $mailHeader .= 'Content-Type:text/plain; charset=UTF-8'."\r\n";
> $mailHeader .= 'Content-Transfer-Encoding: 7bit'."\r\n\r\n";
> $mailHeader .= '--'.$boundary."\r\n";
> $mailHeader .= 'Content-Type: application/octet-stream;
> name="'.$fileToAttach.'"'."\"\r\n";
> $mailHeader .= 'Content-Transfer-Encoding: base64'."\r\n";
> $mailHeader .= 'Content-Disposition: attachment;
> filename="'.$fileToAttach.'"'."\r\n\r\n";
> $mailHeader .= $content;
> $mailHeader .= '--'.$boundary."\r\n";
> 
> mail($toMail, $subject, $body, $mailHeader);
> 
Schaut Euch einfach mal die übergebenen Parameter an und dann in welcher 
Variable der Content ist, warum heissen die wohl header und body ...
Ausserdem werden Zeilen mit "\n" und nicht mit "\r\n" separiert 
ausserdem sollte jede Zeile nicht mehr als 70 Zeichen enthalten. 
Desweiteren ist UTF-8 mit 7Bit zu encoden sehr sportlich
Naja ich würd einfach mir ne MultipartMail entsprechend der Anforderung 
mit einem Standarmailclient an mich selbst senden, den Quellcode 
anschauen und danach header und body programmieren, wem das nicht liegt 
eine fertige Klasse aus dem Netz laden, fertig.
> Die daraus resultierende Mail beinhaltet das Attachment base64 codiert
> im Body der Mail, das Attachment ist so nicht verwendbar. Was machen
> die Jungs verkehrt?
> 
> Gruß, Christian
    
    
Mehr Informationen über die Mailingliste Postfixbuch-users