Envoie de mail en php
Résolu
Naruto-aurel
Messages postés
4
Date d'inscription
Statut
Membre
Dernière intervention
-
Nabla's Messages postés 18203 Date d'inscription Statut Contributeur Dernière intervention -
Nabla's Messages postés 18203 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je dois réaliser un formulaire de mail en php. Mais cela ne fonctionne pas... J'ai pourtant installer un serveur de mail smtp, j'ai réussis à envoyer un mail mais il ne me retournait pas le contenu voulu.
if(isset($_POST['captcha'])AND isset($_POST['Nom'])AND isset($_POST['Prénom'])AND isset($_POST['Téléphone'])AND isset($_POST['Email'])AND isset($captchacrypte)){
if ( $captchacrypte == md5($_POST['captcha']) AND !empty($_POST['captcha']) AND !empty($_POST['Nom']) AND !empty($_POST['Prénom']) AND !empty($_POST['Téléphone']) AND !empty($_POST['Email'])){
echo "\t\t\t<B style=\"color : #00ff00;\">Votre email a bien été transféré</b><br />\n";
$destinataire = "test@test.fr";
$objet = "Formulaire" ;
$message = $_REQUEST['Nom'] ;
$message .= $_REQUEST['Prénom'] ;
$message .= $_REQUEST['Téléphone'] ;
$message .= $_REQUEST['Email'] ;
$message = "C'est un premier test d'envoi d'un email en php.\n" ;
$message .= "comment sa va? \n";
// On envoi l'email
if( mail($destinataire, $objet, $message) ){ echo "Envoi du mail réussi.";
}
else{ echo "Echec de l'envoi du mail.";
}
}
else if ( $captchacrypte == md5($_POST['captcha']) AND !empty($_POST['captcha']) OR empty($_POST['Nom']) OR empty($_POST['Prénom']) OR empty($_POST['Téléphone']) OR empty($_POST['Email'])){
echo "\t\t\t<B style=\"color : #ff0000;\">Vérifier les champs obligatoires</b><br />\n";
}
else if ( !empty($_POST['captcha']) ) {
echo "\t\t\t<B style=\"color : #ff0000;\">Vérifier le captcha</b><br />\n";
}
}?>
Voila mon code, ce que je voudrais, c'est que le contenu du mail ait le nom, le prénom, le numéro de téléphone et l'email de l'utilisateur qui a remplis le formulaire.
Merci d'avance =)
Je dois réaliser un formulaire de mail en php. Mais cela ne fonctionne pas... J'ai pourtant installer un serveur de mail smtp, j'ai réussis à envoyer un mail mais il ne me retournait pas le contenu voulu.
if(isset($_POST['captcha'])AND isset($_POST['Nom'])AND isset($_POST['Prénom'])AND isset($_POST['Téléphone'])AND isset($_POST['Email'])AND isset($captchacrypte)){
if ( $captchacrypte == md5($_POST['captcha']) AND !empty($_POST['captcha']) AND !empty($_POST['Nom']) AND !empty($_POST['Prénom']) AND !empty($_POST['Téléphone']) AND !empty($_POST['Email'])){
echo "\t\t\t<B style=\"color : #00ff00;\">Votre email a bien été transféré</b><br />\n";
$destinataire = "test@test.fr";
$objet = "Formulaire" ;
$message = $_REQUEST['Nom'] ;
$message .= $_REQUEST['Prénom'] ;
$message .= $_REQUEST['Téléphone'] ;
$message .= $_REQUEST['Email'] ;
$message = "C'est un premier test d'envoi d'un email en php.\n" ;
$message .= "comment sa va? \n";
// On envoi l'email
if( mail($destinataire, $objet, $message) ){ echo "Envoi du mail réussi.";
}
else{ echo "Echec de l'envoi du mail.";
}
}
else if ( $captchacrypte == md5($_POST['captcha']) AND !empty($_POST['captcha']) OR empty($_POST['Nom']) OR empty($_POST['Prénom']) OR empty($_POST['Téléphone']) OR empty($_POST['Email'])){
echo "\t\t\t<B style=\"color : #ff0000;\">Vérifier les champs obligatoires</b><br />\n";
}
else if ( !empty($_POST['captcha']) ) {
echo "\t\t\t<B style=\"color : #ff0000;\">Vérifier le captcha</b><br />\n";
}
}?>
Voila mon code, ce que je voudrais, c'est que le contenu du mail ait le nom, le prénom, le numéro de téléphone et l'email de l'utilisateur qui a remplis le formulaire.
Merci d'avance =)
A voir également:
- Envoie de mail en php
- Publipostage mail - Accueil - Word
- Windows live mail - Télécharger - Mail
- Gmail envoyer un mail - Guide
- Comment envoyer un mail en copie cachée - Guide
- Programmer envoi mail gmail - Guide
7 réponses
je sais pas si c'est ca, mais ton code présente unne petite incohérence ici:
$message = $_REQUEST['Nom'] ;
$message .= $_REQUEST['Prénom'] ;
$message .= $_REQUEST['Téléphone'] ;
$message .= $_REQUEST['Email'] ;
$message = "C'est un premier test d'envoi d'un email en php.\n" ;
$message .= "comment sa va? \n";
T'as pas oublié un . devant le = a tout hasard ??? (sinon les lignes du dessus en servent à rien )
$message = $_REQUEST['Nom'] ;
$message .= $_REQUEST['Prénom'] ;
$message .= $_REQUEST['Téléphone'] ;
$message .= $_REQUEST['Email'] ;
$message = "C'est un premier test d'envoi d'un email en php.\n" ;
$message .= "comment sa va? \n";
T'as pas oublié un . devant le = a tout hasard ??? (sinon les lignes du dessus en servent à rien )
Maintenant sa fonctionne merci beaucoup.
L'envoie de mail fonctionne très bien, mais je n'arrive pas envoyer les champs qui proviennent du formulaire. Dans l'email que je recois, il n'y a que les deux champs texte et non les variables du formulaire.
Merci d'avance.
L'envoie de mail fonctionne très bien, mais je n'arrive pas envoyer les champs qui proviennent du formulaire. Dans l'email que je recois, il n'y a que les deux champs texte et non les variables du formulaire.
Merci d'avance.
Je connais pass l'utilisation de $_REQUEST, mais ce que je trouve idio, c'est que tu fais tous tes tests avec $_POST et qu'au final tu utilises $_REQUEST. Perso j'aurai mis post partout ... comme je te le dis, je ne connais pas requets, mais au moins le code aurai été consistant ...
Merci pour tes réponses^^.
j'ai utiliser la méthode post et cela fonctionne correctement.
if(isset($_POST['Nom'])AND isset($_POST['Prénom'])){
$destinataire = "test@test.fr";
$objet = "Formulaire de contact" ;
$message .= $_POST['Nom'];
$message .= $_POST['Prénom'] ;
$message .= $_POST['Téléphone'] ;
$message .= $_POST['Email'] ;
$message .= $_POST['commentaire'] ;
// On envoi l'email
if( mail($destinataire, $objet, $message) ){ echo "Envoi du mail réussi.";
}
else{ echo "Echec de l'envoi du mail.";
}
}else{
echo "\t\t\t<B style=\"color : #ff0000;\">Vérifier les champs obligatoires</b><br />\n";
}
?>
Il me reste un dernier problème, c'est qu'à la reception de mon message, tout les champs sont collés dans le mail reçus.
Comment faut-il que je fasse pour que mes champs ne soit plus collés. J'ai pensé utiliser un <br/> mais l'envoie de mail me retourne des erreurs... je dois suremetn faire des fautes de syntax.
exemple: kevinDujardin087965 --> sa me retourne sa
et j'aimerais avoir sa:
kevin
dujardin
087965
Merci d'avance
j'ai utiliser la méthode post et cela fonctionne correctement.
if(isset($_POST['Nom'])AND isset($_POST['Prénom'])){
$destinataire = "test@test.fr";
$objet = "Formulaire de contact" ;
$message .= $_POST['Nom'];
$message .= $_POST['Prénom'] ;
$message .= $_POST['Téléphone'] ;
$message .= $_POST['Email'] ;
$message .= $_POST['commentaire'] ;
// On envoi l'email
if( mail($destinataire, $objet, $message) ){ echo "Envoi du mail réussi.";
}
else{ echo "Echec de l'envoi du mail.";
}
}else{
echo "\t\t\t<B style=\"color : #ff0000;\">Vérifier les champs obligatoires</b><br />\n";
}
?>
Il me reste un dernier problème, c'est qu'à la reception de mon message, tout les champs sont collés dans le mail reçus.
Comment faut-il que je fasse pour que mes champs ne soit plus collés. J'ai pensé utiliser un <br/> mais l'envoie de mail me retourne des erreurs... je dois suremetn faire des fautes de syntax.
exemple: kevinDujardin087965 --> sa me retourne sa
et j'aimerais avoir sa:
kevin
dujardin
087965
Merci d'avance
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
$message .= $_POST['Nom'] . "<br />";
$message .= $_POST['Prénom'] . chr(10) . chr(13) ;
$message .= $_POST['Téléphone'] ;
$message .= $_POST['Email'] ;
$message .= $_POST['commentaire'] ;
essayes et dis moi lequel fonctionne ... (le premier c'est si ton mail est en HTML, le 2° si c'est en format texte simple)
$message .= $_POST['Prénom'] . chr(10) . chr(13) ;
$message .= $_POST['Téléphone'] ;
$message .= $_POST['Email'] ;
$message .= $_POST['commentaire'] ;
essayes et dis moi lequel fonctionne ... (le premier c'est si ton mail est en HTML, le 2° si c'est en format texte simple)