Bonjour.
Je souhaite intercepter les erreurs de la fonction mail() pour que l'utilisateur ne les voie pas. J'ai donc pensé faire quelque chose comme ça :
Malheureusement ça n'a pas l'air de fonctionner car j'obtiens ça sur ma page Web :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 try { if (! mail($Destinataire, $Sujet, $Message, $EnTetes)) ecrire_un_message_dans_les_logs } catch (Exception $Excep) { // traitement de l'exception }
Quelqu'un pourraît-il m'expliquer pourquoi l'erreur n'est pas interceptée ? Je ne cherche pas ici à corriger l'erreur de configuration éventuelle (je pense savoir d'où ça vient), mais bien à comprendre pourquoi le plantage n'est pas intercepté. Je ne souhaite pas que le jour où le serveur mail n'est pas joignable pour X raison, l'utilisateur ait un message brut comme celui ci-dessus.Warning: mail() [function.mail]: Failed to connect to mailserver at "smtp.mon_domaine.com" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in fnc_commun.php on line 46
Partager