Fonction mail. Byzarerie

Mammouth du PHP | 531 Messages

14 mai 2007, 11:29

Bonjour,

Je rencontre un probleme avec la fonction mail. En arrivant ce matin je re-teste mon script de vendredi, qui marchait parfaitement... et la surprise les mails ne partent plus. Pas d'erreurs a prioris. Soit c'est un probleme avec mon hebergeur soit j'ai touché au code sans faire gaff mais je pense pas :

Code : Tout sélectionner

$to= $_SESSION['session_user']; $subject= $data['titre_note']; $message= $data['texte_note']; $headers= 'From: [email protected]' . "\r\n" . 'Reply-To: [email protected]' . "\r\n" . 'X-Mailer: PHP/' . phpversion(); mail($to, $subject, $message, $headers);
Hebergeur donc je suppose... ?

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

14 mai 2007, 11:47

Vérifies ce que te retourne la fonction mail(), elle t'en dira sans doute beaucoup plus que nous sur les problèmes qu'elle a pu rencontrer ;)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Mammouth du PHP | 531 Messages

14 mai 2007, 12:04

Vérifies ce que te retourne la fonction mail(), elle t'en dira sans doute beaucoup plus que nous sur les problèmes qu'elle a pu rencontrer ;)
Oki,
Je sais pas si ça vaut quelquechose de faire ça : echo mail($to, $subject, $message, $headers);

Mais ça me retourne "1" :?

lem
Eléphant du PHP | 108 Messages

14 mai 2007, 12:18

Essaye plutôt:
$err_mail=mail($to, $subject, $message, $headers);
"echo" ne te donne que le code retour, ici tu répèreras les éventuels messages d'erreurs.
Lem.

Mammouth du PHP | 531 Messages

14 mai 2007, 12:25

Essaye plutôt:
$err_mail=mail($to, $subject, $message, $headers);
"echo" ne te donne que le code retour, ici tu répèreras les éventuels messages d'erreurs.
Merci pour l'info ^^
Page blanche... aucun message d'erreur.
Peut être que chz OVH c'est très long, tout simplement...

lem
Eléphant du PHP | 108 Messages

14 mai 2007, 12:26

OVH semble poser pas mal de problème pour les mails décidément.
Lem.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

14 mai 2007, 12:44

Euh.... à part mettre mon "1" dans une variable $err_mail au lieu de l'afficher, je vois pas trop ce que cela aurait apporté de plus :-s

Ceci dit, le 1 ou TRUE signifie donc que pour php, le mail est bien envoyé... pour la réception il n'est effectivement pas responsable, je mettrais donc ca également sur le compte de l'hébergeur :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Eléphant du PHP | 445 Messages

14 mai 2007, 13:27

Page blanche... aucun message d'erreur.
Si tu ne fais pas d'echo de la variable $err_mail, qui comme l'a dit Ryle, ne change rien avec l'echo direct de la fonction, il y a en effet une page blanche ^^

Renseigne toi peut-être sur les quotas d'envoi de mail de ton hébergeur, tu as peut-être dépassé une limite en nombre de mails ou je ne sais quoi...

Ou bien, dossier spam éventuellement, même si je pense que tu y as déjà fait un tour :)
LLDC
Ulti

lem
Eléphant du PHP | 108 Messages

14 mai 2007, 13:36

Oups, je suis bien désolée de cette info erronée. :oops:
Je dois confondre avec autre chose, mais quoi..
Lem.

Mammouth du PHP | 531 Messages

14 mai 2007, 14:35

Je confirme c'est OVH... je reçois tout avec du retard