Jump to content
×
×
  • Create New...
  • 0

Classement donjon


MacDonarty

Question

Bonjour à tous ! 

 

Version des files :2016 TeamFE

Votre niveau (débutant, intermédiaire, avancé) :Débutant +

 

Description du problème : Je souhaiterais installé sur mon site un classement sur les donjons chronométrés : Beran, Némere et Razador. Mais je ne sais pas comment faire. 

 

Je demande donc votre aide.

 

Merci

 

Cordialement.

Link to comment
  • Answers 15
  • Created
  • Last Reply

Top Posters For This Question

Top Posters For This Question

15 answers to this question

Recommended Posts

  • 0

Tu peux passer par la table quest (je sais pas comment fonctionnent ces donjons mais en théorie lValue correspondra au temps), donc il te suffit de classer par lValue et de faire un join dwPID/id pour récupérer le nom du joueur dans la table player.

Link to comment
  • 0

Donc j'ai réussis à faire apparaître le classement pour le donjon de Nemere : 

 

"SELECT * FROM player.quest WHERE szName='snow_dungeon' ORDER BY lValue desc ,dwPID asc;"; 

 

Comment faire le join pour récupéré le player.name ? car la j'ai le num du joueur son ID avec dwPID.

 

Merci 

 

Cordialement.

 

EDIT : Alors c'est bon j'ai fait quelques test et j'ai récupéré les nom mais du coup j'ai genre les 3 premiers sont ceux qui on fait le donjon ensemble (même groupe) est-il possible de les faire apparaître dans une seule et même position du classement ?

Link to comment
  • 0

C'est possible en utilisant GROUP_CONCAT :

 

SELECT lValue, GROUP_CONCAT(name SEPARATOR ", ") FROM quest, player WHERE dwPID = id AND .... GROUP BY lValue .....

 

tu auras tous les pseudos dont le lValue est égal sur la même ligne, séparés par des virgules

Link to comment
  • 0

Ok d'accord par contre je vois pas comment modifier ma ligne, moi j'ai ça : 

 

$sqlCmd = "SELECT * FROM player.quest INNER JOIN player.player ON player.ID=quest.dwPID WHERE szName='snow_dungeon' AND player.name NOT LIKE '[%]%'GROUP BY lValue ORDER BY lValue desc ,name asc;" ;

 

 

Merci

 

Cordialement.

Link to comment
  • 0

Je maitrise pas trop cette syntaxe du JOIN, mais avec la syntaxe que je t'ai montré ça donnerait ça :

 

$sqlCmd = "SELECT *, GROUP_CONCAT(name SEPARATOR ", ") AS noms FROM player.quest, player.player WHERE id = dwPID AND szName='snow_dungeon' AND player.name NOT LIKE '[%]%' GROUP BY lValue ORDER BY lValue desc ,name asc;" ;

 

edit : pour la syntaxe que tu utilises,

 

$sqlCmd = "SELECT *, GROUP_CONCAT(name SEPARATOR ", ") AS noms FROM player.quest INNER JOIN player.player ON player.ID=quest.dwPID WHERE szName='snow_dungeon' AND player.name NOT LIKE '[%]%'GROUP BY lValue ORDER BY lValue desc ,name asc;" ;

 

devrait marcher (et dans ton script PHP tu récupères noms et non plus name)

Link to comment
  • 0

Super ton EDIT ça fonctionne très bien. Merci !!! 

 

Juste les " " que je dois remplacer par des  '  ' .

 

Et en ce qui concerne le chronomètre etc... 

 

J'ai  tester l'instance gorge du purgatoire et j'ai tué razador mais je n'ai pas d'info qui viennent dans le quest de la table player. (par exemple comme : Nemere j'ai :  dwPID du joueur, snow_dungeon,  duration et le temps lValue) mais flame_dungeon n'apparait pas.

 

Si tu peux m'aider sur ça, merci .

 

Cordialement.

Link to comment
Guest
This topic is now closed to further replies.


  • Flux d'Activité

    1. 1

      Site internet (CMS) compatible avec tous les emulateurs 1.29 (Azuriom)

    2. 1

      Site internet (CMS) compatible avec tous les emulateurs 1.29 (Azuriom)

    3. 7
    4. 84

      Granny

    5. 32

      Rodnia.net | PVM | International | The Great Conqueror |

    6. 16

      Map The OpenWorld Metin2

    7. 0
    8. 6

      [V2]Gurgarath Resurgence

  • Recently Browsing

    • No registered users viewing this page.

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.