[Resolu] Pb Formulaire + PHP -> le bouton Submit rafraichit la page...

Pb Formulaire + PHP -> le bouton Submit rafraichit la page... [Resolu] - PHP - Programmation

Marsh Posté le 12-09-2003 à 15:05:15    

Salut les pros, :)
 
 
J'ai fait un script PHP qui permet de récapituler ce que le visiteur a entré précédemment dans 2 formulaires, et dans la page j'ai aussi intégré un formulaire avec des champs cachés qui permet d'envoyer le contenu des formulaires vers une page mail.php qui utilise la fonction mail().
 
 
Le script qui récapitule marche bien, mais le problème c'est que le fait de cliquer sur le bouton Envoyer du formulaire a pour effet de rafraichir la page, et donc d'effacer toutes les variables. Une fois que le récapitulatif est vierge, le bouton Envoyer redirige bien vers le fichier mail.php, mais ce n'est plus d'aucune utilité :/
 
 
 
Pour voir par vous mêmes, vous pouvez essayer :
http://membres.lycos.fr/lesitecool [...] _devis.htm
 
- vous n'etes pas obligés de remplir tous les champs
- choisissez Devis, puis Pylône Autoportant pour arriver au second formulaire (Questionnaire_autoportant.php), suivi de la page qui pose problème (QAutoportant.php).
- vous pouvez télécharger toutes les sources ici : http://membres.lycos.fr/lesitecool/v2
 
 
 
 
 
Merci d'avance pour votre aide, ça fait 2 jours que j'épluche mes pages pour trouver une erreur mais je n'avance pas  :(


Message édité par frankie_flowers le 12-09-2003 à 19:17:31
Reply

Marsh Posté le 12-09-2003 à 15:05:15   

Reply

Marsh Posté le 12-09-2003 à 15:15:27    

sous firebird, le deuxième formulaire ne ressemble à rien du tout :D

Reply

Marsh Posté le 12-09-2003 à 15:18:59    

mais je comprends rien au problème :pt1cable:  
j'ai bien la recap avec ce que j'ai saisi  [:proy]  
après qd je valide, pourquoi tu réaffiches la page de récap?
 
il faut mettre une page de confirmation comme quoi ça s'est bien passé, non :??:

Reply

Marsh Posté le 12-09-2003 à 15:24:26    

dropsy a écrit :

mais je comprends rien au problème :pt1cable:  
j'ai bien la recap avec ce que j'ai saisi  [:proy]  
après qd je valide, pourquoi tu réaffiches la page de récap?
 
il faut mettre une page de confirmation comme quoi ça s'est bien passé, non :??:  


 
 
Mais c'est ça le probleme justement, c'est pas moi qui réaffiche la page de recap :D  Normalement en cliquant sur Envoyer tu devrais arriver sur une page disant "votre demande a bien été envoyée par mail", pais là le bouton Envoyer rafraichit !!  :ouch:  
 
 
Sinon pour le deuxieme formulaire, je ne pense pas qu'il ait de probleme d'affichage, reessaie parce que j'étais en train de bidouiller pendant ta visiste ;)

Reply

Marsh Posté le 12-09-2003 à 15:36:12    

ok, ça passe mieux en effet ;)  
sur la page de recap, ton formulaire à pour cible choix.php (target de la balise form), donc il faut que tu regardes ce que tu fais dans ce fichier [:proy]

Reply

Marsh Posté le 12-09-2003 à 15:50:47    

dropsy a écrit :

ok, ça passe mieux en effet ;)  
sur la page de recap, ton formulaire à pour cible choix.php (target de la balise form), donc il faut que tu regardes ce que tu fais dans ce fichier [:proy]  


 
 
Euh tu dois confondre avec le premier formulaire, parce que la cible de la page de recap (QAutoportant.php) s'appelle mail.php
 
 

Code :
  1. <form name="lastform" method="get" action="mail.php">
  2.       <input name="fiche2" type="hidden" value="TESTTT">
  3.       <input type="submit" name="Submit" value="Envoyer">
  4.       </form>


 
(d'ailleurs j'ai reduit le formulaire au minimum pour chercher le problème)


Message édité par frankie_flowers le 12-09-2003 à 15:52:59
Reply

Marsh Posté le 12-09-2003 à 16:05:19    

oui, erreur de manip à cause des frames  :pt1cable:  
 
je vois le code suivant:

...</form>
<form name=<blockquote>  
  <p>&nbsp;</p>
  <p>&nbsp;</p>
  <form name="lastform" method="get" action="mail.php">
    <div align="left"><font size="+1"> </font> <font size="+1">  
      <input name="fiche2" type="hidden" value="TESTTT">
      <input type="submit" name="Submit" value="Envoyer">
      </font></div>
              </form>
 
  <p>Si vous souhaitez modifier certaines donn&eacute;es, cliquez <a href="Questionnaire_autoportant.php">ICI</a></p>
  </blockquote>
</body>
</html>
 
</pre></xmp>


 
ça paraît louche, le form qui se ferme puis qui s'ouvre  :??:  
donc en supposant qu'on appelle bien mail.php (à vérifier pê), que fais tu dans mail.php

Reply

Marsh Posté le 12-09-2003 à 16:18:46    

En fait en téléchargeant les fichiers PHP en voit n'importe quoi comme code :D
 
Le code de QAutoportant.php, tel qu'il est sur le FTP est celui-ci (je vais me faire laminer car c'est fouilli et bourrin, mais bon j'aime bien Dreamweaver :D) :
 
 

Code :
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  2. <html>
  3. <head>
  4. <title>Document sans titre</title>
  5. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  6. </head>
  7. <body background="carr%E9_bleu.jpg">
  8. <div align="center">
  9.   <p><u><font size="4"><strong>R&eacute;capitulatif de votre demande :</strong></font></u></p>
  10.   <p>&nbsp;</p>
  11. </div>
  12. <blockquote>
  13.   <blockquote>
  14.     <blockquote>
  15.       <blockquote>
  16.         <blockquote>
  17.           <blockquote>
  18.             <blockquote>
  19.               <!-- Script PHP -->
  20.             </blockquote>
  21.           </blockquote>
  22.         </blockquote>
  23.       </blockquote>
  24.     </blockquote>
  25.   </blockquote>
  26. </blockquote>
  27. <?
  28. if($peinture!="OUI" )
  29. {
  30. $peinture2="NON";
  31. }
  32. else
  33. {
  34. $peinture2="OUI :";
  35. }
  36. if($chemin_cable!="Non" )
  37. {
  38. $chemin_cable2="OUI, Largeur $chemin_cable_largeur";
  39. }
  40. if($chemin_cable!="Oui" )
  41. {
  42. $chemin_cable2="NON";
  43. }
  44. if($plateforme!="OUI" )
  45. {
  46. $plateforme="NON";
  47. }
  48. if($mise_terre!="Tôle de cuivre avec 4 brins brasés" )
  49. {
  50. $mise_terre="Aucune";
  51. }
  52. // Si aucune antenne entrée, affiche Aucune, sinon affiche les caractéristiques de chaque antenne EXISTANTE
  53. $antenne1="Antenne 1 >>> Surface : <b>$surface1</b> &nbsp;&nbsp;&nbsp; Position et Azimut : <b>$position_azimut1</b>";
  54. if($antenne1=="Antenne 1 >>> Surface : <b></b> &nbsp;&nbsp;&nbsp; Position et Azimut : <b></b>" )
  55. {
  56. $antenne1="<b>Aucune</b>";
  57. }
  58. $antenne2="Antenne 2 >>> Surface : <b>$surface2</b> &nbsp;&nbsp;&nbsp; Position et Azimut : <b>$position_azimut2</b>";
  59. if($antenne2=="Antenne 2 >>> Surface : <b></b> &nbsp;&nbsp;&nbsp; Position et Azimut : <b></b>" )
  60. {
  61. $antenne2="";
  62. }
  63. $antenne3="Antenne 3 >>> Surface : <b>$surface3</b> &nbsp;&nbsp;&nbsp; Position et Azimut : <b>$position_azimut3</b>";
  64. if($antenne3=="Antenne 3 >>> Surface : <b></b> &nbsp;&nbsp;&nbsp; Position et Azimut : <b></b>" )
  65. {
  66. $antenne3="";
  67. }
  68. $antenne4="Antenne 4 >>> Surface : <b>$surface4</b> &nbsp;&nbsp;&nbsp; Position et Azimut : <b>$position_azimut4</b>";
  69. if($antenne4=="Antenne 4 >>> Surface : <b></b> &nbsp;&nbsp;&nbsp; Position et Azimut : <b></b>" )
  70. {
  71. $antenne4="";
  72. }
  73. $antenne5="Antenne 5 >>> Surface : <b>$surface5</b> &nbsp;&nbsp;&nbsp; Position et Azimut : <b>$position_azimut5</b>";
  74. if($antenne5=="Antenne 5 >>> Surface : <b></b> &nbsp;&nbsp;&nbsp; Position et Azimut : <b></b>" )
  75. {
  76. $antenne5="";
  77. }
  78. $antenne6="Antenne 6 >>> Surface : <b>$surface6</b> &nbsp;&nbsp;&nbsp; Position et Azimut : <b>$position_azimut6</b>";
  79. if($antenne6=="Antenne 6 >>> Surface : <b></b> &nbsp;&nbsp;&nbsp; Position et Azimut : <b></b>" )
  80. {
  81. $antenne6="";
  82. }
  83. $antenne7="Antenne 7 >>> Surface : <b>$surface7</b> &nbsp;&nbsp;&nbsp; Position et Azimut : <b>$position_azimut7</b>";
  84. if($antenne7=="Antenne 7 >>> Surface : <b></b> &nbsp;&nbsp;&nbsp; Position et Azimut : <b></b>" )
  85. {
  86. $antenne7="";
  87. }
  88. $antenne8="Antenne 8 >>> Surface : <b>$surface8</b> &nbsp;&nbsp;&nbsp; Position et Azimut : <b>$position_azimut8</b>";
  89. if($antenne8=="Antenne 8 >>> Surface : <b></b> &nbsp;&nbsp;&nbsp; Position et Azimut : <b></b>" )
  90. {
  91. $antenne8="";
  92. }
  93. $antenne9="Antenne 9 >>> Surface : <b>$surface9</b> &nbsp;&nbsp;&nbsp; Position et Azimut : <b>$position_azimut9</b>";
  94. if($antenne9=="Antenne 9 >>> Surface : <b></b> &nbsp;&nbsp;&nbsp; Position et Azimut : <b></b>" )
  95. {
  96. $antenne9="";
  97. }
  98. $questionnaire="<p align=center> <u>LIEU D'IMPLANTATION :</u> </p> <p> </p><blockquote> <p> Commune : <b> $commune </b> </p> <p>
  99.  Département : <b> $departement </b> </p> <p> Pays : <b> $pays </b> </p> <p> Code site : <b> $code_site </b> </p>
  100.  <p> Région de vent : <b> $region_vent </b> </p> <p> Type de site : <b> $type_site </b>  <b> $autre_site </b> </p>
  101.  <p></p><p align=center><u><br> PYLONE :</u> </p> <p> Hauteur du pylône : <b> $hauteur_pyl </b> </p>
  102.  <p> Hauteur du bâtiment : <b> $hauteur_bat </b> </p>
  103.   <p> Opérateurs : <b> $FTM $SFR $bouygues $dolphin $autre_operateur</b> </p>
  104.   <p></p><p align=center><u><br>ASCENSION :</u></p><p><b> $ascension </b></p>
  105.   <p></p><p align=center><u><br>SECURITE :</u></p><p>Type d'antichute : <b> $antichute $autre_antichute </b></p>
  106.   <p>Plateforme en tête : <b> $plateforme </b> </p>
  107.   <p>Nombre de paliers de repos : <b> $nbre_paliers </b></p>
  108.   <p>Nombre de repose-pieds sous les antennes : <b> $nbre_repose_pied </b></p>
  109.   <p>Condamnation : <b> $condamnation </b></p>
  110.   <p>Peinture : <b> $peinture2 $type_peinture &nbsp;&nbsp; $RAL</b></p>
  111.   <p></p>
  112.   <p align=center><u><br>MISE A LA TERRE :</u></p>
  113.   <p><b> $mise_terre </b></p>
  114.   <p></p>
  115.   <p align=center><u><br>PROTECTION FOUDRE :</u></p>
  116.   <p><b> $foudre </b></p>
  117.   <p></p>
  118.   <p align=center><u><br>ANTENNES :</u></p>
  119.   <p>$antenne1</p>
  120.   <p>$antenne2</p>
  121.   <p>$antenne3</p>
  122.   <p>$antenne4</p>
  123.   <p>$antenne5</p>
  124.   <p>$antenne6</p>
  125.   <p>$antenne7</p>
  126.   <p>$antenne8</p>
  127.   <p>$antenne9</p>
  128.   <p></p>
  129.   <p align=center><u><br>ORIENTATION DU MASSIF ET DU PYLONE:</u> </p>
  130.   <p> <b> $orientation </b></p>
  131.   <p></p>
  132.   <p align=center><u><br>CHEMIN DE CABLE VERTICAL :</u></p>
  133.   <p><b> $chemin_cable2 </b></p></blockquote>  ";
  134. // Enleve les anti slash
  135. $questionnaire=stripslashes($questionnaire);  
  136. echo $questionnaire; ?>
  137. <br>
  138. <p></p>
  139. <div align="center"><u><font size="4"><strong>Votre fiche client</strong></font></u><u><font size="4"><strong>
  140.   :</strong></font></u> </div>
  141. <p></p>
  142. <br>
  143. <br>
  144. <?
  145. // Brutasse Powa
  146. $fiche=stripslashes($fiche);
  147. $fiche=stripslashes($fiche);
  148. $fiche=stripslashes($fiche);
  149. $fiche=stripslashes($fiche);
  150. $fiche=stripslashes($fiche);
  151. $fiche=stripslashes($fiche);
  152. $fiche=stripslashes($fiche);
  153. $fiche=stripslashes($fiche);
  154. $fiche=stripslashes($fiche);
  155. echo "<br>";
  156. echo "$fiche";
  157. ?>
  158. <blockquote>
  159.   <p>&nbsp;</p>
  160.   <p>&nbsp;</p>
  161.   <form name="lastform" method="get" action="mail.php">
  162.     <div align="left"><font size="+1"> </font> <font size="+1">
  163.       <input name="fiche2" type="hidden" value="TESTTT">
  164.       <input type="submit" name="Submit" value="Envoyer">
  165.       </font></div>
  166.               </form>
  167.   <p>Si vous souhaitez modifier certaines donn&eacute;es, cliquez <a href="Questionnaire_autoportant.php">ICI</a></p>
  168.   </blockquote>
  169. </body>
  170. </html>

Reply

Marsh Posté le 12-09-2003 à 18:54:32    

frankie_flowers a écrit :

En fait en téléchargeant les fichiers PHP en voit n'importe quoi comme code :D
 
Le code de QAutoportant.php, tel qu'il est sur le FTP est celui-ci (je vais me faire laminer car c'est fouilli et bourrin, mais bon j'aime bien Dreamweaver :D) :


 
le code que j'ai mis au dessus n'est pas le php, mais le html généré par ton php, nuance ;) donc il y a embrouille au niveau de tes balises form
ça vient ptete pas de là, mais on sait jms

Reply

Marsh Posté le 12-09-2003 à 19:16:30    

Ca y est je viens de trouver ce qui foutait le bordel...  :love:  
 
Il y avait une erreur de syntaxe dans la transmission d'une variable d'un form à l'autre. En plus la méthode GET ne marche pas (probablement à cause des variables trop longues), il faut obligatoirement utiliser POST.
 
Merci quand meme pour ton aide dropsy ;)

Reply

Marsh Posté le 12-09-2003 à 19:16:30   

Reply

Marsh Posté le 12-09-2003 à 22:33:36    

Code :
  1. FICHE CLIENT :
  2. SOCIETE : test
  3. NOM : Mr trcu
  4. VILLE : mans
  5. ADRESSE : 4 allé du cul
  6. PAYS : bagdad
  7. TELEPHONE : jqleksn
  8. TELECOPIE : lkj
  9. E-MAIL : mlkj@f.com


 
Celui qui s'amuse avec mon site est prié de se dénoncer !!!
 
 
 :lol:  :lol:  :lol:  :lol:  :lol:  :lol:  :lol:  :lol:  :lol:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed