Php envoyer un e-mail
julienptr
Messages postés
48
Statut
Membre
-
ifisch Messages postés 192 Statut Membre -
ifisch Messages postés 192 Statut Membre -
Bonjour, j'ai ecrit ce code php pour que l'utilisateur puisse ecrir un e-mail a partir d'un formulaire mais je recoi e-mail sans les variables que j'ai crée quel qu'un peut t-il m'aider ?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<?php
$Nom1 = $_POST['nom'];
$prenom2 = $_POST['prenom'];
$text = $_POST['text'];
$EMail = $_POST['EMail'];
$adresse = "test@gmail.com";
$sujet = "test";
$contenu_msg = " nom : $Nom1, prenom : $prenom2, e-mail client: $EMail, texte: $text" ;
$adresse_exp = "From: entreprise@test.fr";
mail($adresse, $sujet, $nom, $adresse_exp);
echo mail();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<?php
$Nom1 = $_POST['nom'];
$prenom2 = $_POST['prenom'];
$text = $_POST['text'];
$EMail = $_POST['EMail'];
$adresse = "test@gmail.com";
$sujet = "test";
$contenu_msg = " nom : $Nom1, prenom : $prenom2, e-mail client: $EMail, texte: $text" ;
$adresse_exp = "From: entreprise@test.fr";
mail($adresse, $sujet, $nom, $adresse_exp);
echo mail();
?>
A voir également:
- Php envoyer un e-mail
- Gmail envoyer un mail - Guide
- É majuscule - Guide
- Comment envoyer un mail en copie cachée - Guide
- Windows live mail - Télécharger - Mail
- Envoyer un mail avec accusé de reception gmail - Guide
31 réponses
Il faut faire un echo du print_r()
Non, c'est inutile.
Quand tu cliques sur le bouton du formulaire, as-tu mis quelque chose dans les nom, prénom, etc... ? Ça a peut-être l'air bête comme question, mais sait-on jamais....
Non, c'est inutile.
Quand tu cliques sur le bouton du formulaire, as-tu mis quelque chose dans les nom, prénom, etc... ? Ça a peut-être l'air bête comme question, mais sait-on jamais....
oui j'ai corriger mais rien ne change ....
oui j'ai remplis les champs du formulaire ....
normalement tous devrais marcher. je pense aussi qu'il y a un problème lorsque je déclare mais variables mais je ne trouve pas le quel.
oui j'ai remplis les champs du formulaire ....
normalement tous devrais marcher. je pense aussi qu'il y a un problème lorsque je déclare mais variables mais je ne trouve pas le quel.
je pense qu'il y a un problème lorsque je déclare mais variables mais je ne trouve pas le quel.
si print_r($_POST) n'affiche rien, il est normal que les variables $_POST['Nom1']; etc... ne contiennent rien.
De plus en plus bizarre...
Le script du formulaire que tu donnes message 15 est-il complet ou manque-t-il des morceaux ?
si print_r($_POST) n'affiche rien, il est normal que les variables $_POST['Nom1']; etc... ne contiennent rien.
De plus en plus bizarre...
Le script du formulaire que tu donnes message 15 est-il complet ou manque-t-il des morceaux ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
désoler mais je ne comprend pas ou je doit mettre print_r($_POST) dans mon script. peut tu me montrer ?
<fieldset> <form action="mail2.php" method="post"> <p> <label for="nom">Nom : </label> <input type="text" name="Nom1" id="nom" accesskey="n" /> </p> <p> <label for="prenom">Prénom :</label> <input type="text" name="prenom" id="prenom" accesskey="p" /> </p> <p> <label for="e-mail">E-mail</label> <input type="text" name="EMail" id="e-mail" accesskey="m" /> </p> <p> <textarea name="text" cols="60" rows="15" id="text" accesskey="m"></textarea> </p> <p> <input type="submit" name="Envoyer" id="envoyer" value="Envoyer" /> </p> </form> </fieldset> <?php $M1 = $_POST['Nom1']; $prenom2 = $_POST['prenom']; $text = $_POST['text']; $EMail = $_POST['EMail']; echo $M1." et ".$prenom2." et ". $text ." et ".$EMail ; // teste si les variables sont bien récupéré $adresse = " test@gmail.com"; $sujet = "test"; $contenu_msg = "Nom : ".$M1."\n"; $contenu_msg .= "Prénom : ".$prenom2."\n"; $contenu_msg .= "E-mail client : ".$EMail."\n"; $contenu_msg .= "Texte : ".$text; ?>
J'ai remit aux normes tes label avec tes id au passage ...
Tu peux nous dires si les tests fonctionnent ? (si un message apparait dans la page qui envoie le le mail)
ifisch, as-tu une idée du point qui justifie le changement de comportement ? l'enctype ? l'id ? Histoire que je tourne moins en rond la prochaine fois.
Visiblement, le browser de MAC OS est plus exigeant (ou plus facilement perturbé...) que mon FF car chez moi le formulaire envoyait bien les données .
Visiblement, le browser de MAC OS est plus exigeant (ou plus facilement perturbé...) que mon FF car chez moi le formulaire envoyait bien les données .
J'ai modifié les erreurs dans le formulaire :
Le "for" du label doit renvoyer a l'"id" de l'input .. ensuite dans le code php :
dans contenu_msg tu ne récuperais non pas la valeur $M1 mais tu avait mit : Nom1 ce qui devait bloquer tes variables ... De plus ! Je ne sais pas si ton script fermais la balise php mais je ne voyait pas de "?>" a la fin .
Voila ^^
<label for="nom">Nom : </label> <input type="text" name="Nom1" id="nom" accesskey="n" />
Le "for" du label doit renvoyer a l'"id" de l'input .. ensuite dans le code php :
$M1 = $_POST['Nom1']; et $contenu_msg = "Nom : ".$M1."\n";
dans contenu_msg tu ne récuperais non pas la valeur $M1 mais tu avait mit : Nom1 ce qui devait bloquer tes variables ... De plus ! Je ne sais pas si ton script fermais la balise php mais je ne voyait pas de "?>" a la fin .
Voila ^^
Je sais bien que tu avais modifié l'id, tu l'avais dit et moi aussi. Quant à l'erreur de variable $M1 /$Nom1, je l'avais signalée à julienptr depuis longtemps et ce n'est sûrement pas elle qui empêchait de voir le prénom ni le texte ... Le problème est qu'il ne récupérait rien du tout dans $_POST.
Ma question (si c'est bien à moi que tu répondais...) n'était pas : "qu'as-tu changé ?" mais "sais-tu ce qui est déterminant dans ce que tu as changé ?". Car, au risque de me répéter, malgré les erreurs d'enctype et d'id, ça marchait très bien chez moi. Les navigateurs sont en général très, très tolérants (et heureusement quand on voit comment les normes ne sont pas respectées...)
Ma question (si c'est bien à moi que tu répondais...) n'était pas : "qu'as-tu changé ?" mais "sais-tu ce qui est déterminant dans ce que tu as changé ?". Car, au risque de me répéter, malgré les erreurs d'enctype et d'id, ça marchait très bien chez moi. Les navigateurs sont en général très, très tolérants (et heureusement quand on voit comment les normes ne sont pas respectées...)
Ben non je ne sais pas vraiment ... peut-etre .. en fait si surement, ca devait l'enctype qui comme son nom définit l'encodage, ton serveur devait bien encoder ou alors agir en mettant un autre encodage par défaut alors que ton serveur distant devait simplement ne pas réussir a encoder et donc : blanc . Je suppose ..