Passage de variables de formulaire

Résolu
arnold002 Messages postés 121 Date d'inscription mercredi 27 octobre 2004 Statut Membre Dernière intervention 5 mars 2007 - 4 janv. 2005 à 18:55
tucsoufle Messages postés 1250 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 30 septembre 2007 - 5 janv. 2005 à 17:06
Bonjour,
Voila mon problème....
Je passe des variables d'un 1er formulaire vers une page ex.php contenant des requêtes différentes selon les choix effectués dans le dit formulaire, en GET.
La page ex.php contient un 2ème formulaire en POST qui doit venir affiner la requête initiale.
J'arrive à conserver les variables du 1er formulaire (grâce à GET) mais celles du 2ème ne passent pas à la première validation (seulement lors d'une 2ème validation).
J'ai essayé avec la méthode GET mais dans ce cas, seules les données du 2ème formulaire sont conservées et apparaissent dans l'URL, celles du 1er disparaissant.
Comment puis je faire ?
Merci de vos réponses !

11 réponses

tucsoufle Messages postés 1250 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 30 septembre 2007 1
4 janv. 2005 à 21:38
pour anthomicro

je connais pas ta syntaxe, en quoi est t-elle mieux stp ?



pour arnold

ma methode marche bien, ton formulaire 2 doit ressembler a ca :
<form action= "<?php echo $PHP_SELF;
?>" method="GET" style="font-size: 10px;">

<?php


echo "choix
']."" />";


echo "cat
']."" />";


echo "select
']."" />";


echo "difficulte
" value="".$_GET['
difficulte
']."" />";


?>


Trier par :
<select name="tri" style="font-size: 10px;">
<option value="titre">Titre
<option value="id">N°</option></select> &nbsp;
Sens :&nbsp;
<select name ="ordre" style="font-size: 10px;">
<option value="asc">Croissant
<option value="desc">Décroissant</option></select>&nbsp;

</form>




Je te donne une idée, tu me donnes une idée, nous avons chacun deux idées.
Mon site Internet
3
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
4 janv. 2005 à 20:41
Salut,



donne-nous le code de tes deux pages stp.



a ++

Vulgarisation informatique : Entraide, dépannage et vulgarisation informatique

Forum d'entraide informatique (14 catégories)
0
tucsoufle Messages postés 1250 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 30 septembre 2007 1
4 janv. 2005 à 20:59
salut

je ne peut pas te dire pourquoi tu a besoin de valider ton code, il faudrait le code



par contre,

si tu veut passer les données du 1er formulaire a la troisieme page

tu peut sur la page ex.php faire de cette maniere

entre tes balises form tu ecrit des champs cacher, comme ceci

<?php

echo "";

?>

de cette facon les valeurs seront renvoyer en meme temps que le formulaire sur la 3 éme page



voila @+

Je te donne une idée, tu me donnes une idée, nous avons chacun deux idées.
Mon site Internet
0
tucsoufle Messages postés 1250 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 30 septembre 2007 1
4 janv. 2005 à 21:00
désolé pas terrible la syntaxe

c'est plutot ca :

<?php

echo "";

?>

Je te donne une idée, tu me donnes une idée, nous avons chacun deux idées.
Mon site Internet
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
arnold002 Messages postés 121 Date d'inscription mercredi 27 octobre 2004 Statut Membre Dernière intervention 5 mars 2007
4 janv. 2005 à 21:01
1er formulaire sur page form.php:



<form action= "ex.php" method="GET" style="font-size: 10px;">
font-size
: 10px;" value="Tapez un mot, un N° de recette" onFocus="this.value='' ">
<select name ="select" style= "font-size: 10px;">
<option value="titre">Dans le titre
<option value="ingredient">Dans les ingrédients</option>
<option value="id">Par numéro</option></select>
<select name="cat" style="font-size: 10px;">
<option value="">Toutes catégories
<option value="1">Desserts aux fruits</option>
<option value="2">Dessert au chocolat</option>
<option value="3">Tartes & tourtes</option>
<option value="4">Bavarois, entremets & flans</option>
<option value="5">Crèmes de base</option>
<option value="6">Pâtes de base</option>
<option value="7">Gaufres, beignets & choux</option>
<option value="8">Glaces & sorbets</option>
<option value="9">Coulis & sauces</option>
<option value="10">Petits fours & biscuits secs</option>
<option value="11">Gâteaux & cakes</option>
<option value="12">Bonbons & friandises</option>
<option value="13">Pains & viennoiseries</option>
</select>

<select name="difficulte" style="font-size: 10px;">
<option value="">Toutes difficultés
<option value="Facile">Facile</option>
<option value="Intermédiaire">Intermédiaire</option>
<option value="Difficile">Difficile</option>
</select> &nbsp;
</form>

la page search.php avec les requêtes :


$sql
= ("SELECT count(id) FROM recette WHERE difficulte= '$difficulte ' AND cat=' $cat' AND $select LIKE '%$choix%' order by '$tri' $ordre");
$resultat = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error());
$nb_total = mysql_fetch_array($resultat);


$nb_affichage_par_page = 8;
$page = ceil($nb_total/$nb_affichage_par_page);
$page_active = floor(($debut/$nb_affichage_par_page)+1);


$sql
= ( "SELECT * FROM recette WHERE difficulte=' $difficulte' AND cat ='$cat' AND $select LIKE '%$choix%' order by '$tri' $ordre LIMIT ".$_GET['debut'].",".$nb_affichage_par_page."");
$req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error
());



Le 2ème formulaire sur search.php



<form action="<?php echo( " $PHP_SELF?choix =$choix&select= $select &difficulte= $difficulte&cat =$cat&tri= $tri &ordre= $ordre");
?>" method ="POST" style= "font-size: 10px;">
Trier par :
<select name="tri" style="font-size: 10px;">
<option value="titre">Titre
<option value="id">N°</option></select> &nbsp;
Sens :&nbsp;
<select name ="ordre" style= "font-size: 10px;">
<option value="asc">Croissant
<option value="desc">Décroissant</option></select> &nbsp;

</form>


while(
$result = mysql_fetch_array($req) )
{ ......}



En fait, ça marchait très bien jusqu'à ce que j'insère un affichage page par page de ce type :

.barre_navigation($nb_total, $nb_affichage_par_page, $_GET['debut'], 10)."

J'espère que ca suffira
0
arnold002 Messages postés 121 Date d'inscription mercredi 27 octobre 2004 Statut Membre Dernière intervention 5 mars 2007
4 janv. 2005 à 21:02
1er formulaire sur page form.php:



<form action= "ex.php" method="GET" style="font-size: 10px;">
font-size
: 10px;" value="Tapez un mot, un N° de recette" onFocus="this.value='' ">
<select name ="select" style= "font-size: 10px;">
<option value="titre">Dans le titre
<option value="ingredient">Dans les ingrédients</option>
<option value="id">Par numéro</option></select>
<select name="cat" style="font-size: 10px;">
<option value="">Toutes catégories
<option value="1">Desserts aux fruits</option>
<option value="2">Dessert au chocolat</option>
<option value="3">Tartes & tourtes</option>
<option value="4">Bavarois, entremets & flans</option>
<option value="5">Crèmes de base</option>
<option value="6">Pâtes de base</option>
<option value="7">Gaufres, beignets & choux</option>
<option value="8">Glaces & sorbets</option>
<option value="9">Coulis & sauces</option>
<option value="10">Petits fours & biscuits secs</option>
<option value="11">Gâteaux & cakes</option>
<option value="12">Bonbons & friandises</option>
<option value="13">Pains & viennoiseries</option>
</select>

<select name="difficulte" style="font-size: 10px;">
<option value="">Toutes difficultés
<option value="Facile">Facile</option>
<option value="Intermédiaire">Intermédiaire</option>
<option value="Difficile">Difficile</option>
</select> &nbsp;
</form>

la page search.php avec les requêtes :


$sql
= ("SELECT count(id) FROM recette WHERE difficulte= '$difficulte ' AND cat=' $cat' AND $select LIKE '%$choix%' order by '$tri' $ordre");
$resultat = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error());
$nb_total = mysql_fetch_array($resultat);


$nb_affichage_par_page = 8;
$page = ceil($nb_total/$nb_affichage_par_page);
$page_active = floor(($debut/$nb_affichage_par_page)+1);


$sql
= ( "SELECT * FROM recette WHERE difficulte=' $difficulte' AND cat ='$cat' AND $select LIKE '%$choix%' order by '$tri' $ordre LIMIT ".$_GET['debut'].",".$nb_affichage_par_page."");
$req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error
());



Le 2ème formulaire sur search.php



<form action="<?php echo( " $PHP_SELF?choix =$choix&select= $select &difficulte= $difficulte&cat =$cat&tri= $tri &ordre= $ordre");
?>" method ="POST" style= "font-size: 10px;">
Trier par :
<select name="tri" style="font-size: 10px;">
<option value="titre">Titre
<option value="id">N°</option></select> &nbsp;
Sens :&nbsp;
<select name ="ordre" style= "font-size: 10px;">
<option value="asc">Croissant
<option value="desc">Décroissant</option></select> &nbsp;

</form>


while(
$result = mysql_fetch_array($req) )
{ ......}



En fait, ça marchait très bien jusqu'à ce que j'insère un affichage page par page de ce type :

.barre_navigation($nb_total, $nb_affichage_par_page, $_GET['debut'], 10)."

J'espère que ca suffira
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
4 janv. 2005 à 21:17
désolé pas terrible la syntaxe

c'est plutot ca :

<?php

echo "";

?>

en effet c'est pas terrible.



<?php

echo '';





Vulgarisation informatique : Entraide, dépannage et vulgarisation informatique

Forum d'entraide informatique (14 catégories)
0
arnold002 Messages postés 121 Date d'inscription mercredi 27 octobre 2004 Statut Membre Dernière intervention 5 mars 2007
4 janv. 2005 à 21:20
salut tucsoufle,
j'ai déjà essayé par ta méthode de variables cachées mais ça ne fonctionne pas.
le pb vient de la page search.php qui contient le 2ème formulaire.
j'ai essayé de passer les variables "tri" et "ordre" par la methode get mais du coup, mes premières variables "choix", "select", "difficulte" et "cat" sont effacées de l'url.
Y'a pas un moyen pour rajouter en methode get les variables tri et ordre à la suite des précédentes pour arriver à un truc comme :
search.php?choix=&cat=&difficulte=&select=&tri=&ordre=&debut=
merci de ton aide

Arnaud
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
4 janv. 2005 à 21:41
"
je connais pas ta syntaxe, en quoi est t-elle mieux stp ?"


Plus rapide et moins crade ;-)


Vulgarisation informatique : Entraide, dépannage et vulgarisation informatique

Forum d'entraide informatique (14 catégories)
0
arnold002 Messages postés 121 Date d'inscription mercredi 27 octobre 2004 Statut Membre Dernière intervention 5 mars 2007
5 janv. 2005 à 16:49
Merci tucsoufle,


grâce à ton code, j'ai réussi à faire passer toutes mes variables !!
0
tucsoufle Messages postés 1250 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 30 septembre 2007 1
5 janv. 2005 à 17:06
pas de quoi

heureux d'avoir pu t'aider



@+

Je te donne une idée, tu me donnes une idée, nous avons chacun deux idées.
Mon site Internet
0
Rejoignez-nous