Recherche personnalisée
Certains hébergeurs comme Free et Online ont volontairement désactivé la fonction mail() . Si Free ne propose rien en échange, Online la remplace par une fonction email() personnalisée.
Pour plus d'info : Online

Publicité
Sur le Web
• PHP Facile : tout sur l'envoi de mail par PHP
• PHP.net : la documentation de mail() en français
• ASP-PHP.net : les scripts PHP pour l'e-mail



Publicité


La fonction PHP mail()

Envoyer un courrier électronique en PHP
En PHP, la fonction mail(), qui permet d'envoyer un courrier électronique, dispose d'une syntaxe de base relativement simple :

mail (destinataire, sujet, message)

Ce qui donne par exemple :

<?php
mail("chose@bidule.fr", "Rendez-vous demain", "Tu n'as pas oublié ?");
?>



Pour envoyer un mail à plusieurs destinataires
Utilisez la fonction mail() en séparant les adresses des destinataires par un espace.

<?php
mail("chose@bidule.fr truc@pouet.com lorie@host.com", "Rendez-vous demain", "Tu n'as pas oublié ?");
?>



Pour envoyer un mail en modifiant l'adresse de l'expéditeur
Passez un argument supplémentaire permettant de formater l'entête.

<?php
mail("chose@bidule.fr", "Rendez-vous demain", "Tu n'as pas oublié ?", "From: chirac@elysee.fr");
?>



Pour récuper les informations d'un formulaire
Pour récupérer les informations d'un formulaire en PHP, rien de plus simple. Vous devez définir dans le formulaire un script d'envoi des informations (appelons-le envoimail.php) qui sera appelé lorsque le visiteur cliquera sur le bouton d'envoi.

<form action="envoimail.php" method="POST">

Tous les champs du formulaire seront alors automatiquement disponibles dans le script PHP appelé, sous la forme de variables du type : $_POST["nom_du_champ"].
Il vous suffira alors de personnaliser le script envoimail.php en concaténant par exemple les différentes informations et en les plaçant dans le corps du message via la fonction mail().

Ce qui donne par exemple pour un envoimail.php récupérant des champs nommés nom, prenom et adresse (en supposant qu'a été définie la variable $email_destinataire) :

<?php
$msg = $_POST["nom"]."\n";
$msg .= $_POST["prenom"]."\n";
$msg .= $_POST["adresse"]."\n";
if(!mail($email_destinataire, "Resultat formulaire", $msg))
{
echo "ERREUR : l'e-mail n'a pas été envoyé";
}
?>

A votre disposition : le fichier envoimail.php.txt
(vous n'aurez ensuite qu'à enlever l'extension .txt)



Une remarque, une imprécision ?


Retour au sommaire de la section Webmaster