Hi!
$headers .= "\nMIME-Version: 1.0\n" .
"Content-Type: multipart/mixed;\n" .
" boundary="{$mime_boundary}"";
Die Header müssen laut dem SMTP-RFC mit \r\n abgetrennt werden und nicht nur mit einem \n.
Die meisten MTA sind zwar so eingestellt, daß es mit einem \n auch funktioniert, aber es ist dennoch falsch.
$fileatt_type = "application/octet-stream";
$fileatt_type = "application/octett-stream";
Du solltest dich für eine Schreibweise entscheiden. Ich würde die erste nehmen, da die zweite falsch geschrieben ist. ;-)
Der korrekte Mime-Type für eine PDF-Datei ist application/pdf.
In deiner zweiten Version sehe ich überhaupt keine Header. Der Content-Type wird da nur in $email_message angeführt. Diese Mail wird dann sicherlich als text/plain verschickt. Oder hast du dort nur vergessen, den entsprechenden Codeabschnitt zu posten?
Schöner Gruß,
rob