mail: vedhæftelser giver problemer
Jeg har et script, der udsender mails (med vedhæftet PDF), men der er desværre forskel på, hvordan forskellige mail-clienter viser mailen.Eksempelvis kan en webmail ikke tolke vedhæftningen og viser en masse mærkelige tegn, men når den hentes ned i Outlook vises det perfekt. Andre webmails viser den fint nok.
Hvad skyldes dette, og kan jeg tilpasse koden, så jeg ikke har dette problem?
Koden er opbygget nogenlunde således:
<?php
$boundary = uniqid('');
$filename = "minpdffil.pdf";
$mimeType = 'application/pdf';
$file = fread(fopen($filename, 'r'), filesize($filename));
$file = base64_encode($file);
$file = chunk_split($file);
$body = PHP_EOL."--$boundary".PHP_EOL;
$body .= "Content-type: text/html; charset=iso-8859-1".PHP_EOL;
$body .= "Content-transfer-encoding: 8bit".PHP_EOL.PHP_EOL;
$body .= $_POST['body'].PHP_EOL.PHP_EOL;
$body .= "--$boundary".PHP_EOL;
$body .= "Content-type: $mimeType; name=".$filename.PHP_EOL;
$body .= "Content-disposition: attachment; filename=".$filename.PHP_EOL;
$body .= "Content-transfer-encoding: base64".PHP_EOL.PHP_EOL;
$body .= $file.PHP_EOL.PHP_EOL;
$body .= "--$boundary--";
$headers = "Content-type: multipart/mixed; boundary=\"$boundary\"";
mail('min.email@mail.dk', 'Emnet', $body, $headers);
?>
