Ik heb bv dit script (ff snel getypt voor mn vraag):

<?
// blablabla

$sql = "SELECT playername FROM tabel";
$res = mysql_query($sql);
$aantal = mysql_num_rows($res);

for($getal=0;$getal <= $aantal;$getal++)
{
// zogenaamd tabelletje
echo "<tr><td>$getal<td>$row[playername]<td<tr>";
}

//blabla

?>

Hoe weet ik nu welke rank de ingelogde speler heeft?
Bv de speler staat na deze for loop (die idd niets met scores te maken heeft) op plaats 85 hoe kom ik daarachter om dat al zonder die lijst weer te geven?
Offtopic : Haha stom berichten bij koffiehoek gezet :P
<?
//mysqlgezeik
while($getal <= $aantal){
if($getal==$aantal){
echo "<tr><td>".$getal."</td><td>".$row['playername']."</td></tr>";
}
$getal = $getal + 1;
}
misschien
Nee dat lijkt me niet.
Ik wil de rank van een speler weten:
bv

1 Mitch
2 Pers2
3 Pers3
enz

Nou wil ik als mitch ingelogt is laten zien (zonder dit rijtje te maken) bij stats op welke plaats hij staat en dit geld ook voor die anderen...
ik had net een ingeving:

Individuele scores zijn natuurlijk de plaats (rank). Dit is het aantal mensen dat boven iemand zit +1.

(zitten er 0 personen met een hogere rating boven je, zit je op de 1e plaats, 1 persoon op de tweede plaats.).

SELECT (COUNT(willekeurigecolom)+1) where score > $scorevanpersoon

Ik raad je aan wel een INDEX aan te maken op de score, dit voorkomt een hoop ellende bij meer spelers.

Grtz,

Arend
Een index op de score wil zeggen?
En hoe moet ik deze query echo'en?
Er moet natuurlijk een cijfer uikomen ....
Gewoon, fetchrow. Of als je perse via een objectje of associative array wil fetchen kan je ook de query iets aanpassen:

SELECT (COUNT(willekeurigecolom)+1) as score where score > $scorevanpersoon
Ik heb nu dit:
<?

include "connect.php";

$sql = "SELECT (COUNT(id)+1) FROM users where power > 10";
$res = mysql_query($sql);

$rank = mysql_fetch_array($res);

echo $rank;

?>
Maar ipv een getal echo'ed hij Array ...

Reageren