من الأفضل تنفيذ إرسال رسائل البريد الإلكتروني باستخدام PHP مع الفئات القوية مثل PHPMailer . وظائف الغلاف المريحة تجعل من الممكن استخدام محتوى UTF-8 ، وتضمين الصور وإرسال المرفقات المشفرة ببضعة سطور من التعليمات البرمجية. إذا كنت تريد توفير النفقات العامة ، وخلافًا للتوصية ، استخدم وظيفة PHP mail () ، فستواجه مشكلات عند استخدام علامات تغير الألوان و UTF-8 على أبعد تقدير.
بعد استدعاء الوظيفة مع
mail(
"vieldav@gmx.de", // Empfänger
"ä ö ü ß", // Betreff
"ä ö ü ß", // Inhalt
"From: ä ö ü ß <david@vielhuber.de>" // Header (Absender)
);
في ملف مشفر UTF-8 يؤدي بالفعل إلى مشاكل في البريد الوارد: لا يزال Outlook 2013 لطيفًا ويعرض كل شيء بشكل صحيح:
لكن GMX لا تغفر الرؤوس المفقودة وتعرض موضوعًا ومرسلًا ومحتوى سيئًا:
إذا قمت بإرسال الرؤوس الصحيحة (على سبيل المثال مع base64_encode) ، فستحصل على
mail(
"vieldav@gmx.de", // Empfänger
"=?UTF-8?B?".base64_encode("ä ö ü ß")."?=", // Betreff
"ä ö ü ß", // Inhalt
"Content-type: text/plain; charset=utf-8\r\n"
."From: =?UTF-8?B?".base64_encode("ä ö ü ß")."?=<david@vielhuber.de>" // Header (Absender)
);
وأخيرًا ، يُظهر GMX أيضًا تمثيلًا صحيحًا: