Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2011 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Classer un tableau de résultats par ordre décroissant

 

 

 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] Classer un tableau de résultats par ordre décroissant

n°635604
XK
Posté le 09-02-2004 à 05:26:50  profilanswer
 

Bonjour!
 
J'affiche les résultats des maths counter-strike en direct sur mon site, j'utilise le script de phprcon pour se connecter au serveur et récupérer les infos. L'affichage se fait sans problème, j'ai le pseudo des joueurs et à côté leur nombre de frags! Par contre l'affichage se fait ds le désordre, j'aimerai que ce soit le joueur qui a le plus de grags ki soit en haut du tableau et la suite par ordre décroissant.
 
Voici la partie du script ki va chercher les infos des joueurs :

Code :
  1. //Get players via info protocoll
  2.   function Players()
  3.   {
  4.     //If there is no open connection return false
  5.     if(!$this->connected)
  6.       return $this->connected;
  7.     //send players command
  8.     $command = "\xff\xff\xff\xffplayers\x00";
  9.     $buffer = $this->Communicate($command);
  10.     //If no connection is open
  11.     if(trim($buffer) == "" )
  12.     {
  13.       $this->connected = false;
  14.       return false;
  15.     }
  16.     //get number of online players
  17.     $buffer = substr($buffer, 1);
  18.     //build players array
  19.     for($i = 1; strlen($buffer) > 0; $i++)
  20.     {
  21.       //playername
  22.       $tmp = strpos($buffer, "\x00" );
  23.       $result[$i]["name"] = substr($buffer, 1, $tmp);
  24.       //frag count
  25.       $result[$i]["frag"] = ord($buffer[$tmp + 1]) +
  26.                            (ord($buffer[$tmp + 2]) << 8) +
  27.                            (ord($buffer[$tmp + 3]) << 16) +
  28.                            (ord($buffer[$tmp + 4]) << 24);
  29.       //online time
  30.       $tmptime = @unpack('ftime', substr($buffer, $tmp + 5, 4));
  31.       $result[$i]["time"] = date('i:s', round($tmptime['time'], 0) + 82800);
  32.       $buffer = substr($buffer, $tmp + 9);
  33.     } //for($i = 1; $i <= $count; $i++)
  34.     //return formatted result
  35.     return $result;
  36.   } //function Players()


Voici la partie du code qui affiche le tableau :

Code :
  1. echo "<table width=\"100%\" cellspacing=\"0\" cellpadding=\"5\" border=\"0\"><tr><td>";
  2.  echo "<table cellspacing=\"0\" cellpadding=\"0\" width=\"100%\" height=\"100%\" border=\"0\">";
  3.  echo "<tr><td><b><p class=\"mm\">Pseudo</p></b></td><td align=\"center\"><b><p class=\"mm\">Frags</p></b></td></tr>";
  4.  // Tableau des joueurs
  5.      for($i = 1; is_array($players) && $i <= $info["activeplayers"]; $i++) {
  6.  echo "<tr><td class=\"mm\" align=\"left\">".substr($players[$i]["name"], 0, 15)."</td><td class=\"mm\" align=\"center\">".$players[$i]["frag"]."</td>";
  7.      }
  8.  echo "</table>";
  9.  echo "</td></tr></table>";


Comment faire pour que les joueurs soient classés simplement par leur nombre de frags ? :??:


Message édité par XK le 09-02-2004 à 05:56:10
mood
Publicité
Posté le 09-02-2004 à 05:26:50  profilanswer
 

n°635702
jagstang
Pa Capona ಠ_ಠ
Posté le 09-02-2004 à 10:45:29  profilanswer
 

http://ch2.php.net/manual/fr/function.sort.php
 
à utiliser dans la fonction Players, juste avant de le retourner


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°636884
XK
Posté le 10-02-2004 à 07:46:25  profilanswer
 

je vais essayer de faire avec ça, si quelqu'un a du courage et ve bien m'expliquer plus en détail comment faire ce n'est pas de refus :)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Classer un tableau de résultats par ordre décroissant

 

Sujets relatifs
[PHP] Maximum execution time exceeded[PHP] Arrondi d'une division...
[PHP] Parser du HTML : par où commencerBesoin d'aide pour envoi de mail par PHP
[PHP] Un commande pour rapatrier un fichier[Merise] MCD > cardinalitées d'une assoc. d'ordre 2 ?
comment appliquer une fonction à toutes les valeurs d'un tableau mix ?[PHP-MySQL] fonction rechercher en PHP dans la base SQL
[PHP] pb de param passé en GET non initialisé[PHP] Upload d'un fichier sous easyphp 1.7
Plus de sujets relatifs à : [PHP] Classer un tableau de résultats par ordre décroissant


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR