Hogyan tudnám azt megoldani, hogy egy külön lapon található profil oldalon kírja a karakter ranglista helyét?
Mire van hozzá szükség? Kivitelezhető-e?
Természetesen kivitelezhető.
Csupán forrásra van szükség hozzá.
A karaktereknek van profilja, vagy a felhasználóknak?
Ha a felhasználónak, az összesnek ki szeretnéd íratni a nevét és helyezését, vagy csak mondjuk a legnagyobbét?
itt egy query:
select count(*)+1 from player where level >= KARAKTERSZINT and exp > KARAKTEREXP;
nyilván oda a karakteret szintjét és expjét tároló változó kell
Itt egy teljes kód. Nem túl erőforrás barát, de működik. Szúrd be oda, ahol ki akarod íratni, hogy hányadik a ranglistán.
// a $playerID ben tárold a player ID jét
$con2=mysqli_connect(SERVER_IP,SERVER_USRNAME,SERVER_PASSWORD,"player");
echo "Helyezet toplistán: ";
$sz = 0;
$result = mysqli_query($con2, "SELECT id FROM player ORDER BY level DESC");
while($row = mysqli_fetch_array($result)){
$sz++;
if($row['id'] == $playerID)
{
break;
}
}
echo $sz;
Minek lekérdezni mindet és végigfutni egy ciklussal rajta? Egyszerűbb picit gondolkodni és lekérdezni a számát azoknak, akiket előrébb sorolsz .__. ezért írtam azt a queryt -.-
Igazad van :) Ha azt szeretné, azt használja! Ezért tettem hozzá, hogy nem túl erőforrás barát.