2010-10-13 5 views
1

La fonction php error_log() vous permet d'envoyer des logs à l'email en réglant le second param à 1. Je le fais, mais je veux diffuser le message en html. Le code ressemble à ceci:Envoyer un message d'erreur par e-mail en utilisant error_log()

error_log($this->_errorMsg, 1, ADMIN_MAIL, "Content-Type: text/html; charset=utf8\r\nFrom: ".MAIL_ERR_FROM."\r\nTo: ".ADMIN_MAIL); 

Probablement i quelque chose du mess déclarant le type de contenu, parce que je reçois msg en texte clair:

<h1>Website Error</h1> 
<b>ERRNO:</b><font color='red'>1</font> 
... 
+0

Je viens imagé votre boîte aux lettres après une erreur avec de nombreuses demandes. Tu ne veux pas faire ça. –

+0

@Pekka: oui, je parle de l'indigène. Ce n'est pas un cadre, je travaille sur une classe loggin standalone. – Luciano

+0

ah, qu'est-ce que vous savez, là en effet [est un] (http://de2.php.net/manual/en/function.error-log.php). Désolé, n'était pas au courant de cela –

Répondre

3

Essayez de mettre vos têtes comme ceci:

$headers = "From: [email protected]\r\n"; 
$headers .= "MIME-Version: 1.0\r\n"; 
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n"; 

notez les en-têtes content-type et mime à la fin.

+1

merci! fonctionne maintenant parfaitement. – Luciano

3

Vous devriez lire les commentaires dans la référence PHP pour error_log, l'un des premiers contient un exemple:

error_log("<html><h2>stuff</h2></html>",1,"[email protected]","subject :lunch\nContent-Type: text/html; charset=ISO-8859-1"); 
Questions connexes