Top Honneur // TrinityCore
Bonjour,
Je ne sais plus sur quel site j'avais vu ce script mais comme je l'avais sur mon pc, je me permet de le mettre ici.

config.php:
Code :
<?php
mysql_connect("localhost", "root", "");
    
   $db_characters = 'characters';    // Nom de la table characters
    $db_world    = 'world';        // Nom de la table world
    $db_auth    = 'auth';        // Nom de la table auth
   $db_site    = '';        // Nom de la table du site
?>

tophonnor.php:
Code :
<?php
include("config.php");
?>
<center>  
<h1>Top Honneur</h1>


  <?php
  

// Connection a la db
mysql_select_db("$db_characters")or die(mysql_error());
// Requete sql pour récupérer le nom du joueur et le totalHonor
$requete_honor = mysql_query("SELECT totalHonorPoints, name FROM characters ORDER BY totalHonorPoints DESC LIMIT 0, 10");
while ($honor = mysql_fetch_array($requete_honor))
        {
$i=1;

echo ''.$i.'.'.$honor['name'].' > '.$honor['totalHonorPoints'].'';
$i++;
}
      ?>


</center>

Je tien a préciser que ce script n'est pas de moi.

Cordialement,
Samaf Langue
Le echo aurait pu se faire sur une ligne de tableau au lieu de mettre les noms bout à bout sur la même ligne non ???

Partager Ok, mais partager intelligent ! Il ne suffit pas de copier coller un code comme ça, encore faut-il l'adapter un tant soit peu...
C'est bien de tester avant de partager
Code :
while ($honor = mysql_fetch_array($requete_honor))
        {
$i=1;

echo ''.$i.'.'.$honor['name'].' > '.$honor['totalHonorPoints'].'';
$i++;
}
Avec ca tout le monde sera 1er ..
il faut mettre le $i=1; avant la while
Je vais regarder le script et essayé d'intégrer un tableau.
LOOL ah oui j'avais pas vu l'initialisation dans la boucle ptdrr...
La balise <center> est déconseillé par W3C. D'ailleurs je crois même qu'elle est considéré comme obsolète.
Et en effet, l'initialisation de la variable de boucle n'est pas au bon endroit.


De plus :

Code :
echo ''.$i.'.'.$honor['name'].' > '.$honor['totalHonorPoints'].'';

Bon, sans <br/> tout va se retrouver sur la même ligne, mais bon pourquoi pas.

Par contre, à quoi ça sert de faire ''.$i et $honor['totalHonorPoints'].'' ?
'' étant une chaine vide, ''.$i c'est exactement pareil que $i. Tu pourras donc simplifier (et aérer) ta ligne comme ceci :

Code :
echo $i . '.' . $honor['name'] . ' > ' . $honor['totalHonorPoints'];
j'avoue que son code est pas optimal (déjà car ya du mysql_query et que ca ne devrait plus exister ce genre d'hérésie.... = utiliser mysqli ou PDO)
J'appliquerais toutes les corrections que vous m'avez dit.
Elmsroth, quand tu dis que mysql_query ne devrait plus exister et que après tu me parles de mysqli, tu veux dire que je remplace mysql_query par mysqli_query ?
(06-04-2011 15:03)Samaf a écrit :  J'appliquerais toutes les corrections que vous m'avez dit.
Elmsroth, quand tu dis que mysql_query ne devrait plus exister et que après tu me parles de mysqli, tu veux dire que je remplace mysql_query par mysqli_query ?

Oui

Ca serait bien aussi d'utiliser un for plutôt qu'un while ...
D'accord, et je pourrais savoir pourquoi utiliser mysqli à la place de mysql ?
Aussi pour while stp Smile

Retourner en haut Accueil