资讯   |   开发   |   选机中心   |   产品大全 | IBM | 惠普 | 联想 | 戴尔 | 苹果 | 神舟
更多: | 华硕 | 明基 | 方正 | 紫光 | TCL | 夏新 | 联宝 | 宏碁 | 七喜 | 长城 | 清华同方 | 海尔 | 三星 | 东芝 | 索尼 | 富士通 | LG | 技术 | ddnoon
当前位置:笔记本 > 编程开发 >
Advertisement
文章正文

我再来转载一篇"用EMAIL附件传送一个文件(用mail)"_编程

类型:转载   责任编辑:asp.net   日期:2007/05/23


热门软件下载:


   
  • 在GD中输出汉字的函数的改进 
  • LDAP安装 
  • 一个在PHP中利用递归实现论坛分级显示的例子(为了简单起见,我将分页显示部分去掉了) 
  • 好几位朋友都问到,如何在redhat自带的apache中加入PHP的支持,所以我找来了这篇文章 
  • 一个简单的(也可以说是不完全的)IMAP类和应用。(三) 
  • require和include经典一例抛析 
  • 设置相同名称的cookie,如何返回它们的值,请看: 
  • Testing Tips--Testing a setter(1) 
  • Summary in Reading of JUnit in Action(1) 
  • 实时嵌入式软件测试工具的研究 
  • 页面导航:

    正文内容:
    <?

    /*
    * class mime_mail
    * original implementation by sascha schumann < sascha@schumann.cx >
    * modified by tobias ratschiller < tobias@dnet.it >:
    * - general code clean-up
    * - separate body- and from-property
    * - killed some mostly un-necessary stuff
    */

    class mime_mail
    {
    var $parts;
    var $to;
    var $from;
    var $headers;
    var $subject;
    var $body;

    /*
    * void mime_mail()
    * class constructor
    */
    function mime_mail()
    {
    $this->parts = array();
    $this->to = "";
    $this->from = "";
    $this->subject = "";
    $this->body = "";
    $this->headers = "";
    }

    /*
    * void add_attachment(string message, [string name], [string ctype])
    * add an attachment to the mail object
    */
    function add_attachment($message, $name = "", $ctype = "application/octet-stream")
    {
    $this->parts[] = array (
    "ctype" => $ctype,
    "message" => $message,
    "encode" => $encode,
    "name" => $name
    );
    }

    /*
    * void build_message(array part=
    * build message parts of an multipart mail
    */
    function build_message($part)
    {
    $message = $part[ "message"];
    $message = chunk_split(base64_encode($message));
    $encoding = "base64";
    return "content-type: ".$part[ "ctype"].
    ($part[ "name"]? "; name = \"".$part[ "name"]. "\"" : "").
    "\ncontent-transfer-encoding: $encoding\n\n$message\n";
    }

    /*
    * void build_multipart()
    * build a multipart mail
    */
    function build_multipart()
    {
    $boundary = "b".md5(uniqid(time()));
    $multipart = "content-type: multipart/mixed; boundary = $boundary\n\nthis is a mime
    encoded message.\n\n--$boundary";

    for($i = sizeof($this->parts)-1; $i >= 0; $i--)
    {
    $multipart .= "\n".$this->build_message($this->parts[$i]). "--$boundary";
    }
    return $multipart.= "--\n";
    }

    /*
    * void send()
    * send the mail (last class-function to be called)
    */
    function send()
    {
    $mime = "";
    if (!empty($this->from))
    $mime .= "from: ".$this->from. "\n";
    if (!empty($this->headers))
    $mime .= $this->headers. "\n";

    if (!empty($this->body))
    $this->add_attachment($this->body, "", "text/plain");
    $mime .= "mime-version: 1.0\n".$this->build_multipart();
    mail($this->to, $this->subject, "", $mime);
    }
    }; // end of class

    /*
    * example usage
    *

    $attachment = fread(fopen("test.jpg", "r"), filesize("test.jpg"));

    $mail = new mime_mail();
    $mail->from = " foo@bar.com ";
    $mail->headers = "errors-to: foo@bar.com ";
    $mail->to = " bar@foo.com ";
    $mail->subject = "testing...";
    $mail->body = "this is just a test.";
    $mail->add_attachment(

     

     
    热门推荐笔记本: 清华同方笔记本
    相关文章:
    webmaster:popbb@126.com   最佳浏览:1024X768 MSIE
    ©2007 popbb.net All Rights Reserved