Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2908 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  probleme avec formulaire

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

probleme avec formulaire

n°1207035
lilougirl8
Posté le 25-09-2005 à 17:35:31  profilanswer
 

bonjour voila je voudrai créer un formulaire et recevoir les réponses par mail
J'ai réalisé la page du formulaire voici le code :  
 
 

Citation :

<form action="nadform.php3" method="post" name="fomrulaire" id="formulaire" >
            <div align="left">
              <p align="center">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="Style24">&nbsp;&nbsp;<span class="Style25">&nbsp;</span></span><span class="Style1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Vos Coordonn&eacute;es </span></p>
              <p align="center">&nbsp;</p>
              <p align="left">Civilité :&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                  <select name="civilite" id="civilite">
                    <option>Monsieur</option>
                    <option>Madame</option>
                    <option>Mademoiselle</option>
                    <option>Monsieur et Madame</option>
                  </select>
              </p>
              <p> Nom :&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                  <input name="nom" type="text" id="nom">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Prenom :
      <input name="prenom" type="text" id="prenom">
              </p>
              <p>Adresse :&nbsp;&nbsp;&nbsp;
                  <input name="adresse" type="text" id="adresse" size="66">
              </p>
              <p>Telephone :
                  <input name="telephone" type="text" id="telephone">
&nbsp;&nbsp;&nbsp;&nbsp;E-mail* :
      <input name="email" type="text" id="email" size="31">
              </p>
              <p>Cp :&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                  <input name="cp" type="text" id="cp">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Ville :
      <input name="ville" type="text" id="ville">
              </p>
              <p align="center" class="Style23">&nbsp;</p>
              <p align="center" class="Style23">Votre Bien</p>
              <p>Type de bien : &nbsp;&nbsp;&nbsp;
                  <select name="typebien" id="typebien">
                    <option>Villa</option>
                    <option>Maison de village</option>
                    <option>Appartement</option>
                    <option>Cabanon</option>
                    <option>Fond de commerce</option>
                    <option>Terrain</option>
                  </select>
              </p>
              <p>Nombre de pi&egrave;ces&nbsp; : &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                  <select name="nbpiece" id="nbpiece">
                    <option>Studio</option>
                    <option>T1</option>
                    <option>T2</option>
                    <option>T3</option>
                    <option>T4</option>
                    <option>T5 et +</option>
                  </select>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Surface :&nbsp;&nbsp;
      <input name="surface" type="text" id="surface">
              </p>
              <p>Ville* : &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                  <input name="ville2" type="text" id="ville2">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D&eacute;partement* :&nbsp;  
      <input name="departement" type="text" id="departement" size="21">
              </p>
              <p>Prix&nbsp;:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                  <input name="prix" type="text" id="prix">
&nbsp;&nbsp;&nbsp;&nbsp;
      <input type="radio" name="€" value="€">
&euro;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      <input type="radio" name="fr" value="Frs">
      Frs </p>
              <p align="center"><span class="Style23">* Indispensable</span></p>
              <p align="center">Descriptif suppl&eacute;mentaire </p>
              <p align="center">
                <textarea name="commentaire" cols="70" rows="8" wrap="VIRTUAL" id="commentaire"></textarea>
              </p>
              <p align="center">
                <input type="submit" name="Submit2" value="Envoyer">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      <input type="reset" name="Submit3" value="Annuler">
              </p>
              <p align="center">&nbsp;</p>
            </div>
          </form>


 
et ensuite script php pour recevoir le formulaire, je ne m'y conais pas trop et donc ça merde au niveau du mail, je le reçoi mais j'ai pas toutes les réponse
 
je ne compren pa je sui perdu ...sniff
 

Citation :

<html>
<head></head>
<body>
<?
/* Ce script a été développé par Nadine Gaine.
Vous pouvez l'utiliser gratuitement à des fins NON-COMMERCIALES seulement, et le modifier à votre convenance.
Trouvé sur http://www.toulouse-renaissance.net/c_outils/
*/
$MailTo = "@.fr"; //adresse à laquelle sera envoyé le contenu du formulaire
$MailCc = "@.fr"; // adresse à laquelle sera envoyé un communiqué
$MailSubject = "Reponse au formulaire"; //texte qui va figurer dans le champ "sujet" du email
$MailHeader = "From: @.fr"; //adresse email qui va figurer dans le champ "expéditeur" du email et qui peut être remplacé par la variable "$champx" ("$champ3" ).
 
/* Les routines suivantes permettent à chacune des variables de prendre la valeur des champs du formulaire et de les stocker ensuite dans la variable globale MailBody qui constituera le corps du message */
 
$Envoi = 1; //initialisation de la variable envoi à 1
 
if ($civilite == "" ){ //nom du champ1
$MailBody .= "Question 1 : $civilite\n"; //si le champ1 contient de l'information, elle est stockée dans la variable MailBody
}
if ($nom == "" ){
 
$MailBody .= "Question 2 : $nom\n";
}
if ($prenom == "" ){
$MailBody .= "Question 3 : $prenom\n";
}
if ($adresse == "" ){ //nom du champ1
$MailBody .= "Question 4 : $adresse\n"; //si le champ1 contient de l'information, elle est stockée dans la variable MailBody
}
if ($telephone == "" ){
$MailBody .= "Question 5 : $telephone\n";
}
if ($email == "" ){
$Envoi = 0;
echo("<font face=verdana size=2>Vous n'avez pas complété le champ 6</font><br>" );
$MailBody .= "Question 6 : $email\n";
}
if ($cp == "" ){ //nom du champ1
$MailBody .= "Question 7 : $cp\n"; //si le champ1 contient de l'information, elle est stockée dans la variable MailBody
}
if ($ville == "" ){
$MailBody .= "Question 8 : $ville\n";
}
if ($typebien == "" ){
$MailBody .= "Question 9 : $typebien\n";
}
if ($nbpiece == "" ){ //nom du champ1
$MailBody .= "Question 10 : $nbpiece\n"; //si le champ1 contient de l'information, elle est stockée dans la variable MailBody
}
if ($surface == "" ){
$MailBody .= "Question 11 : $surface\n";
}
if ($ville2 == "" ){
echo("<font face=verdana size=2>Vous n'avez pas complété le champ 12</font><br>" );
$Envoi = 0;
}
else {
$MailBody .= "Question 12 : $ville2\n";
}
if ($departement == "" ){ //nom du champ1
echo("<font face=verdana size=2>Vous n'avez pas complété le champ 13.</font><br>" ); //message qui s'affiche si le visiteur n'a pas rempli ce champ
$Envoi = 0; //si le champ1 n'a pas été rempli, la variable envoi prend la valeur de 0
}
else {
$MailBody .= "Question 13 : $departement\n"; //si le champ1 contient de l'information, elle est stockée dans la variable MailBody
}
if ($prix == "" ){
$MailBody .= "Question 14 : $prix\n";
}
if ($commentaire == "" ){
$MailBody .= "Question 15 : $commentaire\n";
}
//Routine pour les cases à cocher
 
$MailBody .="Question 8 : ";
 
$items = 3; //initialisation du nombre d'items possibles
 
for ($i = 1; $i <= $items; $i++) { //boucle sur le nombre d'items
 
$MailBody .= "$champ8[$i], "; //stockage des items choisis dans la variable MailBody
}
if ($Envoi == 0) echo("<p>&nbsp;</p><p>&nbsp;</p><p align=\"center\"><a href=\"vendre_votre_bien.htm\"><strong>Retour</strong></a></p>" );
//Envoi du message
 
if ($Envoi == 1) { //vérification que la variable envoi est bien à 1
mail($MailTo, $MailSubject, $MailBody, $MailHeader); //envoi du message
//mail($MailCc, $MailSubject, $MailBody, $MailHeader); //envoi du communiqué (enlever // pour le rendre opérationnel
echo("<p><font face=verdana size=2>Votre message a bien été envoyé à l'un de nos conseillers.<br>Merci de vos commentaire. <br> Nous vous contacterons dans les plus bref délais.</font>" ); echo("<p>&nbsp;</p><p>&nbsp;</p><p align=\"center\"><a href=\"vendre_votre_bien.htm\"><strong>Retour</strong></a></p>" ); //affichage d'un message de confirmation.
}
?>
</body>
</html>

mood
Publicité
Posté le 25-09-2005 à 17:35:31  profilanswer
 

n°1207040
shakpana
des fois, j'me demande ...
Posté le 25-09-2005 à 17:44:51  profilanswer
 

comment dire, c'est un peu la zone .... :~
c'est quoi les réponses que tu ne reçois pas, à partir de là tu pourras avancer un peu plus ...

n°1207049
lilougirl8
Posté le 25-09-2005 à 17:51:33  profilanswer
 

ah merci dc en fait j'avai pri un script tout fait, il fonctionnai bien mais le probleme c'est que si un des critères n'étaient pas repondu le mail ne senvoyai pas, jai donc suprimer la ligner "echo"  
maintenen le probleme est que d'une part, je ne reçoit ni les info des liste déroulante, et qand je repond aux qestions qui n'ont plus les "echo" je ne reçoi pas les infos dans le mail, et bizarmen quan ya pa de réponse je reçoi "question 1 et c'est vierge"
 les seul reponse quie marche sont donc les qestion email,deparrtemen et ville 2

n°1207055
shakpana
des fois, j'me demande ...
Posté le 25-09-2005 à 17:55:58  profilanswer
 

Code :
  1. if ($cp == "" ){ //nom du champ1
  2.   $MailBody .= "Question 7 : $cp\\n";
  3. }


Regardes bien cette ligne ... ce qui se passe :  
si $cp est vide on rajoute "Question 7 : $cp\n" à $MailBody
ce qui à mon avis n'est pas ce que tu souhaites faire :)
tu vois l'truc ?


Message édité par shakpana le 25-09-2005 à 17:57:03
n°1207056
lilougirl8
Posté le 25-09-2005 à 17:59:32  profilanswer
 

je voi, donc il faut que je definisse quelque chose entre "" c 'est bien ça?

n°1207068
shakpana
des fois, j'me demande ...
Posté le 25-09-2005 à 18:04:34  profilanswer
 

nan ...  
il faudrait que tu vérifies plutôt que $cp n'est pas vide, au lieu de l'inverse ...

Code :
  1. if($cp != "" ){
  2.   $MailBody .= "Question 7 : $cp\n";
  3. }


vois-tu ?

n°1207074
lilougirl8
Posté le 25-09-2005 à 18:14:58  profilanswer
 

je voi par contre je sait pas commen faire ça

n°1207086
shakpana
des fois, j'me demande ...
Posté le 25-09-2005 à 18:21:04  profilanswer
 

lilougirl8 a écrit :

je voi par contre je sait pas commen faire ça


?
tu remplaces == par != dans le fichier nadform.php3
seulement sur les champs concernés, par ex. $cp

n°1207089
lilougirl8
Posté le 25-09-2005 à 18:22:11  profilanswer
 

daccor je vai essayer vraimen merci

n°1207106
lilougirl8
Posté le 25-09-2005 à 18:29:18  profilanswer
 

bon ça à la'air de marcher vraimen merci, par contre, pour les case a cocher comment ça marche, parce que j'ai défini donc une ligne prix avec une case à choché soir pour euros soit pour francs

mood
Publicité
Posté le 25-09-2005 à 18:29:18  profilanswer
 

n°1207121
shakpana
des fois, j'me demande ...
Posté le 25-09-2005 à 18:41:08  profilanswer
 

bon c cool alors ...
mais deux choses, si t'en as envie :
- interresses-toi à CSS pour simplifier et améliorer ton formulaire
- penches-toi sur php4, $_GET, $_POST, http://fr3.php.net/manual/fr/security.globals.php
 
pour les checkbox, soit la case a été cochée, et tu récupères la variable avec le nom correspondant soit la variables n'existe pas car la case ... n'a pas été cochée ...
donc  

Code :
  1. if(isset($nom_de_la_checkbox_euro){
  2.   $MailBody .= "En euro\\n";
  3. }
  4. elseif(isset($nom_de_la_checkbox_francs){
  5.   $MailBody .= "En francs\\n";
  6. }
  7. // comment ça des Francs ?! des Francs Suisse ?


Mais des "radio" seront plus adaptés pour ne pas pouvoir selectionner les deux :)
mais c'est un autre sujet ...

n°1207142
lilougirl8
Posté le 25-09-2005 à 19:13:10  profilanswer
 

normalemen c'est des radio merci je vai me penché la dessus
 apres je regarderai le lien que tu ma envoyé :)

n°1207146
lilougirl8
Posté le 25-09-2005 à 19:26:31  profilanswer
 

ah jai un petit soucis  
 
 
Parse error: parse error, unexpected '{' in /home10/eq42432/html/nadform.php3 on line 76

n°1207150
shakpana
des fois, j'me demande ...
Posté le 25-09-2005 à 19:40:32  profilanswer
 

bon là, faut faire marcher un peu tes neurones :)
 
y'a 2 erreurs dans l'ex. que je t'ai mis plus haut ...

Code :
  1. if(isset($nom_de_la_checkbox_euro)){ // manque une parenthèse - corrigé
  2.   $MailBody .= "En euro\\n";
  3. }
  4. elseif(isset($nom_de_la_checkbox_francs)){ // manque une parenthèse - corrigé
  5.   $MailBody .= "En francs\\n";
  6. }


Message édité par shakpana le 25-09-2005 à 19:40:53
n°1207158
lilougirl8
Posté le 25-09-2005 à 20:07:34  profilanswer
 

a oui effectivement lol.. dsl je ne connai pas du tout le langage php.. je sui vraiment débutant mintenen quand je vois effectivement il manque une parenthese mais c'est le genre d' erreur qui méchappe lol je vais tester merci

n°1207166
lilougirl8
Posté le 25-09-2005 à 20:11:50  profilanswer
 

impec ça marche

n°1207401
FlorentG
Unité de Masse
Posté le 26-09-2005 à 10:25:29  profilanswer
 

P'tain le code HTML :sweat:

n°1207943
lilougirl8
Posté le 26-09-2005 à 18:50:40  profilanswer
 

oué pr le code jarrivai pa a claé ds la page alor jai mis des espace lol  
systeme D
Faut que je retravail tout ça

n°1207944
FlorentG
Unité de Masse
Posté le 26-09-2005 à 18:52:54  profilanswer
 

Pour information, &nbsp; sert à mettre une espace insécable, par exemple entre un point d'interrogation et le mot qui le précède. Ca ne sert absolument pas à mettre de l'espace entre deux éléments... Pour ça, faut utiliser des marges, qui doivent êtres définies dans le CSS.

n°1207959
shakpana
des fois, j'me demande ...
Posté le 26-09-2005 à 19:15:41  profilanswer
 

<offtopic>
Je rajouterais le respect de la syntaxe html ça va un peu va avec le respect de l'ortographe, ça permet de (re)lire ... pa ske sno spa vidan
</offtopic>


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  probleme avec formulaire

 

Sujets relatifs
Problème pour déclaration des règles formulaireprobleme Formulaire Access en plein écran
[HTML] Problème de formulaire sous EudoraProblème d'envois de formulaire avec IE
Probleme avec une variable dans un formulaireprobleme de formulaire a envoyer
Problème formulaire mail et bouton radioprobleme pour insérer des données via un formulaire
Probleme formulaire...Probleme de script avec un formulaire
Plus de sujets relatifs à : probleme avec formulaire


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR