IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Trier par ordre décroissant


Sujet :

PHP & Base de données

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 11
    Par défaut Trier par ordre décroissant
    bonjour
    j'ai crée un code afin de réorganiser un classement style classement ogame
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    <?
    		mysql_connect("sql.free.fr",'notour','xxxxxxxxx');
    		mysql_select_db('joueur');
    		$Croissant= 1;
    		$taille = mysql_query("SELECT Max(id) AS id FROM joueur");
    	        while($Croissant <= $taille-1)
    		{
     
    		$row = mysql_fetch_assoc(mysql_query("SELECT * FROM joueur WHERE id = $Croissant"));
    		$classement2[$Croissant]=$row['point'];
    		}
    		rsort($classement2);
                    $ordre = 1;
    		foreach ($classement2 as $value) 
    		{    
    		mysql_query("UPDATE joueur SET classement = '$ordre' WHERE point = $value");
    		}
     
    ?>
    ce code est cencé réunir dans un tableau les points de chaque joueur puis de les trier du + vers le -. et pour finir attibuer une place a chaque joueur

    mais sa marche pas est sa crée un erreur 80 sur le server de free

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 060
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 060
    Par défaut
    Bonjour,

    1. utilise <?php plutôt que <?
    2. $taille est une ressource et non pas une valeur. Donc
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      while($Croissant <= $taille-1)
      ne peut pas fonctionner
    3. Et pour le reste, ceci devrait suffire :
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
        //-- count(id) as nb pour gérer les ex-aequo ---------------------
        $sql = 'SELECT count(id) as nb, point
                FROM joueur
                GROUP BY point
                ORDER BY point DESC';
        $result = mysql_query($sql);
        $i = 1;
        while ($joueur = mysql_fetch_array($result))
        {
          $sql = 'UPDATE joueur
                  SET classement = ' . $i . '
                  WHERE point = ' . $joueur['point'];
          mysql_query($sql);
          $i += $joueur['nb'];
        }

Discussions similaires

  1. Réponses: 2
    Dernier message: 26/02/2014, 13h30
  2. Trier un tableau par ordre décroissant
    Par Student_Master dans le forum C
    Réponses: 4
    Dernier message: 04/08/2011, 14h56
  3. Réponses: 3
    Dernier message: 11/01/2011, 10h44
  4. Réponses: 4
    Dernier message: 30/06/2008, 10h26
  5. Trier les données dans 1 tableau par ordre décroissant
    Par Blunet dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 23/11/2005, 09h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo