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

  FORUM HardWare.fr
  Programmation
  PHP

  Formulaire qui est traité dans la même page.

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Formulaire qui est traité dans la même page.

n°963572
kerrighan
Carpe diem, seize the day...
Posté le 27-01-2005 à 11:42:06  profilanswer
 

Bonjour tout le monde  :hello:  
Bon je vais surement me faire huer mais j'ai une question de noob à poser ;)
 
Voila j'ai un formulaire dans lequel j'ai un champ liste.Lorsque l'utilisateur sélectionne un choix une fonction js récupère la valeur séletionnée et renvoie selon vers une page qui affiche une requète correspondant au choix.
J'aimerai faire quelque chose du genre (avec une seule page):
Un champ liste et en dessous, la requete qui s'affiche.
J'imagine que dois jouer avec les balises <div> non?
Pouvez vous m'aider?


---------------
I B M ThinkPad t40 1.5Ghz/80Go 7200rpm/1.25Go
mood
Publicité
Posté le 27-01-2005 à 11:42:06  profilanswer
 

n°963602
FlorentG
Unité de Masse
Posté le 27-01-2005 à 11:55:32  profilanswer
 

Déjà met un bouton "Ok" à côté de ta liste, ça aidera ceux qui naviguent au clavier, ou ceux qui n'ont pas javascript, ou ceux sous Lynx...
 
Sinon donc tu fait un formulaire normal, et dans le action, tu met genre :

<form method="get" action="?pouet=ok">
...
</form>


Ensuite dans ton php, t'aura un truc du genre :

Code :
  1. <html>
  2.   [...code de la page...]
  3.   <form>
  4.     [...ton formulaire avec la liste...
  5.   </form>
  6.   <div>
  7. <?php
  8.   if(isset($_GET['pouet']) && $_GET['pouet'] == 'ok') {
  9.     // Affichage du résultat ici
  10.   }
  11. ?>
  12.   </div>
  13. </html>

n°963661
kerrighan
Carpe diem, seize the day...
Posté le 27-01-2005 à 12:57:51  profilanswer
 

Est il possible de faire la même chose par la méthode post?


---------------
I B M ThinkPad t40 1.5Ghz/80Go 7200rpm/1.25Go
n°963664
FlorentG
Unité de Masse
Posté le 27-01-2005 à 13:01:30  profilanswer
 

Ouais, dans ce cas faut mettre un input hidden dans le formulaire. Mais sinon le GET serait mieux adapté, car il permetterait de bookmarker la page avec la requête désirée :)

n°963694
kerrighan
Carpe diem, seize the day...
Posté le 27-01-2005 à 13:32:17  profilanswer
 

Bon c'est possible ;) j'ai réussit à le faire fonctionner, mais sans input hidden (je ne sais pas ce que c'est :/)
En tout ca merci grandement :jap:
PAr contre j'ai une dernière question à te poser :whistle:
Apres ma requète, j'utilise un pg_fetch_array avec un boucle while afin d'afficher tout les résultats.
Le truc c'est qu'il est possible qu'il n'y ait aucune réponses.J'aimerai indiquer le message 'Aucun document trouvé' si il n'y a rien à afficher.
Comment dois je faire?
 
Mon code est du style:
 

Code :
  1. if (isset($_POST['P_Type']) && $_POST['P_Type'] == 'misc')
  2. {
  3. $query = pg_query($pgconnection, "select * from misc" );
  4. while ($liste = pg_fetch_array($query))
  5. {
  6. $titre = $liste["titre_misc"];
  7. $date = $liste["date_misc"];
  8. .......
  9. .......
  10. echo"Titre : $titre";
  11. echo"Date : $date";
  12. .......
  13. .......
  14. }
  15. }


---------------
I B M ThinkPad t40 1.5Ghz/80Go 7200rpm/1.25Go
n°963724
Xav_
The only one...
Posté le 27-01-2005 à 14:01:36  profilanswer
 

tu test que pg_num_rows($query)est supérieur à 0
http://fr3.php.net/manual/fr/function.pg-num-rows.php
 
sinon, echo 'Aucun document trouvé' ;


---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
n°963748
kerrighan
Carpe diem, seize the day...
Posté le 27-01-2005 à 14:31:27  profilanswer
 

Yes merci ;) je savais bien qu'il s'agissait d'un truc dans le genre :D


---------------
I B M ThinkPad t40 1.5Ghz/80Go 7200rpm/1.25Go
n°963764
ratibus
Posté le 27-01-2005 à 14:48:34  profilanswer
 

FlorentG a écrit :

<form method="get" action="?pouet=ok">
...
</form>



 
C'est un peu goret ce passage de paramètres :D
 
Dans tous les cas (GET et POST) il met ça dans son formulaire

Code :
  1. <input type="hidden" name="pouet" value="ok">


n°963766
FlorentG
Unité de Masse
Posté le 27-01-2005 à 14:52:21  profilanswer
 

ratibus a écrit :

C'est un peu goret ce passage de paramètres :D
 
Dans tous les cas (GET et POST) il met ça dans son formulaire

Code :
  1. <input type="hidden" name="pouet" value="ok">



 
Non seulement c'est goret, mais en plus ça marche pas, oups :D
 
Les action "?pouet=ok" fonctionnent qu'en POST. En GET, le paramètre pouet est viré je crois bien...

n°963775
kerrighan
Carpe diem, seize the day...
Posté le 27-01-2005 à 15:05:29  profilanswer
 

ratibus a écrit :

C'est un peu goret ce passage de paramètres :D
 
Dans tous les cas (GET et POST) il met ça dans son formulaire

Code :
  1. <input type="hidden" name="pouet" value="ok">



A quoi sert cet input?


---------------
I B M ThinkPad t40 1.5Ghz/80Go 7200rpm/1.25Go
mood
Publicité
Posté le 27-01-2005 à 15:05:29  profilanswer
 

n°963776
FlorentG
Unité de Masse
Posté le 27-01-2005 à 15:06:47  profilanswer
 

A passer un paramètre dans l'envoi. Genre en GET, si je veux passer un paramètre "pouet" avec pour valeur "ok", il me faut un input type="hidden"

n°963784
deliriumtr​emens
sic transit intestinal...
Posté le 27-01-2005 à 15:24:26  profilanswer
 

mais zenfin, quel mélange des genres
 
<form method="get" action="?pouet=ok>
c'est du GET (dans l'url) donc récupérable par $_GET['pouet'];
 
<form method ="post">
<input type="hidden" name="pouet" value="ok">
 
c'est du POST (donc récupérable par $_POST['pouet']; )


Message édité par deliriumtremens le 27-01-2005 à 15:26:04
n°963787
FlorentG
Unité de Masse
Posté le 27-01-2005 à 15:28:19  profilanswer
 

Le premier cas vire le pouet je crois bien, il faut donc le mettre en temps que input hidden.

n°963791
deliriumtr​emens
sic transit intestinal...
Posté le 27-01-2005 à 15:29:46  profilanswer
 

non.
 
De toutes manières tu ne récupéreras pas un input hidden avec un $_GET

n°963794
FlorentG
Unité de Masse
Posté le 27-01-2005 à 15:32:37  profilanswer
 

Si :)
 
Avec :

Code :
  1. <form method="get" action="?pouet=ok">
  2. </form>


J'arrivais pas à récupérer pouet, elle était inexistance dans $_GET.
 
Alors j'ai fait ça :

Code :
  1. <form method="get" action="?">
  2.   <input type="hidden" name="pouet" value="ok" />
  3. </form>


Et là elle était bien dans $_GET

n°963798
ratibus
Posté le 27-01-2005 à 15:36:18  profilanswer
 

deliriumtremens a écrit :

non.
 
De toutes manières tu ne récupéreras pas un input hidden avec un $_GET


Quoté pour la postérité  :p

n°963799
ratibus
Posté le 27-01-2005 à 15:37:41  profilanswer
 

FlorentG a écrit :

Si :)
 
Avec :

Code :
  1. <form method="get" action="?pouet=ok">
  2. </form>


J'arrivais pas à récupérer pouet, elle était inexistance dans $_GET.
 
Alors j'ai fait ça :

Code :
  1. <form method="get" action="?">
  2.   <input type="hidden" name="pouet" value="ok" />
  3. </form>


Et là elle était bien dans $_GET


Tu peux même enlever le ? dans le action.
Le navigateur se débrouille comme un grand pour envoyer les paramètres comme il faut :)

n°963803
deliriumtr​emens
sic transit intestinal...
Posté le 27-01-2005 à 15:42:46  profilanswer
 

ratibus a écrit :

Quoté pour la postérité  :p


 :p  :p  
 
Comment je me suis bien planté, honte à moi.
 
Bref, séance d'auto-flagellation avec des orties fraîches, zou.
 
Je m'en remettrai.

n°963807
Surfoo
Ça va ? ok.
Posté le 27-01-2005 à 15:46:58  profilanswer
 

votre $pouet=OK, en $_POST ou $_GET est un peu inutile je pense.
Lorsque qu'on valide le formulaire, le bouton submit est possède une variable (name="envoi" par exemple), et on peut lui attribuer une valeur (value="Envoyer" ). donc dans la page il suffit de vérifier si la variable envoi existe, et en plus si la valeur correspond à "Envoyer" si c'est mis dans le formulaire.

n°963810
ratibus
Posté le 27-01-2005 à 15:49:16  profilanswer
 

Surfoo a écrit :

votre $pouet=OK, en $_POST ou $_GET est un peu inutile je pense.
Lorsque qu'on valide le formulaire, le bouton submit est possède une variable (name="envoi" par exemple), et on peut lui attribuer une valeur (value="Envoyer" ). donc dans la page il suffit de vérifier si la variable envoi existe, et en plus si la valeur correspond à "Envoyer" si c'est mis dans le formulaire.


Tout à fait.  :jap:  
De mon côté je tenais juste à clarifier le passage de paramètres à l'aide d'un formulaire. :D

n°963812
FlorentG
Unité de Masse
Posté le 27-01-2005 à 15:51:26  profilanswer
 

Surfoo a écrit :

votre $pouet=OK, en $_POST ou $_GET est un peu inutile je pense.
Lorsque qu'on valide le formulaire, le bouton submit est possède une variable (name="envoi" par exemple), et on peut lui attribuer une valeur (value="Envoyer" ). donc dans la page il suffit de vérifier si la variable envoi existe, et en plus si la valeur correspond à "Envoyer" si c'est mis dans le formulaire.


 
Moi j'aime bien quand-même faire un truc style "action=send", au cas où un jour y'aurait un autre cas :)

n°963865
Xav_
The only one...
Posté le 27-01-2005 à 16:58:09  profilanswer
 

Surfoo a écrit :

votre $pouet=OK, en $_POST ou $_GET est un peu inutile je pense.
Lorsque qu'on valide le formulaire, le bouton submit est possède une variable (name="envoi" par exemple), et on peut lui attribuer une valeur (value="Envoyer" ). donc dans la page il suffit de vérifier si la variable envoi existe, et en plus si la valeur correspond à "Envoyer" si c'est mis dans le formulaire.


 
+1
tous les <form> que j'ai fait jusqu'à maintenant sont traité dans la même page qu'il sont affiché, et j'ai tjs tout basé sur un test de l'existance et de la valeur du submit... jamais eu de pb jusqu'à maintenant :sol:


---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
n°964257
Dj YeLL
$question = $to_be || !$to_be;
Posté le 28-01-2005 à 08:37:47  profilanswer
 

En ce qui me concerne je fais tout simplement un test d'existance sur le bouton submit :
 
if(isset($_POST['submit'])) { ... }
 
++


Message édité par Dj YeLL le 28-01-2005 à 08:38:18
mood
Publicité
Posté le   profilanswer
 


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

  Formulaire qui est traité dans la même page.

 

Sujets relatifs
Access97 - Bouton de commande d'un formulaire invisible si le ss-formJavascript / frames et formulaire :)
Comment passer un répertoire en paramètre dans un formulaireouvrir un formulaire en fonction d'une valeur
[RESOLU]Probleme saut de page et colonnesprix d'une page de gestion de tarifs
Formulaire et rappel de formulaireProbleme de page sur mon site
[ASP] Export Excel + saut de pageMailing List avec affichage des mails sur une page ouaibe
Plus de sujets relatifs à : Formulaire qui est traité dans la même page.


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