Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

deathnoterpg

[Resolvido] como mostrar a posição do usuario no ranking?

Recommended Posts

oiee pessoal...

eu tenho um ranking que funciona perfeitamente... ele lista todos os usuarios cadastrados e ordena por nivel...

 

agora eu preciso colocar antes dessa tebela do ranking a posição do jogador.. ficaria mais ou menos assim:


Você esta em 1520º lugar no ranking geral:

----------------------------------------
 posição | Nome  |  Lvl    | Personagem|
----------------------------------------
  1º    | nome1 |  100    | Char 1    |
----------------------------------------
  2º    | nome2 |  99     | Char 5    |
----------------------------------------
  3º    | nome3 |  98     | Char 1    |
----------------------------------------
...
----------------------------------------
1520º   |  1520 |  2      | Char 1    |
----------------------------------------

 

entenderam?

agradeço.. vlw :ermm:

Compartilhar este post


Link para o post
Compartilhar em outros sites

se já tá em ordem, essa posição é um contador $i arbitrário.

 

$i = 1;
while( $dados ... ){
 echo $i.$nome_do_jogador...
 $i++;
}

:lol:

Compartilhar este post


Link para o post
Compartilhar em outros sites

mann no ta dando certo no...

 

olha como eh o meu codigo:

<table width="100%" border="0" background="images/brancot.png">
<tr>
<th width="10%"><span class="titl"><b>Rank</b>
 </td>
</span>
<th width="30%"><span class="titl"><b>Domador</b>
 </td>
</span>
<th width="20%"><span class="titl"><b>Digimon</b>
 </td>
</span>
<th width="10%"><span class="titl"><b>Nivel</b>
 </td>
</span>
<th width="30%"><span class="titl"><b>Evolução</b>
 </td>
</span>
<th width="20%" class="titl"><b>Digimon</b>
 </td>
</tr>
<?php
$query = $db->execute("select `id`, `username`, `nome_digimon`, `level`, `evolucao`, `digimon` from `players` order by `level` desc limit ?,?", array($begin, $limit));

while($member = $query->fetchrow())
{$i++;
echo "<tr>\n";
echo "<td>\n";
echo "$i °\n";
echo "</td>\n";
echo "<td>\n";
echo ($member['username'] == $player->username)?"<b>":"";
echo $member['username'];
echo ($member['username'] == $player->username)?"</b>":"";
echo "</td>\n";
echo "<td>\n";
echo ($member['nome_digimon'] == $player->nome_digimon)?"<b>":"";
echo $member['nome_digimon'];
echo ($member['nome_digimon'] == $player->nome_digimon)?"</b>":"";
echo "</td>\n";
echo "<td>" . $member['level'] . "</td>\n";
echo "<td>" . $member['evolucao'] . "</td>\n";
echo "<td><img src='images/rak/" . $member['digimon'] . ".jpg'></td>\n";
echo "</tr>\n";

}
?>
</table>

Compartilhar este post


Link para o post
Compartilhar em outros sites

cadê a inicialização da variavel ?

Reveja meu post.

Compartilhar este post


Link para o post
Compartilhar em outros sites

mann eu ainda to aprendendo php... o codigo completo da minha pagina eh essa:

a variavel deve ser esse inicio aqui neh??:

<?php

include("lib.php");
define("PAGENAME", "Ranking");
$player = check_user($secret_key, $db);

$limit = (!$_GET['limit'])?100:intval($_GET['limit']); 
$begin = (!$_GET['begin'])?$player->id-intval($limit / 2):intval($_GET['begin']);
$begin = ($begin < 0)?0:$begin;
$total_players = $db->getone("select count(ID) as `count` from `players`");
$begin = ($begin >= $total_players)?$total_players - $limit:$begin;
$begin = ($begin < 0)?0:$begin;
$lastpage = (($total_players - $limit) < 0)?0:$total_players - $limit; 
include("templates/private_header.php");
?>
<style type="text/css">
.titl {
font-family: "Courier New", Courier, monospace;
}
.titl b {
font-family: "Comic Sans MS", cursive;
font-size:16px;
}
</style>



<table width="500" border="0" align="center" background="images/ranking.png" style="background-repeat:no-repeat; font-family: 'Courier New', Courier, monospace; font-weight: bold; font-size: 18px;">
 <tr>
   <td width="96" height="107"> </td>
   <td width="394" rowspan="2" align="center" valign="middle"><p> </p>
     <p> </p>
     <p>Lista dos melhores domadores</p>
<p>de digimons do jogo</p></td>
 </tr>
 <tr>
   <td height="62"> </td>
 </tr>
</table>
<br /><br /><br />

<table width="100%" border="0" background="images/brancot.png">
<tr>
<th width="10%"><span class="titl"><b>Rank</b>
 </td>
</span>
<th width="30%"><span class="titl"><b>Domador</b>
 </td>
</span>
<th width="20%"><span class="titl"><b>Digimon</b>
 </td>
</span>
<th width="10%"><span class="titl"><b>Nivel</b>
 </td>
</span>
<th width="30%"><span class="titl"><b>Evolução</b>
 </td>
</span>
<th width="20%" class="titl"><b>Digimon</b>
 </td>
</tr>
<?php
$query = $db->execute("select `id`, `username`, `nome_digimon`, `level`, `evolucao`, `digimon` from `players` order by `level` desc limit ?,?", array($begin, $limit));

while($member = $query->fetchrow())
{$i++;
echo "<tr>\n";
echo "<td>\n";
echo "$i °\n";
echo "</td>\n";
echo "<td>\n";
echo ($member['username'] == $player->username)?"<b>":"";
echo $member['username'];
echo ($member['username'] == $player->username)?"</b>":"";
echo "</td>\n";
echo "<td>\n";
echo ($member['nome_digimon'] == $player->nome_digimon)?"<b>":"";
echo $member['nome_digimon'];
echo ($member['nome_digimon'] == $player->nome_digimon)?"</b>":"";
echo "</td>\n";
echo "<td>" . $member['level'] . "</td>\n";
echo "<td>" . $member['evolucao'] . "</td>\n";
echo "<td><img src='images/rak/" . $member['digimon'] . ".jpg'></td>\n";
echo "</tr>\n";

}
?>
</table>

<?php
include("templates/private_footer.php");
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

amigo, num importa o código completo.

 

veja:

 

$i = 1;
while($member = $query->fetchrow())
{
 $i++;

entendeu? o teu erro foi conceitual.

 

não aprenda php, aprenda a programar. Estude lógica, e programação básica, isso é independente de linguagem.

Compartilhar este post


Link para o post
Compartilhar em outros sites

mas quando eu coloco isso :

$i = 1;
while($member = $query->fetchrow())
{
 $i++;

o ranking começa do 2º nunca começa do 1º

ou seja se o player estiver em 1º lugar no ranking ele mostra em 2º

tendeu??

vou tentar esse codigo pra ver:

$i = 0;
while($member = $query->fetchrow())
{
 $i++;

Compartilhar este post


Link para o post
Compartilhar em outros sites

^^ eu sabia que isso ia acontecer.

 

você não prestou muita atenção no meu código ne?!

eu coloquei o $i++ depois do echo.

 

isso faz diferença. Vai testando ai, que você aprende.

Compartilhar este post


Link para o post
Compartilhar em outros sites

essa linha foi um pseudo código.

apenas de exemplo auto explicativo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.