[PHP] passage de variables dans URL
Fermé
rasteda
Messages postés
34
Date d'inscription
dimanche 20 décembre 2009
Statut
Membre
Dernière intervention
3 mai 2010
-
31 déc. 2009 à 19:19
moderno31 Messages postés 870 Date d'inscription mardi 23 juin 2009 Statut Membre Dernière intervention 8 août 2012 - 2 janv. 2010 à 19:57
moderno31 Messages postés 870 Date d'inscription mardi 23 juin 2009 Statut Membre Dernière intervention 8 août 2012 - 2 janv. 2010 à 19:57
A voir également:
- [PHP] passage de variables dans URL
- Lien url - Guide
- Iptv url invalide - Forum Box et Streaming vidéo
- Easy php - Télécharger - Divers Web & Internet
- Passage qwerty azerty - Guide
10 réponses
moderno31
Messages postés
870
Date d'inscription
mardi 23 juin 2009
Statut
Membre
Dernière intervention
8 août 2012
92
1 janv. 2010 à 00:16
1 janv. 2010 à 00:16
hello bonne année
tu n'as pas déclaré ta seconde variable.
$rubrique = $_POST['rubrique']; ça ok
L'autre tu as oublié.
Donc normal que tu ne récupère pas/.
tu n'as pas déclaré ta seconde variable.
$rubrique = $_POST['rubrique']; ça ok
L'autre tu as oublié.
Donc normal que tu ne récupère pas/.
rasteda
Messages postés
34
Date d'inscription
dimanche 20 décembre 2009
Statut
Membre
Dernière intervention
3 mai 2010
1
1 janv. 2010 à 00:39
1 janv. 2010 à 00:39
eh beh l'année commence bien!! merci de ton aide ;-)
Bonne année à toi également
J'ai bien tenté de la déclarer mais je vois pas trop ou. après le dernier </select> non ?
Quelquechose comme ça ?:
Bonne année à toi également
J'ai bien tenté de la déclarer mais je vois pas trop ou. après le dernier </select> non ?
Quelquechose comme ça ?:
<select name='sousrub' style='min-width:250px;'> <? $Selected = 0; echo "<option disabled='disabled' SELECTED> Séléctionnez une sous-rubrique :</option>"; while ($row = mysql_fetch_array($result)) { if($Selected == 0) { echo '<option value="', $row[0], '" ">', $row[0], '</option>'; $Selected = 1; } else { echo '<option value="', $row[0], '">', $row[0], '</option>'; } } echo "</select><br/></br>"; if (isset ($_POST['sousrub'])){ $sousrub = $_POST['sousrub']; } echo "<input type='submit' value='Soumettre'/><br></form></br></br>"; ?>
rasteda
Messages postés
34
Date d'inscription
dimanche 20 décembre 2009
Statut
Membre
Dernière intervention
3 mai 2010
1
1 janv. 2010 à 11:03
1 janv. 2010 à 11:03
Avec le nouveau code ça ne passe pas non plus.
Je ne comprends pas bien ou ma variable doit être déclarée pour qu'elle soit reconnue.
BONNE ANNEE A TOUS !!!
Je ne comprends pas bien ou ma variable doit être déclarée pour qu'elle soit reconnue.
BONNE ANNEE A TOUS !!!
moderno31
Messages postés
870
Date d'inscription
mardi 23 juin 2009
Statut
Membre
Dernière intervention
8 août 2012
92
1 janv. 2010 à 19:10
1 janv. 2010 à 19:10
comment ça ?
Tu as fait ça ?
if (isset ($_POST['rubrique'],$_POST['sousrubrique'])){
$rubrique = $_POST['rubrique'];
$sousrub = $_POST['sousrubrique'];
...
Sinon montre cette partie du code. Si ça ne fonctionne toujours pas c'est que ta donnée en provenance du formulaire $_POST['sousrubrique'] revient vide !
Donc l'erreur provient du formulaire.
Tu as fait ça ?
if (isset ($_POST['rubrique'],$_POST['sousrubrique'])){
$rubrique = $_POST['rubrique'];
$sousrub = $_POST['sousrubrique'];
...
Sinon montre cette partie du code. Si ça ne fonctionne toujours pas c'est que ta donnée en provenance du formulaire $_POST['sousrubrique'] revient vide !
Donc l'erreur provient du formulaire.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
rasteda
Messages postés
34
Date d'inscription
dimanche 20 décembre 2009
Statut
Membre
Dernière intervention
3 mai 2010
1
1 janv. 2010 à 21:20
1 janv. 2010 à 21:20
En fait j'ai un peu modifié mon code pour mettre un champ hidden
A priori ca fonctionne.
Ca donne ca:
Maintenant le souci pour moi c'est de faire en sorte que la séléction soit conservé après la soumission :-)
C'est jamais simple la programmation. Surtout pour moi !!
A priori ca fonctionne.
Ca donne ca:
<form action="select_prod.php" method="post" id="choixrub"> <? $query = "SELECT DISTINCT intitule FROM tbl_rub ORDER BY intitule ASC"; $result = mysql_query($query) or die("ERROR"); ?> <fieldset> <p> <label>Séléctionnez une rubrique</label> <select name="rubrique" class="small-input" onchange='document.forms["choixrub"].submit();'> <? echo "<option disabled='disabled' SELECTED>Rubriques ----------</option>"; while ($row = mysql_fetch_array($result)) { echo '<option value="', $row[0], '">', $row[0], '</option>'; } ?> </select> </p> </form> <? $rubrique = $_POST['rubrique']; echo "Vous avez séléctionné la rubrique: <strong>$rubrique</strong>"; ?> <form action="result_select.php" method="post" id="choixssrub"> <? $query = "SELECT intitule FROM tbl_ssrub WHERE rub_asso='$rubrique'"; $result = mysql_query($query) or die("ERROR"); ?> <input type="hidden" name="rubrique" value="<?php echo $rubrique ; ?>" /> <p> <br> <br> <label>Séléctionnez une sous-rubrique</label> <select name="sousrub" class="small-input"> <? echo "<option disabled='disabled' SELECTED>Sous-rubriques ----------</option>"; while ($row = mysql_fetch_array($result)) { echo '<option value="', $row[0], '">', $row[0], '</option>'; } ?> </select> </p> <br /> <p> <input class="button" type="submit" value="Soumettre" /> </p> </fieldset> </form>
Maintenant le souci pour moi c'est de faire en sorte que la séléction soit conservé après la soumission :-)
C'est jamais simple la programmation. Surtout pour moi !!
moderno31
Messages postés
870
Date d'inscription
mardi 23 juin 2009
Statut
Membre
Dernière intervention
8 août 2012
92
2 janv. 2010 à 08:08
2 janv. 2010 à 08:08
non c'est jamais simple la programmation c'est bien pour ça que je déteste ça. Mais j'en fait un peu quand même !
Déjà je vois un truc bizarre, tu ouvres 2 fois la balise formulaire pour afficher 2 input différents. Pas normal, tu n'as pas du comprendre le mécanisme.
L'idée est d'avoir un formulaire qui récupère les infos et qui sert à faire le traitement php par ex.
<form action="result_select.php" method="post">
-fait une seule requête pour récupérer les 2 infos. Je ne sais pas comment est structurée tes tables, mais tu va taper dans la même table donc c'est dommage de faire 2 req.
-appose tes input comme tu l'as déjà fait (merge les en un seul formulaire)
-Enfin tu mets ton bouton input type submit à la fin comme tu as déjà fait.
</form>
Normal que tu ne récupères pas l'info du 2nd parce qu'il est dans une autre balise de formulaire. Sinon, par logique il te faut 2 boutons parce que 2 formulaires !
Déjà je vois un truc bizarre, tu ouvres 2 fois la balise formulaire pour afficher 2 input différents. Pas normal, tu n'as pas du comprendre le mécanisme.
L'idée est d'avoir un formulaire qui récupère les infos et qui sert à faire le traitement php par ex.
<form action="result_select.php" method="post">
-fait une seule requête pour récupérer les 2 infos. Je ne sais pas comment est structurée tes tables, mais tu va taper dans la même table donc c'est dommage de faire 2 req.
-appose tes input comme tu l'as déjà fait (merge les en un seul formulaire)
-Enfin tu mets ton bouton input type submit à la fin comme tu as déjà fait.
</form>
Normal que tu ne récupères pas l'info du 2nd parce qu'il est dans une autre balise de formulaire. Sinon, par logique il te faut 2 boutons parce que 2 formulaires !
rasteda
Messages postés
34
Date d'inscription
dimanche 20 décembre 2009
Statut
Membre
Dernière intervention
3 mai 2010
1
2 janv. 2010 à 16:13
2 janv. 2010 à 16:13
En fait ma logique un peu tordue c'était puisqu'on va chercher 2 infos différents à deux moments différents, je crée un formulaire pour chaque info à récupérér.
Dans mon premier formulaire j'ai un
onchange='document.forms["choixrub"].submit();
qui me permet de valider et d'afficher dans un second temps l'info dans le second menu.
Ce que je veux éviter c'est que les infos s'affichent toutes en même temps dans les 2 menus. c'est d'ailleurs impossible puisqu'on a besoin d'une sélection sur le premier menu (rubriques) pour afficher les infos du second
(sous-rubriques de la rubrique sélectionnée). Tout se passe donc en 2 étapes.
Je ne vois pas trop comment réaliser ces 2 étapes dans un même formulaire.
Dans mon premier formulaire j'ai un
onchange='document.forms["choixrub"].submit();
qui me permet de valider et d'afficher dans un second temps l'info dans le second menu.
Ce que je veux éviter c'est que les infos s'affichent toutes en même temps dans les 2 menus. c'est d'ailleurs impossible puisqu'on a besoin d'une sélection sur le premier menu (rubriques) pour afficher les infos du second
(sous-rubriques de la rubrique sélectionnée). Tout se passe donc en 2 étapes.
Je ne vois pas trop comment réaliser ces 2 étapes dans un même formulaire.
moderno31
Messages postés
870
Date d'inscription
mardi 23 juin 2009
Statut
Membre
Dernière intervention
8 août 2012
92
2 janv. 2010 à 18:38
2 janv. 2010 à 18:38
je ne te suis plus là.
Tu peux me dessiner ou schématiser ta page de formulaires ?
Sinon passe moi le code complet
Là comme ça je ne vois pas ce que ça donne
Tu veux faire un enchainement de listes de choix ? On clique un item de la premiere puis la seconde se charge avec les infos associées ?
Tu peux me dessiner ou schématiser ta page de formulaires ?
Sinon passe moi le code complet
Là comme ça je ne vois pas ce que ça donne
Tu veux faire un enchainement de listes de choix ? On clique un item de la premiere puis la seconde se charge avec les infos associées ?
rasteda
Messages postés
34
Date d'inscription
dimanche 20 décembre 2009
Statut
Membre
Dernière intervention
3 mai 2010
1
2 janv. 2010 à 19:49
2 janv. 2010 à 19:49
c'est exactement ca.
j'ai un enchainement de deux sous-menu.
Le premier liste les rubriques du site
Le second liste les sous-rubriques de la rubrique séléctionnée dans le premier menu.
Voici mon code:
j'ai un enchainement de deux sous-menu.
Le premier liste les rubriques du site
Le second liste les sous-rubriques de la rubrique séléctionnée dans le premier menu.
Voici mon code:
<form action="add_prod.php" method="post" id="choixrub"> <? $query = "SELECT DISTINCT intitule FROM tbl_rub ORDER BY intitule ASC"; $result = mysql_query($query) or die("ERROR"); ?> <fieldset> <p> <label>Séléctionnez une rubrique</label> <select name="rubrique" class="small-input" onchange='document.forms["choixrub"].submit();'> <? echo "<option disabled='disabled' SELECTED>Rubriques</option>"; while ($row = mysql_fetch_array($result)) { echo '<option value="', $row[0], '">', $row[0], '</option>'; } ?> </select> </p> </form> <? $rubrique = $_POST['rubrique']; echo "Vous avez séléctionné la rubrique: <strong>$rubrique</strong>"; ?> </p> <form action="validate_add_prod.php" method="post"> <? $query = "SELECT intitule FROM tbl_ssrub WHERE rub_asso='$rubrique'"; $result = mysql_query($query) or die("ERROR"); ?> <input type="hidden" name="rubrique" value="<?php echo $rubrique ; ?>" /> <p> <br> <label>Séléctionnez une sous-rubrique</label> <select name="sousrub" class="small-input"> <? echo "<option disabled='disabled' SELECTED>Sous-rubriques</option>"; while ($row = mysql_fetch_array($result)) { echo '<option value="', $row[0], '">', $row[0], '</option>'; } ?> </select> </p> <p> <input class="button" type="submit" value="Soumettre" /> </p> </fieldset> </form>
moderno31
Messages postés
870
Date d'inscription
mardi 23 juin 2009
Statut
Membre
Dernière intervention
8 août 2012
92
2 janv. 2010 à 19:57
2 janv. 2010 à 19:57
J'ai visualisé ta page, effectivement je ne sais pas faire ça.
J'ai déjà essayé mais c'est treop chiant. Au mieux fait faire de l'Ajax et tout... donc j'ai laissé tomber.
Bon courage
J'ai déjà essayé mais c'est treop chiant. Au mieux fait faire de l'Ajax et tout... donc j'ai laissé tomber.
Bon courage