[PHP] mailfunktion mit anlage

PhReak

Cadet 3rd Year
Registriert
Mai 2003
Beiträge
32
[php] mailfunktion mit anlage

moinsen.

Hat vielleicht jemand ne Ahnung, wie man nen PHP Mailer mit Anlageversand macht?

Also mail funktion mit integrierter Anlage, die lokal auf dem Rechner mit hochgeladen wird, oder evtl. auch vom Webserver genommen werden kann.

Hab weder bei php.net noch bei google was dazu gefunden.
Mit Perl funktioniert das, das weiss ich aber ich brauch ne Lösung in PHP.
Das muss doch auch gehen !?
 
Emails zu versenden ist leicht, wenn aber noch Attachments angehängt werden sollen, wird schon schwieriger :rolleyes:

zubeachten ist:
- der Body wird "geteilt" - Nachricht und Anhang befinden sich im selben Text, durch ein selbstdefiniertes Trennzeichen werden diese voneinander getrennt
- Dateianhänge müssen nach dem base64-Verfahren kodiert werden, die maximale Zeichenzahl pro Zeile darf dabei die Zahl 76 nicht überschreiten

hier ein Beispiel:
PHP:
<?
// Anhang auslesen
$fp = fopen ( "bild.gif", r );
$fsize = filesize ( "bild.gif" );
$fcontent = fread ( $fp, $fsize );
fclose ( $fp );

// Anhang kodieren
$attach = chunk_split ( base64_encode ( $fcontent ) );

// Email-Nachricht verfassen
$message = "Hallo!";

// Empfänger
$to = "du@ich.net";

// Betreff
$ref = "Mail mit Anhang";

// Header schreiben, Trennzeichen für Nachricht und Anhang wird im Parameter boundary definiert
$header = "MIME-Version: 1.0\r\n"
  ."Content-Type: multipart/mixed; boundary=\"BOUND\"\r\n";

// Body schreiben: Nachricht und Anhang zusammenfügen
$body = "http://www.loopo.at\r\n"
  ."\r\n"
  ."--BOUND\r\n"
  ."Content-Type: text/plain; charset=iso-8859-1 \r\n"
  ."Content-Disposition: inline \r\n"
  ."Content-Transfer-Encoding: 7bit \r\n"
  ."\r\n"
  .$message."\r\n"
  ."\r\n"
  ."--BOUND\r\n"
  ."Content-Type: image/gif; name=\"bild.gif\" \r\n"
  ."Content-Description: \"ein Bild\" \r\n"
  ."Content-Transfer-Encoding: base64 \r\n"
  ."Content-Disposition: attachment \r\n"
  ."\r\n"
  .$attach."\r\n"
  ."\r\n"
  ."--BOUND\r\n";

// Email versenden
mail ( $to, $ref, $body, $header );
?>
 
00000681.gif



hätte nicht gedacht, noch ne Antwort zu kriegen.

Merci !!!

Aber ehrlich gesagt,
00000648.gif


Kein Wunder, dass ich keine Lösung gefunden hab *g*
 

Ähnliche Themen

Antworten
15
Aufrufe
1.245
Zurück
Oben