Probleme avec 2 tables sous MySQL PHP

Résolu/Fermé
sweetmemories Messages postés 46 Date d'inscription dimanche 19 juin 2005 Statut Membre Dernière intervention 4 mars 2011 - 21 janv. 2007 à 16:22
Ssylvainsab Messages postés 2884 Date d'inscription samedi 29 juillet 2006 Statut Modérateur Dernière intervention 15 août 2020 - 21 janv. 2007 à 21:35
Bonjour à tous.

J'ai un problème pour joindre 2 tables de mon site sous PHP/MySQl.

C'est un site de joueurs et je voudrais afficher la photo du ou des gagnants.

La table des points est tournois et la table des photos est users .

Quand je fais ma requête sur ma table tournois pour avoir mes résultats par joueur c'est parfait mais je n'arrive pas a y intégrer mes photos de la table users .

Ma requête pour les résultats est :

$req_general = reqmysql("SELECT COUNT(tournois.joueur) AS partie, SUM(tournois.points) AS points, SUM(tournois.jetons) AS jetons, SUM(tournois.recave) AS recave, tournois.joueur FROM tournois WHERE cg=2007 GROUP BY tournois.joueur ORDER BY points DESC LIMIT 0,1");

while($reponse_general = mysql_fetch_array($req_general))

...
Et je pensais integres dedans :

$req_general = reqmysql("SELECT COUNT(tournois.joueur) AS partie, SUM(tournois.points) AS points, SUM(tournois.jetons) AS jetons, SUM(tournois.recave) AS recave, tournois.joueur FROM tournois LEFT JOIN users ON (users.pseudo=tournois.joueur) WHERE cg=2007 GROUP BY tournois.joueur ORDER BY points DESC LIMIT 0,1");

while($reponse_general = mysql_fetch_array($req_general))

...

Mais celà ne fonctionne pas.
Si vous avez une idée... Merci d'avance pour votre aide.
A voir également:

3 réponses

Ssylvainsab Messages postés 2884 Date d'inscription samedi 29 juillet 2006 Statut Modérateur Dernière intervention 15 août 2020 825
21 janv. 2007 à 16:51
Salut.

Je pense que la syntaxe de ta requête n'est pas bonne.
Si je me souviens bien, pour les jointures, on doit faire :
SELECT
  table1.champ1,
  table1.champ2,
  table1.etc,

  table2.champ1,
  table2.champ2,
  table2.etc

  FROM table1
LEFT JOIN
  table2
  ON table1.champX=table2.champX

Donc dans ton cas, essayes ceci :
SELECT
  COUNT(tournois.joueur) AS partie,
  SUM(tournois.points) AS points,
  SUM(tournois.jetons) AS jetons,
  SUM(tournois.recave) AS recave,
  tournois.joueur,

  users.pseudo,
  users.tesAutresChamps

  FROM tournois
LEFT JOIN
  users ON users.pseudo=tournois.joueur
WHERE cg=2007
GROUP BY tournois.joueur
ORDER BY points DESC LIMIT 1
0
sweetmemories Messages postés 46 Date d'inscription dimanche 19 juin 2005 Statut Membre Dernière intervention 4 mars 2011 4
21 janv. 2007 à 20:19
Là je dis bravo, c'est exactement ca !!!
Merci pour ton aide...
A bientôt
0
Ssylvainsab Messages postés 2884 Date d'inscription samedi 29 juillet 2006 Statut Modérateur Dernière intervention 15 août 2020 825
21 janv. 2007 à 21:35
De rien !!

a plus et bonne continuation ;-)
0