HTML email wordt als platte HTML code weergegeven
Ik heb laatst een domein verhuist naar een nieuwe hosting. Op de oude hosting draaide een bestelscript via de website (PHPscript).
Op de oude hosting kreeg de besteller netjes een email met daarin een overzicht van zijn/haar bestelling. Ik heb vervolgens de website verhuist naar een nieuwe hosting.
Nu krijgen we berichtjes van bestellers dat zij in hun email in Outlook geen normale tekst maar platte html code te zien krijgen. Ik zelf heb dat opgelost door de email te laten sturen naar een gmail adres maar dat kan ik natuurlijk voor de bestellers niet instellen.
Ik heb gekeken in de code van het script en daar staat het volgende:
$headers= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "From: [email protected]\r\n";
$headers .= "Return-Path: [email protected]\r\n";
$aan = $email;
$onderwerp = "Uw bestelling bij websitevoorbeeld.nl";
$body = "
<html>
<head>
.....VOORBEELD HTML CODE......
</body>
</html>";
mail($aan, $onderwerp, $body, $headers);
?>
Weten jullie waar dit aan kan liggen? Ik dacht dat het een kwestie zou zijn van verhuizen (incl. databases) en dat het dan voldoende zou moeten zijn.
Het probleem is dus dat de emails die verstuurd worden via de website, er als platte html tekst uitzien terwijl het echte HTML tekst zou moeten zijn. Dit is geen instelling in Outlook die niet goed zou staan bij de bestellers.
Alvast dank voor de hulp.
Haal die platte html eens door de W3C validator.
Bedoel je dan wat er tussen de <html> en </html> staat? Dan krijg ik 192 Errors en 4 warning(s)
Dan zou ik die toch maar eerst eens repareren. Het kan zijn dat bepaalde mailprogramma's moeite hebben met incorrecte HTML.
Ik zie geen <body> ...
Stefan jansen op 21/04/2015 18:35:56:
Bedoel je dan wat er tussen de <html> en </html> staat? Dan krijg ik 192 Errors en 4 warning(s)
Dan heb je nog aardig wat te doen om er een valid html mail van te maken.
btw: er staat wel een body in heb er alleen niet alles in gekopieerd.
Het gaat niet om de inhoud, maar de opbouw in HTML. Die is juist niet goed, en daar struikelt menig mailprogramma blijkbaar over.
http://validator.w3.org/check
Thanks voor de antwoorden. En hoe zou ik dat op moeten lossen? En wat moet ik bij doctype invullen bij Gewijzigd op 21/04/2015 20:16:09 door stefan jansen
Gewijzigd op 21/04/2015 20:41:44 door - Ariën -
Ik kan mij vergissen, maar volgens mij was het vrij belangrijk dat de Content-Type en charset die in de header staat wordt herhaald in (overeenstemt met die van) het HTML-document (in de body van je mailbericht) zelf.
de mail kwam toch goed aan op de oude server en nu niet meer, sinds het op de nieuwe server staat.
Dan zou de inhoud van het html toch niet de oorzaak moeten zijn.
Ik zou het eerder zoeken in iets als een tekenset die default anders is,
een mailserver met andere settings
Waar zou ik moeten kijken voor die settings?