La fonction mail() de PHP
En PHP, il existe une fonction très simple qui permet d'envoyer un email. Sa syntaxe est :
|
Structure de la fonction mail() |
<?php mail("adresse email destinataire","sujet","corps du message","options"); ?>
|
Le dernier champ est facultatif, il contient les entêtes. Nous y reviendrons plus tard.
Dans un premier temps, nous allons envoyer un email de base :
|
Envoie d'un e-mail simple |
<?php $e-mail = adresse@domain.com; $titre = "titre du mail"; $message = "Bonjour,\n exemple fonction mail"; mail($e-mail, $titre, $message); ?>
|
Remarque : Les \n à l'intérieur du corps de l'email permettent d'aller à la ligne.
|
Envoyer un e-mail à plusieurs personnes Pour envoyer un mail à plusieurs personnes il vous faut séparer les adresses par une virgule dans le premier paramètre.
|
Envoie d'un e-mail à plusieurs personnes |
<?php $e-mail = "mail@domaine.net, mail2@domaine.net"; $titre = "Les articles de PhpTeam"; $message = "Bonjour à vous deux,\n un gros merci pour les articles !"; mail($e-mail, $titre, $message); ?>
|
Changer l'adresse de l'expediteur Pour changer l'expéditeur du message on utilise le quatrième argument de la fonction mail.
Cet argument sera inséré à la fin de l'en-tête. Typiquement, cela permet d'insérer des en-têtes supplémentaires.
Les en-têtes multiples doivent être séparées par des virgules.
|
Changer l'adresse de l'expediteur |
<?php $e-mail = "mail@domaine.net, mail2@domaine.net"; $titre = "exemple titre du mail"; $message = "Bonjour à vous deux,\n un gros merci pour les articles !"; $entete = "From : rasmus@php.net\n"; mail($e-mail, $titre, $message, $entete); ?>
|
Changer l'adresse de retour Pour changer l'adresse de retour du message on utilise le quatrième argument de la fonction mail.
Cet argument sera inséré à la fin de l'en-tête.
|
Changer l'adresse de l'expediteur |
<?php $e-mail = "mail@domaine.net, mail2@domaine.net"; $titre = "exemple titre"; $message = "Bonjour à vous deux,\n un gros merci pour le script !"; $entete = "From : rasmus@php.net\n"; //On ajoute maintenant à la variable $entete la directive Reply-to $entete .= ",Reply-to : toto@toto.com\n"; mail($e-mail, $titre, $message, $entete); ?> |
Vous pouvez également ajouter des personnes en copie et copie cachée et même définir la priorité du message.
Je vous invite à aller voir la documentation relative à la fonction mail() sur le site de PHP :
[Lien]