Hi tromorow,
das Thema ist nicht so einfach. Mit PHP und der Mail-Funktion mußt du dir ja den Aufbau (Quellcode) einer multipart MIME Mail selber zusammenbauen. Dazu hilft ein Blick in die
RFC 2045 (oder auch nicht...).
Am einfachsten benutzt du eine fertige Mail-Klasse die das für dich erledigt . Einfach mal die Script-Archive durchstöbern. Bei PEAR gibt es da mit
Mail_Mime auch etwas passendes. Lass dir zur Inspiration doch mal in Outlook den Quelltext von der GMX-Mail anzeigen.
Ein einfacher Code könnnte z.B. so ausehen:
- Code: Select all
$fp = fopen($img_name, 'r');
$content = fread($fp, filesize($img_name));
fclose($fp);
$img_code = base64_encode($content);
$boundary = '-------**';
$receiver = 'email@test.de';
$sender = 'test';
$subject = 'test';
$header = "MIME-Version: 1.0\n";
$header .= "From: ".$sender."\n";
$header .= "Content-Type: multipart/related;\n\tboundary=".$boundary."\n";
$header .= "Content-Disposition:inline\n";
$content = "\n".$boundary."\n";
$content .= "Content-Type: text/html;charset=iso-8859-1\n";
$content .= "Content-Transfer-Encoding: 8bit\n\n";
$content .= "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">\n";
$content .= "<html>\n";
$content .= "<head>\n";
$content .= "<title>test</title>\n";
$content .= "</head>\n";
$content .= "<body>\n";
$content .= "<p>hier steht was...</p>\n";
$content .= "</body>\n";
$content .= "</html>\n";
$content .= "\n".$boundary."\n";
$content .= "Content-Type: application/octetstream;\n\tname=".$img_name."\n";
$content .= "Content-Transfer-Encoding: base64\n";
$content .= "Content-ID: <modinelogo>\n";
$content .= "Content-Disposition:inline;filename=".$img_name."\n\n";
$content .= $img_code;
$content .= $boundary;
mail($receiver, $subject, $content, $header);