Mail::send()

Mail::send() – envoyer un mail

Synopsis

require_once 'Mail.php';

mixed send ( mixed $recipients , array $headers , string $body )

Description

Envoyer un email. La méthode send() est fournie par l'objet retourné par factory()

Parameter

  • mixed $recipients - un tableau ou une chaîne de destinataires séparés par des virgules.

  • array $headers - un tableau associatif des en-têtes. Le nom de l'en-tête étant utilisé comme clé et la valeur de l'en-tête comme valeur. Si vous souhaitez rempalcer l'enveloppe de l'expéditeur de l'email, définissez l'en-tête Return-Path et cette valeur sera utilisée a la place de la valeur du champ From:.

  • string $body - le contenu de l'email.

Return value

boolean - TRUE ou un objet PEAR_Error, si une erreur survient.

Throws

Possible PEAR_Error values
Driver Mail Code erreur Message d'erreur Cause Solution
sendmail NULL "No from address given." Le tableau $headers requiert au moins une entrée from . Ajoutez un en-tête From
<?php
$headers
['From'] = '[email protected]';
?>
sendmail NULL "From address specified with dangerous characters" L'entrée destinataire dans le tableau des en-têtes $headers contient un ou plusieurs caractères qui ne sont pas valides par la RFC. Vérifiez l'adresse donnée. Eliminez les caractères comme les espaces ou ; ou & ou ` (backtick).
sendmail NULL " sendmail [path to sendmail ] not executable " Le chemin système pour le programme sendmail n'est pas correct. Aucun executable sendmail n'y a été trouvé. Vérifiez la valeur $param['sendmail_path'] dans votre appel à Mail::factory() . Si vous utilisez un autre mailer que sendmail, (par exemple: qmail) vérifiez l'installation de votre mailer. Normalement il dispose d'un intégrateur de commande sendmail.
sendmail NULL "sendmail returned error code code " Sendmail a retourné une erreur qui doit être traitée par vos soins. Constultez la documention de votre mailer.
smtp PEAR_MAIL_SMTP_ERROR_CREATE "Failed to create a Net_SMTP object" Erreur à la création de la classe. Réinstallez / Mettez-à-jour le module Net_SMTP.
smtp PEAR_MAIL_SMTP_ERROR_CONNECT "Failed to connect to host:port " La connexion au serveur SMTP à échoué. Vérifiez les paramètres $param['port'] et $param['host'] dans votre appel à Mail::factory() .
smtp PEAR_MAIL_SMTP_ERROR_AUTH "method authentication failure" Échec de l'identification. Vérifiez les paramètres $param['auth'] , $param['username'] et $param['password'] dans votre appel à Mail::factory() . Assurez-vous aussi d'utiliser la bonne méthode d'autentification pour ce serveur SMTP.
smtp PEAR_MAIL_SMTP_ERROR_FROM "No From: address has been provided" Le tableau $headers nécessite au moins une entrée from . Ajouter un en-tête From
<?php
$headers
['From'] = '[email protected]';
?>
smtp PEAR_MAIL_SMTP_ERROR_SENDER "Failed to set sender: from " Échec de la configuration de l'adresse de l'expéditeur. Vérifiez les contraintes RFC de l'adresse de l'expéditeur et la connectivité du serveur.
smtp PEAR_MAIL_SMTP_ERROR_RECIPIENT "Failed to add recipient: recipient " Problème sur l'adresse du destinataire Vérifiez la compatibilité avec la RFC pour l'adresse du destinataire et la connectivité du serveur.
smtp PEAR_MAIL_SMTP_ERROR_DATA "Failed to send data" Le contenu de l'email ne peut être envoyé. Vérifiez les compatibilités RFC du corp du message et la connectivité du serveur.

Note

This function can not be called statically.

Example

<?php
include('Mail.php');

$destinataire '[email protected]';

$entetes['From']    = '[email protected]';
$entetes['To']      = '[email protected]';
$entetes['Subject'] = 'Message de test';

$corps 'Contenu du message de test';

$parametres['sendmail_path'] = '/usr/lib/sendmail';

// Creer un objet mail en utilisant la methode Mail::factory.
$objet_mail =& Mail::factory('sendmail'$parametres);

$objet_mail->send($destinataire$entetes$corps);
?>