phpbar.de logo

Mailinglisten-Archive

AW: [php] BCC bei Funktion mail()

AW: [php] BCC bei Funktion mail()

Kagain php_(at)_phpcenter.de
Thu, 26 Sep 2002 23:55:41 +0200


http://www.php.net/manual/en/function.mail.php



/* To send HTML mail, you can set the Content-type header. */
$headers  = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";

/* additional headers */
$headers .= "From: Birthday Reminder <birthday_(at)_example.com>\r\n";
$headers .= "Cc: birthdayarchive_(at)_example.com\r\n";
$headers .= "Bcc: birthdaycheck_(at)_example.com\r\n";

/* and now mail it */
mail($to, $subject, $message, $headers);


Wobei ich selbst nicht \r\n sondern nur \n bei den Headers benutze.
Leider weiß ich nicht mehr den Unterschied zwischen \r und \n.


Für Anhänge benutze kannst du folgende Klasse benutzen die ich irgendwo
im Netz mal gefunden habe:


<?
/*
 *  Class mime_mail
 *  Original implementation by Sascha Schumann <sascha_(at)_schumann.cx>
 *  Modified by Tobias Ratschiller <tobias_(at)_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_(at)_bar.com";
 $mail->headers = "Errors-To: foo_(at)_bar.com";
 $mail->to = "bar_(at)_foo.com";
 $mail->subject = "Testing...";
 $mail->body = "This is just a test.";
 $mail->add_attachment("$attachment", "test.jpg", "image/jpeg");
 $mail->send();

 */
?>


Gruß Horst


-----Ursprüngliche Nachricht-----
Von: php-admin_(at)_phpcenter.de [mailto:php-admin_(at)_phpcenter.de] Im Auftrag
von Schmidt7
Gesendet: Donnerstag, 26. September 2002 18:47
An: php_(at)_phpcenter.de
Betreff: [php] BCC bei Funktion mail()

Hallo !

Wie gebe ich bei der Funktion einen BCC Empfänger an ? Geht das
überhaupt
?

Kann ich bei diesem Befehl auch eine Datei anhängen ? Kann mir
vielleicht
jemand ein Beispielscript nennen ? Ich würde gerne bei einem Formular
eine
Bilddatei bis max. 10kb Größe abgeben und diese dann per mail an mich
schicken lassen wie die anderen Daten auch. Das geht soweit bisher gut,
halt nur ohne Datei, aber diese würde ich gerne trotzdem schicken lassen
:D
Vielleicht auch einfach nur auf dem Server speichern, würde mir auch
schon
reichen.

Gruß und Danke im Voraus,
Schmidt7
--
** http://www.php-center.de **
Die PHP-Liste: mailto: php_(at)_phpcenter.de
http://lists.phpcenter.de/mailman/listinfo/php


php::bar PHP Wiki   -   Listenarchive