Page 1 sur 1

Variables GET n'apparaissent pas dans l'URL

Posté : 22 mars 2012, 18:41
par Derwann
Bonjour tout le monde,

J'ai fait un formulaire avec une méthode GET, or quand je cliquer sur le bouton submit, les variables n'apparaissent pas dans l'URL.

J'ai : http://www.azzerrt.php
Au lieu de : http://www.azzerrt.php?variable1=blabla ... le2=blabla

Sauriez-vous me dire ce que je fais de mal ?

Le code est le suivant si vous en avez besoin
 <form name="filtre" method="GET" action="accordlabs.php">
<tr> 
<td><input type="hidden" name="CMD" value="<?php echo $_GET["CMD"]; ?>"> </td>
<td><INPUT  TYPE=TEXT  NAME="fitem" VALUE="<?php echo $_GET["fitem"]; ?>"></td>
<td><INPUT  TYPE=TEXT  NAME="flabo" VALUE="<?php echo $_GET["flabo"]; ?>"></td>
<td ><INPUT  TYPE=TEXT  NAME="fsubs" VALUE="<?php echo $_GET["fsubs"]; ?>"> </td>
<td><INPUT  TYPE=TEXT  NAME="fquanti" VALUE="<?php echo $_GET["fquanti"]; ?>"></td>	
<td><INPUT  TYPE=TEXT  NAME="frempla" VALUE="<?php echo $_GET["frempla"]; ?>"></td>
<td> <select name="fperia">
      <option value="''></option>
      <option value="1" <?php if($_GET["fperia"]==1) echo "selected"; ?>>1 semaine</option>
      <option value="2" <?php if($_GET["fperia"]==2) echo "selected"; ?>>1 mois</option>
      <option value="3" <?php if($_GET["fperia"]==3) echo "selected"; ?>>3 mois</option>
      <option value="4" <?php if($_GET["fperia"]==4) echo "selected"; ?>>6 mois</option>
      <option value="5" <?php if($_GET["fperia"]==5) echo "selected"; ?>>1 an</option>
      <option value="6" <?php if($_GET["fperia"]==6) echo "selected"; ?>>1 an</option>
       </select>
</td>
<td >< 
         <select   name="fetat" >
         <option value="" <?php if ($fetat=="") echo "selected";?>></option>
         <option value="a" <?php if ($_GET["fetat"]=='a') echo "selected";?> >Attente</option>
         <option value="c" <?php if ($_GET["fetat"]=='c') echo "selected";?> >Accord</option>
         <option value="r" <?php if ($_GET["fetat"]=='r') echo "selected";?> >Refus</option>
         </select>
</td>
<td>     <select  name="fperir" >
             <option value=''"></option>
             <option value="1" <?php if($_GET["fperir"]==1) echo "selected"; ?>> 1 semaine</option>
             <option value="2" <?php if($_GET["fperir"]==2) echo "selected"; ?>>1 mois</option>
             <option value="3" <?php if($_GET["fperir"]==3) echo "selected"; ?>>3 mois</option>
             <option value="4" <?php if($_GET["fperir"]==4) echo "selected"; ?>>6 mois</option>
             <option value="5" <?php if($_GET["fperir"]==5) echo "selected"; ?>>1 an</option>
             <option value="6" <?php if($_GET["fperir"]==6) echo "selected"; ?>>1 an</option>
           </select>
</td>
<td><input type="submit" value="Rechercher" ></td>
</tr>
</form> 

Re: Variables GET n'apparaissent pas dans l'URL

Posté : 22 mars 2012, 18:50
par moogli
Salut,

Tu veux dire que sur accordlabs.php tu n'a pas les variables dans l'url ?
Certain navigateur masque les variables d'url.

Lors du premier accès à ta page tu doit avoir des erreurs qui sont normales vu du tu utilise des index qui n'existe pas dans $_GET[].

À tu des messages d'erreurs ?
Quel est le code de validations du formulaire ?

@+

Re: Variables GET n'apparaissent pas dans l'URL

Posté : 23 mars 2012, 11:00
par Derwann
Oui en effet je n'ai pas les variables sur accordlabs.php et j'utilise FireFox en version 11.0

Non je n'ai pas de message d'erreur lorsque je charge la page mais effectivement ces index n'existent pas dans $_GET[] je pensais que dans ce cas là il retournait tout simplement la valeur NULL.

Ce qu'il faut savoir c'est que le formulaire est sur la page accordlabs donc quand on clique sur submit la page est sensée se réactualisée avec une création de ces index dans $_GET[]

Re: Variables GET n'apparaissent pas dans l'URL

Posté : 23 mars 2012, 11:34
par xTG
Modifies ton niveau d'erreur dans ton php.ini
Car selon ce que tu nous dis tu n'affiches pas toutes les erreurs (dont les warnings visiblement).

Cela dit à la soumission du formulaire tu devrais avoir en effet création de ces index.
Un var_dump() en tout début de fichier n'indique rien de tel ?

Re: Variables GET n'apparaissent pas dans l'URL

Posté : 23 mars 2012, 11:46
par Derwann
Je viens d'identifier l'erreur et vous n'aviez pas toutes les clefs en main pour la desceller. Mon formulaire était en fait à l'intérieur d'un autre formulaire, un peu comme ceci :

------Formulaire 1 avec POST --------

------Formulaire 2 avec GET --------


------Fin formulaire 2 avec son submit------

----Fin formulaire 1 avec son submit -----

Donc quand je clique sur le submit ça actionne le premier formulaire au lieu du deuxième.
Une idée sur comment faire cohabiter un formulaire à l'intérieur d'un autre ou c'est tout simplement pas possible ?

Re: Variables GET n'apparaissent pas dans l'URL

Posté : 23 mars 2012, 12:02
par xTG
Ce n'est pas possible. ;)

Re: Variables GET n'apparaissent pas dans l'URL

Posté : 23 mars 2012, 12:04
par moogli
non, sépare les !

@+

Re: Variables GET n'apparaissent pas dans l'URL

Posté : 23 mars 2012, 12:08
par Mazarini
Si tu utilises un seul formulaire et que tu fais le traitement en fonction du bouton actionné ca doit marcher très bien. Via javascript tu peux également modifier l'attribut action du formulaire.
Autrement, il faut faire 2 formulaires disjoints.

Re: Variables GET n'apparaissent pas dans l'URL

Posté : 23 mars 2012, 12:23
par Derwann
Je pense être capable de les séparer mais je pense que je vais être amener à devoir ajouter un autre formulaire quand même à l'intérieur d'un autre or si c'est impossible je en sais pas comment faire. Je m'explique :

Image

Les zones colorées correspondent à des formulaires.
Ma page affiche dans un tableau des tuples d'items de ma base de donnée.

La zone verte est un filtre pour n'afficher que certains item c'est celui-ci qui utilise le GET et que j'ai donc sorti de la zone rouge.

La zone rouge sont des lignes (tuples) de ma base de donnée qui sont afficher, on peut en modifier les champs.

Les zones bleu sont des formulaires qui vont envoyer un mail au destinataire qui est dans sa ligne quand on pressera leur submit.

Comment éviter d'avoir les formulaires "bleu" dans le formulaire "rouge" dans ce cas là ?

Re: Variables GET n'apparaissent pas dans l'URL

Posté : 23 mars 2012, 12:28
par xTG
Et on formulaire pour envoyer un mail il contient beaucoup d'éléments ou juste des hidden et un bouton...
Car auquel cas remplaces le par un lien. ;)

Re: Variables GET n'apparaissent pas dans l'URL

Posté : 23 mars 2012, 12:33
par Derwann
Un lien ! Mais bien sûr ! C'est vrai que je n'y avais pas pensé, j'étais focalisé sur des formulaires ... En tout les cas merci beaucoup pour votre aide et le temps que vous y avez consacré ! :)