IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

mail via un formulaire


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 44
    Points : 24
    Points
    24
    Par défaut mail via un formulaire
    Bonjour,

    voilà, j'ai créé un formulaire où les données de l'utilisateur seront envoyées dans un mail.

    Le script ne marche toujours pas malgré que je ne vois pas d'erreurs!
    merci de bien vouloir m'aider.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
     
    						<?php if ((empty($_POST["email"]))||(empty($_POST["nom"]))||(empty($_POST["prenom"]))||(empty($_POST["cp"]))||(empty($_POST["ville"]))||(empty($_POST["telephone"]))||(empty($_POST["adresse"]))||(!preg_match("#@#",$_POST['email']))||(empty($_POST["message"]))) {?>
     
    						<form method="post" action="">
    						<p class="titre">Coordonnées</p>
    			  <fieldset id="coordonnees">
     
    							<p>
     
    								<input type="radio" name="civilite" value="M." />M.
    								<input type="radio" name="civilite" value="Mlle" />Mlle
    								<input type="radio" name="civilite" value="Mme" />Mme
     
    								<?php if (isset ($_POST['civilite'])){
    								echo $_POST['civilite']; }?>
     
     
    							</p>
     
    							<p> *Nom: 
    								<input type="text" name="nom" class="fenetre" value="<?php
    								if(isset($_POST['nom'])) {
    								echo $_POST['nom'] ; }?>" />	<strong class="styleX"><?php  if ((isset($_POST['envoyer']))&&(empty($_POST['nom']))){
    									echo "Veuillez indiquer votre nom <br />";}?> </strong>
    							</p>
     
     
    							<p> *Prénom: 					
     
    								<input type="text" name="prenom" class="fenetre" value="<?php
    								if(isset($_POST['prenom'])) {
    								echo $_POST['prenom'] ; }?>" /><strong class="styleX"><?php  if ((isset($_POST['envoyer']))&&(empty($_POST['prenom']))){
    									echo "Veuillez indiquer votre prénom <br />";}?> </strong>
    							</p>
     
     
    							<p> *Adresse:   
    								<input type="text" name="adresse" class="fenetre" value="<?php 
    								if(isset($_POST['adresse'])) {
    								echo $_POST['adresse'] ; }?>" />	<strong class="styleX"><?php  if ((isset($_POST['envoyer']))&&(empty($_POST['adresse']))){
    								echo "Veuillez indiquer votre adresse <br />";}?> </strong>
    							</p>
     
    							<p> *Ville:   
    								<input type="text" name="ville" class="fenetre" value="<?php 
    								if(isset($_POST['ville'])) {
    								echo $_POST['ville'] ; }?>" />	<strong class="styleX"><?php  if ((isset($_POST['envoyer']))&&(empty($_POST['ville']))){
    								echo "Veuillez indiquer votre ville <br />";}?> </strong>
    							</p>
     
     
     
    							<p> *Téléphone:   
    								<input type="text" name="telephone" class="fenetre" value="<?php
    								if(isset($_POST['telephone'])) {
    								echo $_POST['telephone'] ; }?>" /><strong class="styleX"><?php  if ((isset($_POST['envoyer']))&&(empty($_POST['telephone']))){
    									echo "Veuillez indiquer votre téléphone <br />";}?> </strong>
     
    							</p>
     
    						<p>	*E-Mail:   
    								<input type="text" name="email" class="fenetre" value="<?php
    								if(isset($_POST['email'])) {
    								echo $_POST['email'] ; }?>" /><strong class="styleX"><?php  if ((isset($_POST['envoyer']))&&(empty($_POST['email']))){
    									echo "Veuillez indiquer votre mail<br />";}?>
    										<?php  if ((isset($_POST['envoyer']))&&(!preg_match("#@#", $_POST['email']))){
    									echo "Adresse mail invalide<br />";}?></strong> <br /><br /><br />
    						</p>	
     
    		</fieldset>
     
     
     
    								<p class="titre">Message</p>
     
    							 <fieldset id="message">
    							<p>  Objet:
     
     
     
    										<select class="fenetre" name="objet">
    											<option class="fenetre" value="renseignements"> Demande de devis</option>
    											<option class="fenetre" value="commande"> Commande</option>
    											<option class="fenetre" value="contact"> Contact</option>
     
    										<?php if (isset ($_POST['objet'])){
    										echo $_POST['objet'];} ?>
     
    										</select>
    							</p>
     
     
    							<p> Tapez votre message <br />
    								<textarea class="fenetre" name="message" cols="60" rows="5">
    								<?php 	
    											if(isset($_POST['message'])){
    											echo $_POST['message'];} ?>
    								</textarea>
    							</p>
    							<p class="titre"><a style="text-decoration:none;color:#f15d27;" href="accueil.html"> Accueil</a></p>
     
           </fieldset>
     
     
    							<p id="buttons"><input name="envoyer" type="submit" value="envoyer" /> 
    							<a style="background:#f58551;
    							color:#000000;
    							border:2px outset #f15e27;
      fontsize:1.2em;"
      href="contact.php">Effacer le message</a>  </p>  	
     
     
    								<p>
    									<strong class="styleX"><?php  if ((isset($_POST['envoyer']))&&(empty($_POST['message']))){
    									echo "Message vide!! <br />";}?></strong>
    								</p>
     
    				</form>
     
     
     
    							<?php  } else { 
    										$email= $_POST['email'];
    										$civilite= $_POST['civilite'];
    										$nom= $_POST['nom'];
    										$prenom=" ".$_POST['prenom'];
    										$adresse= $_POST['adresse'];
    										$ville=$_POST['ville'];										
    										$telephone= $_POST['telephone'];
    										$objet= $_POST['objet'];
    										$message=$_POST['message'];
     
          mail(
     
          'ulrich.vallee@yahoo.fr',
     
          'objet',
     
    "
    $civilite $nom $prenom 
     $adresse $ville $cp 
      $telephone 
     $objet 
     $message $entetemail" 
      ); }?>

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Est-ce que tu peux nous mettre un code un peu moins "aeré" parce que la c'est dur a suivre

    Sinon est-ce que ton code etait bien executé de bout en bout en passant tous les controles ?

    Apparement tu n'as pas defini les en-tetes dans ton fonction mail()

  3. #3
    Membre actif Avatar de BlackSmith
    Inscrit en
    Mars 2008
    Messages
    181
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Mars 2008
    Messages : 181
    Points : 207
    Points
    207
    Par défaut
    Voici la liste des erreurs ou incoherence présente dans ton code:
    Ton code php est mal placé ici, il faudrai qu'il soit dans une balise option
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <select class="fenetre" name="objet">
      <option class="fenetre" value="renseignements"> Demande de devis</option>
      <option class="fenetre" value="commande"> Commande</option>
      <option class="fenetre" value="contact"> Contact</option>
     
      <?php if (isset ($_POST['objet'])){echo $_POST['objet'];} ?>
    </select>
    Un bouton de type reset fonctionne aussi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a style="background:#f58551;color:#000000;border:2px outset #f15e27;fontsize:1.2em;" href="contact.php">Effacer le message</a>
    Je te conseil de verifier les valeur présentes dans les champs post avant d'envoyer un email. et il y a une erreur au niveau de $enteteemail : il s'agit du 4ème paramètre et ne doit pas être dans le 3ème avec le contenu du mail.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    $email= $_POST['email'];
    $civilite= $_POST['civilite'];
    $nom= $_POST['nom'];
    $prenom=" ".$_POST['prenom'];
    $adresse= $_POST['adresse'];
    $ville=$_POST['ville'];										
    $telephone= $_POST['telephone'];
    $objet= $_POST['objet'];
    $message=$_POST['message'];
    mail('ulrich.vallee@yahoo.fr','objet',"$civilite $nom $prenom $adresse $ville $cp $telephone $objet $message $entetemail" ); }?>

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 44
    Points : 24
    Points
    24
    Par défaut
    Merci pour tous ces renseignements, mais je ne vois pas en tout cas par rapport à ce que vous m'avez dit ce qui empêcherait l'envoi du mail...

    Ce ne sont que de petits détails qui sont certes utiles, mais je ne crois vraiment pas que ces rectifications changeront quelque chose!

    Merci d'avance pour de nouvelles réponses!

  5. #5
    Membre actif Avatar de BlackSmith
    Inscrit en
    Mars 2008
    Messages
    181
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Mars 2008
    Messages : 181
    Points : 207
    Points
    207
    Par défaut
    Le problème de l'envoie du mail viens de la derniere ligne de ton code source, il faux que tu deplace $entetemail apres la chaine de caractère pour en faire un 4ème paramètre pour la fonction mail.

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    498
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 498
    Points : 461
    Points
    461
    Par défaut
    Que contient ton $entetemail? Pour moi, ce champ devrait être le 4ème paramètre de la fonction mail()...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    mail('ulrich.vallee@yahoo.fr','objet',"$civilite $nom $prenom $adresse $ville $cp $telephone $objet $message", $entetemail);
    http://fr.php.net/manual/fr/function.mail.php

    EDIT : Plus rapide BlackSmith!!

Discussions similaires

  1. Envoyer un mail via un formulaire de contact
    Par beaudelaire dans le forum ASP.NET
    Réponses: 1
    Dernier message: 18/11/2011, 09h44
  2. envoi d'un mail via un formulaire
    Par DiverSIG dans le forum Ext JS / Sencha
    Réponses: 1
    Dernier message: 18/04/2011, 12h06
  3. Envoie mail via tuto formulaire slide
    Par manusimon dans le forum jQuery
    Réponses: 1
    Dernier message: 29/01/2010, 10h45
  4. Envoi de mail via un formulaire
    Par zizou86 dans le forum Langage
    Réponses: 2
    Dernier message: 19/05/2008, 12h27
  5. [Configuration] problème de réception de mail via formulaire
    Par FraK dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 5
    Dernier message: 26/06/2007, 17h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo