龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > php编程 >

php 带附件的邮件发送

时间:2014-10-21 02:59来源:网络整理 作者:网络 点击:
分享到:
带附件的邮件发送 [代码片段(44行)]
<?php 
    //获得表单信息
    $from = $_POST['from'];
    $to = $_POST['to']; 
    $subject = $_POST['subject']; 
    $body = $_POST['body']; 
    // 定义分界线 
    $boundary = "345894369383";             //分界线是一串无规律的字符
    //设置header
    $header = "Content-type: multipart/mixed; boundary= $boundary/r/n"; 
    $header .= "From:$from/r/n"; 
    //获得上传文件的文件内容
    $file = $_FILES['upload_file']['tmp_name']; 
    //确定上传文件的MIME类型 
    $mimeType = $_FILES['upload_file']['type']; 
    //获得上传文件的文件名 
    $fileName = $_FILES['upload_file']['name']; 
    //读取上传文件 
    $fp = fopen($file, "r");                    //打开文件
    $read = fread($fp, filesize($file));        //读入文件
    $read = base64_encode($read);               //base64编码 
    $read = chunk_split($read);                 //切割字符串
    //建立邮件的主体,分为邮件内容和附件内容两部分
    $body = "--$boundary
    Content-type: text/plain; charset=iso-8859-1 
    Content-transfer-encoding: 8bit 
    $body
    --$boundary
    Content-type: $mimeType; name=$fileName
    Content-disposition: attachment; filename=$fileName
    Content-transfer-encoding: base64 
    $read
    --$boundary--"; 
    //发送邮件 并输出是否发送成功的信息
    if(mail($to, $subject,$body,$header)) 
    {
        echo "信件发送成功"; 
    }
    else
    {
        echo "信件发送失败"; 
    }
?>
//该片段来自于http://outofmemory.cn
精彩图集

赞助商链接