Transmission numéros par SESSION et requête SQL

Fermé
Evelyne31 Messages postés 55 Date d'inscription mardi 17 juillet 2012 Statut Membre Dernière intervention 13 septembre 2016 - 25 mars 2013 à 16:16
g4br13l Messages postés 346 Date d'inscription dimanche 20 février 2011 Statut Membre Dernière intervention 8 mai 2013 - 27 mars 2013 à 08:17
Bonjour à tous/toutes,
Je cale pour construire une requête et je compte sur vous :

1°) J'ai un fichier php de formulaire de recherche de gîtes (par département, commune...) avec systèmes de sessions.

2°) J'ai un fichier php de traitement de ce formulaire de recherche. Les résultats s'affichent sous la forme d'une liste.
Les résultats sont composés de deux numéros accollés pour éviter les doublons : celui du gîte et celui de la commune où il est situé. Voici la syntaxe de cet affichage :
echo '<td ><a href="../lith_page_gite.php?numGite='. $donnees_messages['codeCommune'] . ' ' . $donnees_messages['numGite'] . '"> '. $donnees_messages['codeCommune'] . ' ' . $donnees_messages['numGite'] . ' </a></td>';


3°) Le problème est que sur lorsque je clique sur un n° j'arrive sur la page du gîte où il est décrit en détail.
Mais je n'y arrive pas car il me faudrait alors pour faire mes requêtes que le n° du gîte sans celui de la commune et je ne vois pas comment les dissocier ? Quand je fais un echo $numGite j'obtiens les 2 n°. C'est insoluble !!!

Pouvez-vous, SVP, juste me dire comment procéder ??? Ci-dessous ma requête où $_SESSION["numGite"] contient les 2 n°.

En espérant avoir été claire, je vous remercie par avance,
Evelyne

SELECT g.*,
	p.codePays, p.nomPays, d.codeDepartement, d.nomDepartement, 
	c.codeCommune, c.nomCommune 
	FROM GITE g, PAYS p, DEPARTEMENT d, COMMUNE c, AS_COMMU_DEPAR acd  	
	WHERE g.numGite '" . $_SESSION["numGite"]. " '
	and g.ID_commune = c.ID_commune
	and p.ID_pays = c.PAYS_ID_pays
	and d.ID_departement = acd.DEPARTEMENT_ID_departement
	and c.ID_commune = acd.COMMUNE_ID_commune


A voir également:

23 réponses

g4br13l Messages postés 346 Date d'inscription dimanche 20 février 2011 Statut Membre Dernière intervention 8 mai 2013 100
26 mars 2013 à 11:55
L'idée de la liste pays département me semble pas mal et ensuite les autre séparer ça pourrait le faire! ce qu'il faudrait faire cest ensuite faire un ou deux IF impriquer et sa passerais pour faire les recherches.

En tout les cas je t'encourage dans ta façon de travailler car sans meme avoir d'experiance tu cherches a faire ton boulot sans même le déleguer !! Continue dans ta lancer et un jour tu auras le déclic qu'il te manque pour cette logique de l'informatique!!!

Beaucoup de personne qui bosse dans se domaine ne l'on jamais eu car il crois que l'informatique est la que pour le jeu mais si tu te passionne a ça tout ira bien !! Courage a se soir :D désolé de pas pouvoir faire plus pour le moment !!
0
Evelyne31 Messages postés 55 Date d'inscription mardi 17 juillet 2012 Statut Membre Dernière intervention 13 septembre 2016 5
26 mars 2013 à 23:06
Bonsoir g4br13l,
Comme convenu je te tiens informé de mes avancées.
Après avoir balayé les problèmes, j'ai vu que des requêtes n'étaient pas justes. J'ai tout repris, c'est OK ce soir.
Ensuite, quoi que je fasse j'avais toujours ce souci de numéro des gîtes composé d'un code de pays, d'un code de département, d'un code de commune et d'un numéro de gîte (4 tables différentes, des clés étrangères et une table associative). Cela faisait des requêtes très complexes, je ne m'en sortais pas.
J'ai donc créé une nouvelle colonne dans ma table GITE pour, à chaque création d'un nouveau gîte dans la bdd, intégrer automatiquement ce n° complet, c'est juste une concaténation de variables séparées par des _. Ce code me servira aussi pour plusieurs affichages.
Voilà où j'en suis ce soir. Pas d'avancée spectaculaire mais je pense que tout ira mieux pour la suite.
Je poste mon code de concaténation de plusieurs variables séparées par des _ en espérant qu'il serve à d'autres :
$underscore = '_';
$codeGite = $codePays . $underscore . $codeDepartement . $underscore. $codeCommune . $underscore . $numGite;

Ensuite il me suffit de faire référence à $codeGite pour toutes mes requêtes, inserts, selects, echos...
Je suis en congé demain et après-demain mais après tout ira très vite.
Je te remercie encore pour ton aide qui m'a bien fait progresser. J'espère que tes cours étaient intéressants. Je reposte dès que j'ai avancé un peu.
Très bonne soirée,
Evelyne
0
g4br13l Messages postés 346 Date d'inscription dimanche 20 février 2011 Statut Membre Dernière intervention 8 mai 2013 100
27 mars 2013 à 08:17
Excuse moi pour ma réponse un peu tardive mais étant fatigué hier soir je n'ai pas pris la paine d'allumer mon PC. Si ton code fonctionne comme ça j'éspère que tu n'auras pas de problème pour la suite mais sache que je reste a ton entière disposition.
Bonne journée de repo!!
Gabriel.
0