Comment créer un "top 5" ?

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Comment créer un "top 5" ?

Re: Comment créer un "top 5" ?

par dexon » 24 août 2010, 20:24

Merci :D

Re: Comment créer un "top 5" ?

par xTG » 24 août 2010, 11:10

$i = 1;
while($row = mysql_fetch_array( $result )) {
        echo "<tr><td>";
        echo $i . ". " . $row['name'];
        echo "</td><td>";
        echo $row['reborns'];
        echo "</td></tr>";
        $i++;
} 

Re: Comment créer un "top 5" ?

par dexon » 24 août 2010, 10:02

les 5 dernier ???



sa c’est correct ? :

SELECT name,reborns FROM charater ORDER BY reborns DESC LIMIT 5


et une fois assemblé sa denerais :
<?php

include 'includes/config.php';
$result = mysql_query("SELECT name,reborns FROM charater ORDER BY reborns DESC LIMIT 5") 
or die(mysql_error());  

echo "<table border='1'>";
echo "<tr> <th>Name</th> <th>Reborns</th> </tr>";
while($row = mysql_fetch_array( $result )) {
	echo "<tr><td>"; 
	echo $row['name'];
	echo "</td><td>"; 
	echo $row['reborns'];
	echo "</td></tr>"; 
} 

echo "</table>";
?>
mais comment je rajoute les chifre 1. NOM, 2. Nom2, 3. NOM, etc. ?

Re: Comment créer un "top 5" ?

par xTG » 24 août 2010, 09:48

Jackpot. =D>
Ou presque, car actuellement tu as les 5 derniers. :)

Re: Comment créer un "top 5" ?

par dexon » 24 août 2010, 09:41

ah lol oui merci de me le rappeler ! que je suis bête ^.^

c’est quoi le truque de LIMIT ?

comme sa ? :

SELECT name,reborns FROM charater ORDER BY reborns LIMIT 5

Re: Comment créer un "top 5" ?

par xTG » 24 août 2010, 09:38

Avec ORDER tu peux spécifier le sens, donc tri par ordre décroissant comme cela tu auras les plus gros en haut.
Ensuite tu peux utiliser LIMIT pour spécifier au bout de combien d'enregistrement tu t'arrêtes.

Pour la sélection bien sûr... Tu n 'as pas du chercher loin. ^^
Il suffit de mettre le nom des champs à la place de l'étoile qui veut dire "tout".

Re: Comment créer un "top 5" ?

par dexon » 24 août 2010, 09:28

ok j'ai fait ma recherche mais le probleme c'est que

SELECT * FROM charater ORDER BY reborns

affiche tout le rataplan....

ma table character ne contiens pas juste le name et le nb de reborns il contiens au moins 10 autres truques donc...


c’est possible de lui dire de juste sélectionner le name et reborns ?

Re: Comment créer un "top 5" ?

par Berzemus » 24 août 2010, 09:18

Ce n'est pas une question de Php, mais de Mysql. Regarde du côté du tri, avec "ORDER BY" en Mysql.

Re: Comment créer un "top 5" ?

par dexon » 24 août 2010, 09:12

Non mais je voudrais que... hum comment l'expliquer...

bah de 1, je connais pas le php par cœur et comme je débute.....

je veux quelque chose qui va chercher les infos demandé de tout les character et vérifie ceux qui on le plus de reborns pour le mettre en haut de la liste en numéro 1 après c’est le second, etc.

Re: Comment créer un "top 5" ?

par Nours312 » 24 août 2010, 08:53

donc, tu te connectes à la Bdd et en une requette (voir Unions)tu récupères les 5 résultats qui t'interesse (voir limit et where)

une fois obtenu, tu fais une boucle (while / foreach / for / ...) et à chaque boucle tu affiche un resultat !....

et voila, c'est fait !

Comment créer un "top 5" ?

par dexon » 24 août 2010, 08:36

Bonjours,

Je voudrais savoir comment on fait un emplacement pour un top 5 ?

de ce genre :

Tegilock Top5

....| Pseudo | Nb de rebirth
#1 | Joueur1 | 50
#2 | Joueur2 | 40
#3 | Joueur3 | 30
#4 | Joueur4 | 20
#5 | Joueur5 | 10

Connection a la database : include 'includes/config.php';

nom des base de donnée :
Pseudo = name
Nb de rebirth = reborns

dans la table : characters

quelqu'un peux maider ? svp je ne sais même pas par où commencer lol :?

P.S. Je suis du type visuel donc apprend plus facilement en regardant les chose en explorant,etc.