Prob de select limit

Fermé
dolux64 - 2 mars 2008 à 16:55
dolux64 Messages postés 12 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 20 avril 2008 - 9 mars 2008 à 13:59
Bonjour,
alors voilas ,pour un club , nous stokon tout les resultat de nos tournoi ainsi que les point aquis des joueur au cour du tournoi ,dans un base de données
je voudrait faire une requette qui selectione les 5 meilleurs resultat de point aqui d'un 'membre'

Le non de tout les tournoi es stoker ds une table 'tournois' colone 'nom'
et le resultat du tournoi ainsi que les point sont stoker ds une table 'nom_du_tournoi' colone 'point_aspt_tournoi'

la requette que j utilise actuellement est :

<?
$pseudo = $_SESSION['pseudo_site'] ;

$link = mysql_connect($host, $user,$passwd) or die("erreur de connexion au serveur");
mysql_select_db($bdd) or die("erreur de connexion a la base de donnees");

echo '<br><br><span class="Style5"> Liste total des tournois de '.$pseudo.'<br> </spam>';

$select = "SELECT nom,type FROM tournois WHERE type='aspt' ORDER BY 'nom' ";
$result = mysql_query($select,$link) or die ('Erreur a la selection de la liste: '.mysql_error() );
$total = mysql_num_rows($result);

while($row = mysql_fetch_array($result)){
$nom= $row["nom"] ;
$select2 = "SELECT pt_aspt_tournoi FROM $nom WHERE pseudo='$pseudo'";
$result2 = mysql_query($select2,$link) or die ('Erreur a la selection des tournois de $pseudo : '.mysql_error() );
$total2 = mysql_num_rows($result2);
$row2 = mysql_fetch_array($result2);
if ($total2 ) {

echo '<span class="Style1">'.$row["nom"].' = ';
echo ''.$row2["pt_aspt_tournoi"].'</span><br>';

}
}
?>

je bute sur ce sujet , car je ne peu pas mattre ma limite de 5 sur la select 2 ni sur la select 1
si qlq'1 a une petite idée ?...

Merci d'avance ;)

2 réponses

Bonsoir,

Si j'ai bien compris tu veux afficher les 5 meilleurs résultat d'un jour parmi tous ceux qu'il a fait ?

Dans ce cas je pense que ta requête devrait être :

$select2 = "SELECT pt_aspt_tournoi FROM $nom WHERE pseudo='$pseudo'" order by pt_aspt_tournoi desc;

et pour l'affichage je pense qu'un while suffirait :

if ($total2 ) {
$x = "1";
while ($x <= 5) {
echo '<span class="Style1">'.$row["nom"].' = ';
echo ''.$row2["pt_aspt_tournoi"].'</span><br>';
$x++
}
}

ne disposant plus de base SQL je ne suis pas sur du résultat mais je pense que cela devrait fonctionner. Tiens moi au courant

Cordialement
0
dolux64 Messages postés 12 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 20 avril 2008
9 mars 2008 à 13:59
franchement merci ,

j ai resolut mon prob , ça marche super :)
au plaisir'
0