Précédent   Forum des professionnels en informatique > Bases de données > MySQL > Administration
Administration Forum d'entraide sur l'administration de MySQL
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 31/07/2006, 15h43   #1
Membre à l'essai
 
Inscription : septembre 2005
Messages : 78
Détails du profil
Informations forums :
Inscription : septembre 2005
Messages : 78
Points : 24
Points : 24
Par défaut groupement de résultat.

Bonjour,

J'ai les deux tables suivantes :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
 
-- 
-- Structure de la table `championnat_tbl`
-- 
 
CREATE TABLE `championnat_tbl` (
  `id_champ` int(10) NOT NULL AUTO_INCREMENT,
  `nom_champ` varchar(25) NOT NULL DEFAULT '',
  `id_admin` int(10) NOT NULL DEFAULT '0',
  `nbre_equipe` enum('8','12','16','20') NOT NULL DEFAULT '8',
  `complet` int(1) NOT NULL DEFAULT '0',
  PRIMARY KEY  (`id_champ`)
) TYPE=MyISAM;
id_champ : numéro d'id du championnat
nom_champ : nom que porte le championnat
id_admin : l'id du membre qui est administrateur du championnat
nbre_equipe : nbre d'équipe maximum pouvant participer au championnat
complet : booleen qui indique si le championnat est complet ou non.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
 
-- 
-- Structure de la table `player_tbl`
-- 
 
CREATE TABLE `player_tbl` (
  `id_player` int(10) NOT NULL AUTO_INCREMENT,
  `id_membre` int(10) NOT NULL DEFAULT '0',
  `id_champ` int(10) NOT NULL DEFAULT '0',
  `id_club` int(10) NOT NULL DEFAULT '1',
  `actif` smallint(1) NOT NULL DEFAULT '0',
  PRIMARY KEY  (`id_player`)
) TYPE=MyISAM;
id_membre : le numéro du membre (table membre non indiquée ici)
actif : booleen qui indique si le joueur à déjà une équipe ou non.

J'ai la requete suivante :

Code :
1
2
3
4
5
6
7
8
 
SELECT c.id_champ, c.nom_champ, c.id_admin, c.nbre_equipe, p.id_champ, p.id_membre,p.actif
FROM championnat_tbl c, player_tbl p
WHERE c.complet='0' 
AND p.id_champ = c.id_champ
AND p.id_membre != '".$_SESSION['id_membre']."'
GROUP BY c.id_champ 
ORDER BY c.id_champ DESC
La requete si dessus me donne bien toutes les infos que je désire et me sors uniquement les infos ou je ne suis pas admin (que je n'ai pas besoin d'avoir). Le problème est que si je postule à un championnat créé par un autre joueur (ou d'autre joueur que moi on également postulé), il sélectionne tout de même cette ligne.

Pour être beaucoup plus clair (enfin j'espère) voici le résultat sorti.

NOM CHAMP | ADMIN | NBRE EQUIPE | PLACE DISPO
_______________________________________________
ligue 1 toch 20 19
ligue 2 bert 8 7
ligua toch 16 15


Tout fonctionne nickel mais en principe, je ne devrais pas avoir ligue 1 dans la liste puisque j'y ai déjà posutlé... mais comme je ne l'ai pas créé, je ne suis pas admin.. C'est pour cela qu'il l'affiche...

Je ne sais pas si clair, j'en doute d'ailleurs, n'hésitez pas à poser vos questions..

Merci

Edit : La table player_tbl reprend les joueurs ayant postulé à tel ou tel championnat ou y participant
tochbee est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2006, 10h06   #2
Membre à l'essai
 
Inscription : septembre 2005
Messages : 78
Détails du profil
Informations forums :
Inscription : septembre 2005
Messages : 78
Points : 24
Points : 24
Bon, ben visiblement, je n'ai pas été très clair... :p

en fait, dans ma requete j'aimerais pouvoir :

afficher les championnats ou je n'ai pas postulé et ou je ne suis pas admin

Je sais que j'ai postulé simplement si uns ligne reprend mon id_membre avec le meme id_champ que l'admin....

Si quelqu'un a une idée
Merci
tochbee 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 14h08.


 
 
 
 
Partenaires

Hébergement Web