Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 19/02/2007, 09h37   #1
Invité de passage
 
Inscription : février 2007
Messages : 2
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 2
Points : 0
Points : 0
Par défaut [Conception] Sélection de données très spéciale

Bonjour,

Je suis sur la conception d'un site qui comme vous avez pu le deviner utilise du php et une base de donnée.
Sur une page, je dois lister plusieurs clubs mais aussi certains membres de ces clubs et c'est là qu'est le problème!

Toutes les personnes sont regroupées dans une table(signaletique) parce qu'il n'y a pas que les personnes appartenant a des clubs qui sont dedant.

Et les clubs (et autres du même genre) sont dans une autre table(comitesig).
Je cible les type de clubs par un champs "categorie" et une de ses valeurs.
Des champs "LienMembre1" etc.. comprennent un numéro qui correspond a une personne dans la table signalétique

J'aimerai dans un premier temps selectionner uniquement les personnes inclues dans le type de clubs affiché.
Puis qu'elles s'affichent uniquement pour le club auquel elles sont liées..

Voici mon code pour selectionner dans la base de donnée :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
 
function get_group_jeunesse(){
	$tabGroupJeun = array();
	$reqGroupJeun = "	SELECT Nom, Adresse, CodePostal, Localite, Tel, Email, Web, Fax, Gsm
      FROM comitesig 
      WHERE comitesig.Categorie='Jeunesse' ";
	$dataGroupJeun = mysql_query($reqGroupJeun) or die ("La requête pour les groupements de Jeunesse a échoué");
	$i=0;
 
	while($GroupJeuncourant = mysql_fetch_assoc($dataGroupJeun)){
  $tabGroupJeun[$i] = $GroupJeuncourant;
  $i++;
	}
	return $tabGroupJeun;
}
 
 
function get_membres_jeunesse(){
	$tabMembreJeun = array();
	$reqMembreJeun = "	SELECT Titre, Nom, Prenom, Adresse, CodePostal, Localite, TelPrive, Email, Fax, Gsm
      FROM signaletique
      WHERE signaletique.Cle = comitesig.LienMembre1 ";
	$dataMembreJeun = mysql_query($reqMembreJeun) or die ("La requête pour les membres des groupements de Jeunesse a échoué");
	$i=0;
 
	while($MembreJeuncourant = mysql_fetch_assoc($dataMembreJeun)){
  $tabMembreJeun[$i] = $MembreJeuncourant;
  $i++;
	}
	return $tabMembreJeun;
}
 
$GroupJeun = get_group_jeunesse();
$MembresJeun = get_membres_jeunesse();

Et celui de l'affichage :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 
 
<div class="contenu">
   <?php foreach($GroupJeun as $Jeunesse) {	?>
  	<div class="comite">
    <h3><?php echo htmlentities($Jeunesse["Nom"]);?></h3>
    <p> <?php echo htmlentities($Jeunesse["Adresse"]);?></p>
    <p> <?php echo htmlentities($Jeunesse["CodePostal"]);?></p>
    <p> <?php echo htmlentities($Jeunesse["Localite"]);?></p>
    <p> <?php echo htmlentities($Jeunesse["Tel"]);?></p>
    <?php if(!empty ($Jeunesse["Email"]) ){ echo ?>
    <p> <a href="maito:<?php echo htmlentities($Jeunesse["Email"]);?>"> Email </a></p>
    <?php }?>
    <p> <?php echo htmlentities($Jeunesse["Web"]);?></p>
    <p> <?php echo htmlentities($Jeunesse["Fax"]);?></p>
    <p> <?php echo htmlentities($Jeunesse["Gsm"]);?></p>
 
    <?php foreach ($MembresJeun as $Membres) {	?>
      <div class="membres">
    	<h5><?php echo htmlentities($Membres["Titre"]." ".$Membres["Nom"]." ".$Membres["Prenom"]);/*,ENT_QUOTES,"UTF-8"*/?></h5>
      	<p> <?php echo htmlentities($Membres["TelPrive"] /*,ENT_QUOTES,"UTF-8"*/); ?> </p>
      	<?php if(!empty ($Membres["Email"]) ){ echo ?>
      	<p><a href="mailto:<?php echo htmlentities($Membres["Email"] /*,ENT_QUOTES,"UTF-8"*/); ?>" > Email </a></p>
      	<?php }?>
      </div>
      <?php }?>
    	</div>
  	<?php } ?>
  </div>
    </div>

J'espere avoir été asser claire et que vous pourrez m'aider... [ohwell]
minik_mal est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/02/2007, 10h00   #2
Expert Confirmé

 
Avatar de Amara
 
Inscription : juillet 2004
Messages : 2 684
Détails du profil
Informations personnelles :
Localisation : France, Sarthe (Pays de la Loire)

Informations forums :
Inscription : juillet 2004
Messages : 2 684
Points : 2 910
Points : 2 910
Pas tout bien capté mais j'ai l'impression qu'une simple jointure est la solution, quelque chose du genre :

Code :
SELECT champs FROM personnes, comitesig WHERE personnes.id_club = comitesig.id AND comitesig.categorie = id_categorie
Faut mettre les bons noms de champs et tables et en voiture Simone...
__________________
Pas de questions techniques par MP, le forum est là pour ça et est plus efficace.

Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h)
Amara est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/02/2007, 10h28   #3
Invité de passage
 
Inscription : février 2007
Messages : 2
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 2
Points : 0
Points : 0
J'ai le même principe de jointure dans ma selection et ca ne fonctionne pas.

Il doit surement y avoir une solution simple mais je ne suis pas assez bon en php que pour trouver seul...

Si vous voulez avoir plus de détails,je peux envoyer des fichiers pour que vous testiez...
minik_mal est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h22.


 
 
 
 
Partenaires

Hébergement Web