php
  • email-attachments
  • 2012-11-17 31 views 0 likes 
    0

    我使用这个代码的电子邮件:我如何发送HTML电子邮件附件?

    $email="[email protected]"; 
    $to = $email; 
    $subject = "Test mail"; 
    $message1 = ' 
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml"> 
        <head></head> 
        <body> 
        <div style="width:80%;"> 
         <table style="margin: 10px 20px 10px 20px;"> 
         <tr><td>Hello!'." ".'</td></tr>'; 
         $message1.=$mailmessage; 
         $message1.= 
          '<tr><td>Please find attachments for dailyreport.</td></tr> 
    <tr><td><br>' . "Thanks and Regards with ". '</td></tr> 
        </table></div> 
        </body> 
    </html>'; 
    $from = "[email protected]"; 
    $headers = "MIME-Version: 1.0" . "\r\n"; 
    $headers .= "Content-type:text/html;charset=iso-8859-1" . "\r\n"; 
    $headers .= 'From: ' . $from . "\r\n"; 
    if(mail($to,$subject,$message1,$headers)) { 
        "mail sent"; 
    } else { 
        "email does not exist"; 
    } 
    

    发送附件,我需要的内容类型更改为Content-Type: multipart/mixed;\n。但HTML上下文将会改变。我如何将文件附加到此HTML?

    +3

    而不是滚动自己的解决方案,使用库,如PHPMailer。 – DCoder

    +0

    检查这个http://stackoverflow.com/questions/4586557/php-send-email-with-attachment –

    回答

    1

    如果你想编写自己的脚本,结账this link

    但我强烈建议你使用自定义库,如PHPMailer的 http://code.google.com/a/apache-extras.org/p/phpmailer/

    的PHPMailer是一个PHP电子邮件传输类特色文件附件, SMTP服务器,CC,BCC,HTML消息,自动换行等等。通过sendmail,PHP邮件(),QMail或直接通过SMTP发送电子邮件。额外的传输,如支持SMS,MMS将很快到来

    +1

    同意。 PHPMailer会为您节省很多挫折。 –

    0

    你应该尝试的头信息验证码

    $semi_rand = md5(time()); 
    $mime_boundary = "==Multipart_Boundary_x{$semi_rand}x"; 
    
    $headers .= "\nMIME-Version: 1.0\n" . 
    "Content-Type: multipart/mixed;\n" . 
    " boundary=\"{$mime_boundary}\""; 
    
    0

    您有电子邮件附件的一些特殊的头,别担心,我们有一个php类名为sendMail,下载并学习@PHP sendMail class

    相关问题