mb_send_mail
(PHP 4 >= 4.0.6, PHP 5, PHP 7)
mb_send_mail — Envoie un mail encodé
Description
$to
, string $subject
, string $message
[, string $additional_headers
= NULL
[, string $additional_parameter
= NULL
]] )Envoie un courrier électronique. Les en-têtes et le corps du message sont convertis et encodés en accord avec mb_language(). mb_send_mail() est une version adaptée de mail(). Voir la fonction mail() pour plus de détails.
Liste de paramètres
-
to
-
to
est l'adresse de destination du mail. Les adresses multiples peuvent être spécifiées en les séparant par des virgules. Ce paramètre n'est pas encodé automatiquement. -
subject
-
Le sujet du mail.
-
message
-
Le message du mail.
-
additional_headers
(optionnel) -
Chaîne à insérer à la fin de l'en-tête mail.
Ce paramètre est typiquement utilisé pour ajouter des en-têtes supplémentaires (From, Cc, and Bcc). Les différents ajouts doivent être séparés par un CRLF (\r\n). Ce paramètre doit être validé afin d'éviter d'injection d'en-tête non désiré par des personnes malveillantes.
Note:
Lors de l'envoi d'un mail, il doit contenir un en-tête From. Il peut être défini via le paramètre
additional_headers
ou en tant que valeur par défaut dans le php.ini.Si vous ne le faîtes pas, une erreur similaire à : Warning: mail(): "sendmail_from" not set in php.ini or custom "From:" header missing sera émise. L'en-tête From définie également Return-Path sous Windows.
Note:
Si les messages ne sont pas reçus, tentez d'utiliser uniquement un LF (\n). Quelques agents de transfère de mails Unix (en particulier » qmail) remplace un LF par un CRLF automatiquement (ce qui résulte en un doublement du CR si CRLF est utilisé). Vous devez tenter cette correction en dernier recourt, sachant qu'elle ne respecte pas la » RFC 2822.
-
additional_parameter
-
additional_parameter
est une ligne de paramètres MTA. Il est pratique lorsque vous voulez définir un Return-Path correct lorsque vous utilisez sendmail.Ce paramètre est échappé par la fonction escapeshellcmd() en interne afin de prévenir les exécutions de commande. La fonction escapeshellcmd() prévient d'exécution de commande, mais autorise les paramètres additionnels. Pour des raisons de sécurité, ce paramètre doit être validé.
Depuis que la fonction escapeshellcmd() est appliquée automatiquement en interne, quelques caractères autorisés dans les adresses mails par les RFCs d'internet ne peuvent plus être utilisés. Les programmes qui doivent utiliser ces caractères, la fonction mail() ne peut plus être utilisée.
L'utilisateur faisant fonctionner le serveur Web doit être ajouté comme utilisateur de confiance dans la configuration de l'envoi de mails afin d'éviter l'ajout d'un en-tête 'X-Warning' dans le message lorsque l'enveloppe de l'envoyeur (-f) est définie comme utilisant cette méthode. Pour les utilisateurs de sendmail, ce fichier se trouve en utilisant le chemin /etc/mail/trusted-users.
Voir aussi
- mail() - Envoi de mail
- mb_encode_mimeheader() - Encode une chaîne pour un en-tête MIM
- mb_language() - Lit/modifie le langage courant
Version en cache
24/11/2024 16:13:42 Cette version de la page est en cache (à la date du 24/11/2024 16:13:42) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-function.mb-send-mail.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
Références
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.