Page 1 sur 1

problème e-mail

Posté : 27 juin 2013, 12:02
par ps6c0tic
bonjour tout le monde, je suis novice en php.
J'ai pour projet de réaliser un site web en php et là je rencontre quelques problèmes:
j'ai créé un formulaire qui récupère des données d'ailleurs et lorsqu'on commit j'appelle un autre page qui traite l'envoie du mail. J'ai installé 'Test Mail Server' pour voir si je receptionne les mail en local d'abord.
Alors voila si le mai lest envoyer il y a redirection vers la page d'accueil sinon ben on va vers erreur.php et la je suis toujours rediriger vers la page d'erreur je ne sais pas ou je me suis trompé, pourriez-vous me donner des pistes:
Voici mon code d'envoie de mail:
<?php
$headers ='From: "nom"<[email protected]>'."\n";//adresse mail du demandeur
$headers ='Reply-To: [email protected]'."\n";//adresse de retour
$headers ='Content-Type: text/plain; charset="iso-8859-1"'."\n";//le jeu de caractères
$headers ='Content-Transfer-Encoding: 8bit';
$contenu='mail envoyé !';

if(mail(htmlspecialchars($_POST['email']),'sujet du mail' . htmlspecialchars($_POST['choix']), $contenu, $headers))
{
	header('location: accueil.php');
}
else
{
	header('location: erreur.php');
}
?>

Re: problème e-mail

Posté : 27 juin 2013, 15:48
par Mazarini
Supprime la redirection vers la page d'erreur pour voir si la fonction mail() affiche un message d'erreur (au cas ou php est paramétré pour bufferiser par défaut).

J'ai un doute sur l'utilisation de htmlspecialchars() pour le mail du destinataire : @ transformé et adresse mail plus valide ?
Normalement, il faut juste contrôler que l'adresse est au bon format et ne comporte pas de \n.
Idem pour le sujet et la présense \n ainsi que les variables qui sont utilisées pour les header.

Re: problème e-mail

Posté : 27 juin 2013, 23:37
par Do_While
éventuellement utiliser preg_match($motifAchercher, $mail) pour le mail avec une expression régulière, pour le contrôle du format d'email. :?: