Mail + Anhang - Mime richtig, Mail falsch?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Mail + Anhang - Mime richtig, Mail falsch?

    Hallo,

    nachdem ich jetzt seit Donnerstag hier im Forum gesucht habe und verschiedene Versionen von Mailfunktionen mit Anhang getestet habe, aber noch immer nicht weiter bin, wäre ich für ein paar Tips/ Hilfen sehr dankbar.

    Das Problem ist, dass wenn ich per Mail eine eMail mit Text und Anhang versende, nur eine Mail mit Anhang ankommt, wo nichts drin ist.

    PHP Code:
    $attach_type    $row['mime'];
                
    $attach_name    $attach;
                
    $boundary         strtoupper(md5(uniqid(time())));

                if (
    $attach_type!="text/html" && $attach_type!="text/plain")
                {
                        
    $attachment     fread(fopen($attach"rb"), filesize($attach));
                        
    $file            chunk_split(base64_encode($attachment));
                        
    $file_encoding    "base64";
                }
                else
                {
                        
    $file            fread(fopen($attach"rb"), filesize($attach));
                        
    $file_encoding    "8bit";
                }

                
    $mail_header .= "From: $absender";
                
    $mail_header .= "\r\n";
                
    $mail_header .= "Cc: $cc";
                
    $mail_header .= "\r\n";
                
    $mail_header .= "Reply-To: $reply";
                
    $mail_header .= "\r\n";
                
    $mail_header .= "MIME-Version: 1.0";
                
    $mail_header .= "\r\n";
                
    $mail_header .= "Content-Type: multipart/mixed; boundary=\"$boundary\"";
                
    $mail_header .= "\r\n\r\n";
                
    $mail_header .= "This is a multi-part message in MIME format";
                
    $mail_header .= "\r\n\r\n";
                
    $mail_header .= "--$boundary";
                
    $mail_header .= "\r\n";
                
    $mail_header .= "Content-Type: text/html";
                
    $mail_header .= "\r\n";
                
    $mail_header .= "Content-Transfer-Encoding: 8bit";
                
    $mail_header .= "\r\n\r\n";
                
    $mail_header .= "$text";
                
    $mail_header .= "\r\n\r\n";
                
    $mail_header .= "--$boundary";
                
    $mail_header .= "\r\n";
                
    $mail_header .= "Content-Type: $attach_type; name=\"$attach_name\"";
                
    $mail_header .= "\r\n";
                
    $mail_header .= "Content-Transfer-Encoding: $file_encoding";
                
    $mail_header .= "\r\n";
                
    $mail_header .= "Content-Disposition: attachment; filename=\"test.jpg\"";
                
    $mail_header .= "\r\n\r\n";
                
    $mail_header .= "$file";
                
    $mail_header .= "\r\n";
                
    $mail_header .= "--$boundary--";
                
    $mail_header .= "\r\n";

                
    $send       mail($target$subject$text$mail_header); 
    Soweit so gut. Es wird also eine Falsche eMail erstellt, aber wenn ich mir nun den mailheader ausgeben lasse, in eine Datei einfüge und diese als gespeicherte eMail in Outlook öffne, ist alles richtig.

    mail_header:

    Code:
    From: [email]name@domain.tld[/email]
    Cc: [email]name@domain.tld[/email]
    Reply-To: [email]name@domain.tld[/email]
    MIME-Version: 1.0
    Content-Type: multipart/mixed; boundary="002D2A05065F0C959E0D763B4EE74582"
    
    This is a multi-part message in MIME format
    
    --002D2A05065F0C959E0D763B4EE74582
    Content-Type: text/html
    Content-Transfer-Encoding: 8bit
    
    bla bla
    
    --002D2A05065F0C959E0D763B4EE74582
    Content-Type: image/jpeg; name="IMGP3294_c.jpg"
    Content-Transfer-Encoding: base64
    Content-Disposition: attachment; filename="test.jpg"
    
    [ganz viel Buchstaben- und Zahlensuppe]
    
    --002D2A05065F0C959E0D763B4EE74582--
    Ich habe auch schon versucht den ganzen Text einfach als Body zu senden, aber dann kommt garkeine Mail an.

    Habt ihr vielleicht eine Idee dazu

  • #2
    Hi, mach vielleicht die mail(); nicht als Variable.

    Comment

    Working...
    X