Envoyer un email en PHP
Le langage PHP permet d'envoyer des email facilement grâce à la fonction mail(). Ce tutoriel va expliquer comment envoyer facilement un email grâce à cette fonction. Plusieurs codes seront fournit pour envoyer des emails basiques, ou au format HTML ou encore avec des en-têtes supplémentaires qui permettent de faire des emails qui passent plus facilement les filtres anti-spam.
Prérequis
Il est nécessaire d'avoir un espace web et de savoir comment créer une page en PHP. L'idéal est d'avoir des notions en PHP pour comprendre les codes données ci-après.
Envoyer un email au format texte basique
Le code PHP ci-dessous permet d'envoyer un email basique à n'importe quelle adresse email.
span style="color: #ff0000;">'contact@example.com'; // Adresse email du destinataire $sujet = 'Titre du message'; // Titre de l'email $message = 'Bonjour. Ceci est un message qui sera envoyé par email. Au revoir.'; // Contenu du message de l'email // Fonction principale qui envoi l'email 'Email envoyé!'Les trois variables $destinataire, $sujet et $message contiennent les principales informations (à personnaliser) de l'email.
Envoyer un email au format HTML
Alors que le code présenté dans le chapitre ci-dessus est très basique, l'autre code, présenté ci-dessous est au format HTML pour pouvoir personnaliser et agrémenter le message (ajouter des images, un design ...).
span style="color: #808080; font-style: italic;">// Adresse email du destinataire $destinataire = 'contact@example.com'; // Titre de l'email $sujet = 'Titre du message'; // Contenu du message de l'email $message = '<html>'; $message .= '<head><title>Titre du message</title></head>'; $message .= '<body><p>Contenu du message. Les balises <strong>HTML</strong> peuvent être utilisée.</p></body>'; $message .= '</html>'; // Pour envoyer un email HTML, l'en-tête Content-type doit être défini 'MIME-Version: 1.0'."\r\n"'Content-type: text/html; charset=iso-8859-1'."\r\n"; // Fonction principale qui envoi l'email 'Email envoyé!'Le code est presque similaire mis à part que le message contient du code HTML et que la variables $headers contient un entête qui définie le type de l'email comme étant du code HTML.
Ajouter des en-têtes additionnels
Grâce aux en-têtes de l'email, il est possible d'améliorer l'envoi d'email par PHP. Il est possible d'améliorer le contenu de la variable $headers grâce à ce code:
span style="color: #ff0000;">'MIME-Version: 1.0'."\r\n"'Content-type: text/html; charset=iso-8859-1'."\r\n"; // Votre adresse email (à personnaliser) 'From: "Votre Nom et Prénom"<contact@example.com>'."\n"; // Votre adresse email (à personnaliser) 'Reply-To: contact@example.com'."\n"; . // Lorsque le destinataire cliquera sur "répondre", par défaut l'adresse email de "reply-to" sera utiliséeCet exemple n'utilise que quelques en-têtes. Il en existe d'autres pour divers objectifs mais ceux présentés sont les plus courant.
En installant et testant ces codes, vous êtes maintenant capable d'envoyer un email avec PHP.