| Accueil | table PHP | index PHP | précédent | suivant |

Envoi d'un message au format HTML

Il suffit de rajouter aux en-têtes les lignes suivates :

$en_têtes.="MIME-Version: 1.0\r\n";
$en_têtes.= "Content-Type: text/html; charset= iso-8859-1\r\n";
$en_têtes.="Content-Transfer-Encoding: 8bit\r\n";


Il faut noter que certaines messageries n'affichent pas correctement les textes HTML placés dans le corps du message. Il est donc préférable de les transmettre en pièces jointes et d'en placer une version "texte" dans le message.

Voici un script qui envoie un message au format XHTML.


<?php
// script043
session_start();
$en_têtes="From: demo@construireunsite.fr\r\n";
$en_têtes.="MIME-Version: 1.0\r\n";
$en_têtes.= "Content-Type: text/html; charset= iso-8859-1\r\n";
$en_têtes.="Content-Transfer-Encoding: 8bit\r\n";

// envoi d'un fichier HTML
$message="";
// lecture du fichier HTML
$file=fopen("demo1.html", "r");
$texte=fread($file, filesize("demo1.html"));
fclose($file);
$message.=$texte."\r\n";
// fin de message

$email_to=$_SESSION["_email_to"];
mail($email_to, "Message HTML", $message, $en_têtes);

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>Titre de cette page : script043</title>
<meta name="description" content="Phrase décrivant clairement cette page" />
<meta name="keywords" content="mot1 mot2, mot3 mot4 mot5, mot6" />
<link rel="stylesheet" type="text/css" href="PHPStyle011.css" />
<style type="text/css">
.prompt
{
margin-top : 0;
margin-left : 20px;
margin-right : 20px;
font-size : 12pt;
color : rgb(60,0,0);
font-weight : bold;
text-align : center;
}
</style>
</head>

<body>

<div id="form">
<p class="prompt">
Message envoyé<br/><br/>
<a href="script044.php?init=1" >Nouveau message</a>
</p>
</div>

</body>
</html>


Exécuter ce script


suivant