stualk Posted November 1, 2006 Share Posted November 1, 2006 Does anyone use mime_mail.inc files for sending the content of forms by email? I've been doing this for a long time now and it works really well. I now need to start sending in HTML format instead of plain text but i'm not sure how to edit my mime mail file in order to do this. Is anyone familiar with mime mail and how to edit the code below so that the email it sends is in HTML format?[code]<?// store as "mime_mail.inc"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 attachment(string message, [string name], [string ctype]) * Add 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";}/* * string get_mail() * returns the constructed mail */function get_mail($complete = true) { $mime = ""; if (!empty($this->from)) $mime .= "From: ".$this->from. "\n"; if (!empty($this->headers)) $mime .= $this->headers. "\n"; if ($complete) { if (!empty($this->to)) { $mime .= "To: $this->to\n"; } if (!empty($this->subject)) { $mime .= "Subject: $this->subject\n"; } } if (!empty($this->body)) $this->add_attachment($this->body, "", "text/plain"); $mime .= "MIME-Version: 1.0\n".$this->build_multipart(); return $mime;}/* * void send() * Send the mail (last class-function to be called) */ function send () { $mime = $this->get_mail(false); mail($this->to, $this->subject, "", $mime); }}; //end of class?>[/code] Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.