Menu déroulant à l'aide de PHP
Fermé
jaybolo
Messages postés
2
Date d'inscription
jeudi 21 mars 2002
Statut
Membre
Dernière intervention
22 avril 2004
-
21 avril 2004 à 17:30
ppp - 14 janv. 2008 à 16:41
ppp - 14 janv. 2008 à 16:41
A voir également:
- Menu déroulant à l'aide de PHP
- Menu déroulant excel - Guide
- Easy php - Télécharger - Divers Web & Internet
- Menu démarrer windows 11 - Guide
- Excel menu déroulant en cascade - Guide
- Canon quick menu - Télécharger - Utilitaires
8 réponses
ericpons
Messages postés
39
Date d'inscription
mercredi 21 mai 2003
Statut
Membre
Dernière intervention
1 avril 2005
15
21 avril 2004 à 22:58
21 avril 2004 à 22:58
Salut!
Ta question est un peu compliquée "ça ne marche pas" soit :-).
Peux-tu expliquer, quels sont les messages d'erreur, qu'est ce qui devrait se produire et qui ne se produit pas?
Je subodore que tu veux changer les options du menu en fonction du premier choix?
Si j'ai bien compris, le mieux ce serait de reposter ta question, détaillée, avec javascript dans le sujet, plutôt que PHP qui ne permet pas, je crois, ce genre de réponse dynamique sans aller-retour avec le serveur.
Eric.
Ta question est un peu compliquée "ça ne marche pas" soit :-).
Peux-tu expliquer, quels sont les messages d'erreur, qu'est ce qui devrait se produire et qui ne se produit pas?
Je subodore que tu veux changer les options du menu en fonction du premier choix?
Si j'ai bien compris, le mieux ce serait de reposter ta question, détaillée, avec javascript dans le sujet, plutôt que PHP qui ne permet pas, je crois, ce genre de réponse dynamique sans aller-retour avec le serveur.
Eric.
jaybolo
Messages postés
2
Date d'inscription
jeudi 21 mars 2002
Statut
Membre
Dernière intervention
22 avril 2004
22 avril 2004 à 00:01
22 avril 2004 à 00:01
salut merci de m'avoir répondu.
comme je le disias , je suis débutant. mon premier select doit aller chercher tous les themes répertoriés dans ma base En fonction du thème associé, le deuxième select doit aller chercher dans ma base les rubriques associés au thème choisi dans le premier select.
Sa ne marche pas:: sur ma page je vois mon menu select mais quand je clique dessus , c'est vide
voilà si celka peut t'aider pour m'aider à voir ce qui ne marche pas .
jaybolo toujours play
comme je le disias , je suis débutant. mon premier select doit aller chercher tous les themes répertoriés dans ma base En fonction du thème associé, le deuxième select doit aller chercher dans ma base les rubriques associés au thème choisi dans le premier select.
Sa ne marche pas:: sur ma page je vois mon menu select mais quand je clique dessus , c'est vide
voilà si celka peut t'aider pour m'aider à voir ce qui ne marche pas .
jaybolo toujours play
flokocha
Messages postés
1510
Date d'inscription
lundi 8 mars 2004
Statut
Membre
Dernière intervention
10 octobre 2015
280
22 avril 2004 à 10:11
22 avril 2004 à 10:11
Les deux select sont vides ou le 1er s'affiche correctement ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ericpons
Messages postés
39
Date d'inscription
mercredi 21 mai 2003
Statut
Membre
Dernière intervention
1 avril 2005
15
22 avril 2004 à 17:13
22 avril 2004 à 17:13
A première vue, ta syntaxe de deuxième requête risque de poser problème:
Notamment avec tes guillemets. Il en manque et tu déclare ta clef avec des guillemets doubles.
Dans les requête le mieux est déja d'éviter d'indenter au maximum les guillemets (quand je fais ça, je me perds tout le temps), et surtout dans les clefs d'éléments array.
Je te conseillerais de simplifier par :
L'affichage des erreurs éventuelles ne mange pas de pain, peut te renseigner quand un truc ne fonctionne pas et peut être supprimé si tu le désires quand ton script sera validé.
Eric.
$sql = "select * from rubriques where fk_themes=".$_POST["theme"];
Notamment avec tes guillemets. Il en manque et tu déclare ta clef avec des guillemets doubles.
Dans les requête le mieux est déja d'éviter d'indenter au maximum les guillemets (quand je fais ça, je me perds tout le temps), et surtout dans les clefs d'éléments array.
Je te conseillerais de simplifier par :
$theme=$_POST['theme']; //simple guillemets pour la clef $query="SELECT * FROM rubriques WHERE fk_themes='$theme'";//simple guillemets pour encadrer la variable, double pour fermer la déclaration $sql=mysql_query("$query",$dbc); if (!$sql) echo "erreur : ".mysql_errno()." : ".mysql_error()."<br/>";
L'affichage des erreurs éventuelles ne mange pas de pain, peut te renseigner quand un truc ne fonctionne pas et peut être supprimé si tu le désires quand ton script sera validé.
Eric.
fo pas mettre de point virgule a la fin d'une requete en php
ca doit etre pour ca que ca marche pas
ca doit etre pour ca que ca marche pas
flokocha
Messages postés
1510
Date d'inscription
lundi 8 mars 2004
Statut
Membre
Dernière intervention
10 octobre 2015
280
23 avril 2004 à 09:09
23 avril 2004 à 09:09
Si, il le faut. Le problème ne vient pas de là.
ericpons
Messages postés
39
Date d'inscription
mercredi 21 mai 2003
Statut
Membre
Dernière intervention
1 avril 2005
15
23 avril 2004 à 14:21
23 avril 2004 à 14:21
Il ne "faut" pas gérer les erreurs, mais quand ça ne marche pas voires'afficher la raison, même si elle est cryptique peut te mettre sur la voie des corrections.
De la même façon mysql_query utilise la connection courante par défaut, mais normalement tu la précises en second argument ($dbc). Ca n'est pas obligatoire, ça augmente la lisibilité quand il y a des choses qui ne marchent pas.
L'essentiel de ce que je te suggère c'est d'augmenter la lisibilité des opérations pour essayer de voir à quel moment il y a un problème.
Il me semble également que tu compliques beaucoup ton code en ouvrant et fermant sans cesse des portions de scripts. Il serait beaucoup plus lisible d'imbriquer plus d'HTML dans ton PHP avec des echos, et de supprimer toutes ces balises <?...?>, on ne sait pas trop où on en est, surtout lorsqu'il s'agit de rajouter un }. Enfin c'est un point de vue d'amateur non programmeur, pour moi c'est vraiment difficile à lire, je suppose que les pros sont plus à l'aise.
Eric.
De la même façon mysql_query utilise la connection courante par défaut, mais normalement tu la précises en second argument ($dbc). Ca n'est pas obligatoire, ça augmente la lisibilité quand il y a des choses qui ne marchent pas.
L'essentiel de ce que je te suggère c'est d'augmenter la lisibilité des opérations pour essayer de voir à quel moment il y a un problème.
Il me semble également que tu compliques beaucoup ton code en ouvrant et fermant sans cesse des portions de scripts. Il serait beaucoup plus lisible d'imbriquer plus d'HTML dans ton PHP avec des echos, et de supprimer toutes ces balises <?...?>, on ne sait pas trop où on en est, surtout lorsqu'il s'agit de rajouter un }. Enfin c'est un point de vue d'amateur non programmeur, pour moi c'est vraiment difficile à lire, je suppose que les pros sont plus à l'aise.
Eric.
flokocha
Messages postés
1510
Date d'inscription
lundi 8 mars 2004
Statut
Membre
Dernière intervention
10 octobre 2015
280
23 avril 2004 à 14:26
23 avril 2004 à 14:26
L'avantage "d'ouvrir et fermer sans cesse des portions de scripts", c'est que cela surcharge moins le serveur que si tu lui fais générer tout en entier via des echo.
Ceci dit je suis d'accord avec toi pour dire que les gestions d'erreur permettent de ce rendre compte rapidement de ce qui cloche.
Ceci dit je suis d'accord avec toi pour dire que les gestions d'erreur permettent de ce rendre compte rapidement de ce qui cloche.
ericpons
Messages postés
39
Date d'inscription
mercredi 21 mai 2003
Statut
Membre
Dernière intervention
1 avril 2005
15
23 avril 2004 à 17:57
23 avril 2004 à 17:57
Oh ben oui je suis bien d'accord, mais pour la mise au point, j'ai du mal à m'y retrouver. Quitte à après voir où on peut alléger la charge du serveur.
Quand aux messages d'erreur qui permettent de "rapidement" trouver où ça cloche, j'ai des fois du mal :-).
Récemment je suis resté 2 jours sur un 1064 : erreur de syntaxe MySql, en étant ben malheureux, parce que franchement ma syntaxe, je voyais pas où était le problème.
Motif, le nom du champ (table créée avec PHPMyAdmin) était trop long ('références', soit 10 caractères)... M'a fallu un moment pour trouver. Le pire c'est que dépité je copiais collais des requêtes directes depuis PHPMyAdmin pour essayer de comparer avec ce qui clochait, mais dans mon script ça ne marchait jamais. Si quelqu'un peut m'expliquer ce que j'ai mal configuré...
Enfin, bon avec des champs plus courts, ça marche...
Eric.
Quand aux messages d'erreur qui permettent de "rapidement" trouver où ça cloche, j'ai des fois du mal :-).
Récemment je suis resté 2 jours sur un 1064 : erreur de syntaxe MySql, en étant ben malheureux, parce que franchement ma syntaxe, je voyais pas où était le problème.
Motif, le nom du champ (table créée avec PHPMyAdmin) était trop long ('références', soit 10 caractères)... M'a fallu un moment pour trouver. Le pire c'est que dépité je copiais collais des requêtes directes depuis PHPMyAdmin pour essayer de comparer avec ce qui clochait, mais dans mon script ça ne marchait jamais. Si quelqu'un peut m'expliquer ce que j'ai mal configuré...
Enfin, bon avec des champs plus courts, ça marche...
Eric.