Envoi de mail en PHP
Résolu
Plantakwatix
Messages postés
7
Statut
Membre
-
Plantakwatix Messages postés 7 Statut Membre -
Plantakwatix Messages postés 7 Statut Membre -
Bonjour,
Je suis actuellement sur un projet de site d'upload.
J'ai un soucis avec l'envoi de mail sur mes pages, voici le code :
Je ne reçois donc pas les mails ce qui n'est pas normal.
A l'aide svp, merci d'avance :)
Je suis actuellement sur un projet de site d'upload.
J'ai un soucis avec l'envoi de mail sur mes pages, voici le code :
//------------------------------- Envoi de mail ---------------------
// On règle le problème des serveurs de mail qui ne suivent pas la norme de passage à la ligne
if (!preg_match("#^[a-z0-9._-]+@(hotmail|live|msn).[a-z]{2,4}$#", $email))
{
$passage_ligne = "\r\n";
}
else
{
$passage_ligne = "\n";
}
// Boundary (frontière entre les différentes parties du message)
$boundary = '-----='.md5(rand());
// Sujet du mail
$sujet='Vos informations de connexion';
// En-tête du mail
$header = 'From: "Service telechargement <thibaut.gautheron@laposte.net>'.$passage_ligne;
$header.= 'Reply-to: "Service telechargement" <thibaut.gautheron@laposte.net>'.$passage_ligne;
$header.= 'MIME-Version: 1.0'.$passage_ligne;
$header.= 'Content-Type: multipart/alternative;'.$passage_ligne.' boundary="'.$boundary.'"'.$passage_ligne;
// Message HTML
$message_html='<html><head></head><body>
<p>Bonjour,
Voici les informations concernant votre compte, telles qu\'elles sont enregistrées :'.$passage_ligne.'
Identifiant : ' .$username .'
Mot de passe : ' .$mdp .'</p>
<p>A bientôt sur "Service téléchargement" !</p></body></html>';
// Création du message
$message = $passage_ligne.$boundary.$passage_ligne;
// Message au format HTML
$message .= 'Content-Type: text/html; charset="ISO-8859-1"'.$passage_ligne;
$message .= 'Content-Transfer-Encoding: 8bit'.$passage_ligne;
$message.= $passage_ligne.$message_html.$passage_ligne;
$message.= $passage_ligne."--".$boundary."--".$passage_ligne;
// Envoi du mail
if(mail($mail,$sujet,$message,$header))
{
// Message de confirmation
}
else
{
// Message d'erreur de l'envoi de mail
}
Je ne reçois donc pas les mails ce qui n'est pas normal.
A l'aide svp, merci d'avance :)
5 réponses
-
bonjour Plantakwatix,
Pourrais tu vérifier<?php $to="ton email"; if(mail($to,"test","test")) echo "ça marche"; else echo " -;)"; ?>
si ça marche alors il faut encore vérfier ton code, sinon il faut vérifier la config SMTP (php.ini) -
Merci de ta réponse lilla85
Ton code me dit que ça marche donc il doit y avoir une erreur dans mon code que j'ai contrôlé 10 fois =/ -
pour détecter la source du problème on va procéder :
essaye cela :
<?php
if(mail($mail,$sujet,$message))
{
echo "erreur dans".$header;
}
else
{
echo "erreur au moins dans".$message;
}
?> -
Eh bien c'est une erreur au moins dans le $message.
erreur au moins dans -----=7e39cee1d2eb257eddb5a4d386c4c35e Content-Type: text/html; charset="ISO-8859-1" Content-Transfer-Encoding: 8bit
Bonjour, Voici les informations concernant votre compte, telles qu'elles sont enregistr?es : Identifiant : Mot de passe :
A bient?t sur "Service t?l?chargement" !
-------=7e39cee1d2eb257eddb5a4d386c4c35e-- -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Problème réglé, le soucis venait de l'envoi de l'email, j'en ai bavé merci quand même ;)