Requête SQL
Résolu
Mougeole
Messages postés
34
Date d'inscription
Statut
Membre
Dernière intervention
-
Mougeole Messages postés 34 Date d'inscription Statut Membre Dernière intervention -
Mougeole Messages postés 34 Date d'inscription Statut Membre Dernière intervention -
Bonjour
Voilà. J'ai un problème avec une requête SQL dans une page PHP.
Je veux fairre une liste déroulante optionnelle du type :
service 1
cellule 1
cellule 2
cellule 3
cellule 4
service 2cellule 1
cellule 2
cellule 3
cellule 4
service 3cellule 1
cellule 2
cellule 3
cellule 4
service 4
cellule 1
cellule 2
cellule 3
cellule 4
On ne soit pouvoir séléctionner que les cellules
Voici mon code
Avec ce code j'obtiens cette liste :
service 1
cellule 1
cellule 2
cellule 3
cellule 4
cellule 1
cellule 2
cellule 3
cellule 4
cellule 1
cellule 2
cellule 3
cellule 4
cellule 1
cellule 2
cellule 3
cellule 4
service 2
service 3
service 4
Je suis presque sur que mon erreur viens de la requête $sqlb parce que je l'ai testé dans phpMyAdmin et je n'ai pas obtenu le resultat attendu.
Est-ce que quelqu'un à une idée de l'erreur?
Merci d'avance
Voilà. J'ai un problème avec une requête SQL dans une page PHP.
Je veux fairre une liste déroulante optionnelle du type :
service 1
cellule 1
cellule 2
cellule 3
cellule 4
service 2cellule 1
cellule 2
cellule 3
cellule 4
service 3cellule 1
cellule 2
cellule 3
cellule 4
service 4
cellule 1
cellule 2
cellule 3
cellule 4
On ne soit pouvoir séléctionner que les cellules
Voici mon code
<?php $sqla = "SELECT NomService FROM SERVICES"; $reponsea = mysql_query($sqla); $sqlb = "SELECT NomCellule FRM CELLULES INNER JOIN SERVICES WHERE IdService = RefSevice"; $reponseb = mysql_query($sqlb) // Ensuite je fais deux boucle imbirqué pour la liste while ($donneesa = mysql_fetch_array($reponsea)) { ?> <optgroup label=" <?php echo "$donneesa['NomService']" ?>" > <?php while ($donneesb = mysql_fetch_array($reponseb)) { ?> <option><?php echo "$donneesb['NomCellule']" ?></option> <?php } ?> </optgroup> <?php } ?>
Avec ce code j'obtiens cette liste :
service 1
cellule 1
cellule 2
cellule 3
cellule 4
cellule 1
cellule 2
cellule 3
cellule 4
cellule 1
cellule 2
cellule 3
cellule 4
cellule 1
cellule 2
cellule 3
cellule 4
service 2
service 3
service 4
Je suis presque sur que mon erreur viens de la requête $sqlb parce que je l'ai testé dans phpMyAdmin et je n'ai pas obtenu le resultat attendu.
Est-ce que quelqu'un à une idée de l'erreur?
Merci d'avance
A voir également:
- Requête SQL
- Logiciel sql - Télécharger - Bases de données
- Sql lister les tables ✓ - Forum Programmation
- Requête bloquée par le pare-feu applicatif claranet webfence ✓ - Forum Réseaux sociaux
- Jointure sql ✓ - Forum MySQL
- Erreur lors de l'envoi de la requête facebook - Forum Facebook
1 réponse
Salut
Ca y est, j'ai trouvé!!!!
C'est la requête $sqlb qui n'est pas complète
Il faut écrire :
Il fallait également rajouté la deuxième condition (WHERE) pour n'afficher que les cellules dont le champ RefService à la valeur de l'identifiant du service qui est dans la première boucle ($donneesa['NomService'].
Voilà.
J'éspère que ça pourra servire à quelqu'un.
Salut
Mougeole
Ca y est, j'ai trouvé!!!!
C'est la requête $sqlb qui n'est pas complète
Il faut écrire :
$sqlb = "SELECT NomCellule FROM CELLULES INNER JOIN SERVICES ON IdService = RefService WHERE NomService = '".$donneesa['NomService']."' ORDER BY CodeCel ASC";Avec la première condition (ON) on séléctionne les données ou IdService= RefService
Il fallait également rajouté la deuxième condition (WHERE) pour n'afficher que les cellules dont le champ RefService à la valeur de l'identifiant du service qui est dans la première boucle ($donneesa['NomService'].
Voilà.
J'éspère que ça pourra servire à quelqu'un.
Salut
Mougeole