Quero fazer a seguinte tabela de ranking:
Posição Nome Matou Morreu
1 Helcio Macedo 150 11
2 Fulano 140 30
3 Ciclano 190 110
4 Beltrano 80 40
Até o 10º Lugar
Quero que o ranking funcione para que a cada pessoa q ele matasse, ganhasse 1 ponto e cada vez q ele morrer, perde 1 ponto!!
Por Exemplo
1 Helcio Macedo 150 - 11 = 139
2 Fulano 140 - 30 = 110
3 Ciclano 190 - 110 = 80
4 Beltrano 80 - 40 = 40
Mas o resultado dos pontos não deverá aparecer.. Apenas as quantides de Kills e Deaths assim como mostra o primeiro exemplo!!
Entenderam???
Como faço isso no Php com MySQL??
Banco = GVG
Colunas = NAME, KILLS, DEATHS
Alguém pode me ajudar??
Ranking
Started By Helcio Macedo, 22/09/2009, 22:10
8 replies to this topic
#1
Posted 22/09/2009, 22:10
Intel Inside Core 2 Duo E8400 - 3.0Ghz - Wolfdale - 6MB L2 Cache - 1333FSB
XFX 9300 Motherboard
x2 2Gb Corsair DDR 800Mhz
Western Digital 500Gb Caviar Green
NZXT Apollo Black
XFX 9300 Motherboard
x2 2Gb Corsair DDR 800Mhz
Western Digital 500Gb Caviar Green
NZXT Apollo Black
#2
Posted 22/09/2009, 23:05
Cria um novo campo "pontos" por ex.
cada vez que ele matar você da um update +1 no matou e pontos
e a cada vez que ele morrer você faz um update +1 morreu e -1 no pontos
[]'s
cada vez que ele matar você da um update +1 no matou e pontos
e a cada vez que ele morrer você faz um update +1 morreu e -1 no pontos
[]'s
#3
Posted 22/09/2009, 23:15
mas aí eh q tah.. isso é de um sistema pronto do jogo.. não dá pra mudar..
Eu pensei em algo como determinar
$kill = (conteudo da coluna Kill)
$death = (conteudo de Death)
e fazer algo como
$frag = $kill-$death
e depois no resultado ser mostrado como
SELECT * FROM gvg ORDER BY $frag LIMIT 10
Mas não deu certo.. jah tentei de várias formas
Eu pensei em algo como determinar
$kill = (conteudo da coluna Kill)
$death = (conteudo de Death)
e fazer algo como
$frag = $kill-$death
e depois no resultado ser mostrado como
SELECT * FROM gvg ORDER BY $frag LIMIT 10
Mas não deu certo.. jah tentei de várias formas
Intel Inside Core 2 Duo E8400 - 3.0Ghz - Wolfdale - 6MB L2 Cache - 1333FSB
XFX 9300 Motherboard
x2 2Gb Corsair DDR 800Mhz
Western Digital 500Gb Caviar Green
NZXT Apollo Black
XFX 9300 Motherboard
x2 2Gb Corsair DDR 800Mhz
Western Digital 500Gb Caviar Green
NZXT Apollo Black
#4
Posted 23/09/2009, 07:33
SELECT * FROM gvg ORDER BY kills DESC, deaths ASC
acho que ja resolve seu problema!
=]
#5
Posted 23/09/2009, 08:40
Bom dia amigo.
Tudo bom?
Faz assim que eu acho que vai!
[codebox]SELECT kills, deaths, kills - deaths as frag FROM gvg ORDER BY frag DESC;[/codebox]
Depois posta ai o que aconteceu!
Abraços e até a próxima!
Tudo bom?
Faz assim que eu acho que vai!
[codebox]SELECT kills, deaths, kills - deaths as frag FROM gvg ORDER BY frag DESC;[/codebox]
Depois posta ai o que aconteceu!
Abraços e até a próxima!
#6
Posted 23/09/2009, 12:09
Bom dia amigo.
Tudo bom?
Faz assim que eu acho que vai!SELECT kills, deaths, kills - deaths as frag FROM gvg ORDER BY frag DESC;
Depois posta ai o que aconteceu!
Abraços e até a próxima!
Funcionou perfeitamente.. não conhecia essa forma de consulta usando o "as"..
Muito Obrigado!!
Só mais uma coisa.. como q eu faço pra mostrar o número das posições?
Pelo q entendi seria usando "array" mas tb nao sei usar ele
Intel Inside Core 2 Duo E8400 - 3.0Ghz - Wolfdale - 6MB L2 Cache - 1333FSB
XFX 9300 Motherboard
x2 2Gb Corsair DDR 800Mhz
Western Digital 500Gb Caviar Green
NZXT Apollo Black
XFX 9300 Motherboard
x2 2Gb Corsair DDR 800Mhz
Western Digital 500Gb Caviar Green
NZXT Apollo Black
#7
Posted 23/09/2009, 13:14
Isso você não precisa obter da query. Basta você criar uma variável e incrementar no loop, mostrando o seu valor.
Felipe Pena
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29
#8
Posted 23/09/2009, 18:30
vlw.. consegui fazer
criei a var
$count = 0;
e adicionei o
$count++;
Mais uma vez agradeço a ajuda de todos!!
E lá vou eu dnv!! ^^
Esta parte do Ranking está funcionando
E esta parte não aparece nada
No topo da página eu coloquei:
Pode parecer um pouco estranho o método q estou inserindo o php na página.. é porque eu entendo mto de html e quase nada de php.. e o editor q eu uso não colore as tags nem mostra a edição visual em php.. então minhas página ficam em html e depois converto pra php e vou inserindo as funções
criei a var
$count = 0;
e adicionei o
$count++;
Mais uma vez agradeço a ajuda de todos!!
E lá vou eu dnv!! ^^
Esta parte do Ranking está funcionando
<?php <table style="width: 100%" cellspacing="0" cellpadding="0" class="style36Rank"> <tr> <td class="style57Rank" style="width: 51px; height: 12px;"><span class="style44Rank"> <strong>Posição</strong></span> </td> <td class="style57Rank" style="width: 2px; height: 12px;"></td> <td class="style56Rank" style="width: 128px; height: 12px;"><strong> <span class="style44Rank">Guilda</span></strong></td> <td class="style55Rank" style="width: 55px; height: 12px;"><strong>Matou</strong></td> <td class="style54Rank" style="height: 12px"><strong>Morreu</strong></td> </tr> <?php $gvgsql = "SELECT *, kills - deaths as frag FROM gvg ORDER BY frag DESC;"; $gvgres = mysql_query($gvgsql); if($gvgres) { while ($gvg = mysql_fetch_array($gvgres)){ echo "<tr> <td class='style61Rank' style='width: 51px'>"; echo $count++; echo "º</td> <td class='style61Rank' style='width: 2px'></td> <td class='style58Rank'>$gvg[name]</td> <td class='style61Rank' style='width: 55px'>$gvg[kills]</td> <td class='style61Rank'>$gvg[deaths]</td> </tr> ";}} ?> </table>
E esta parte não aparece nada
<table style="width: 100%" cellspacing="0" cellpadding="0" class="style36Rank"> <tr> <td class="style57Rank" style="width: 51px; height: 12px;"><span class="style44Rank"> <strong>Posição</strong></span> </td> <td class="style56Rank" style="width: 128px; height: 12px;"> <strong> <span class="style44Rank">Character</span></strong></td> <td class="style62" style="height: 12px"> <font face="Verdana" size="2" color="black"> <span class="style44Rank"> <strong>Zeny's</strong></span></font></td> </tr> <?php $zsql = "SELECT * FROM char ORDER BY zeny DESC LIMIT 10;"; $zres = mysql_query($zsql); if($zres) { while ($zeny = mysql_fetch_array($zres)){ echo "<tr> <td class='style61Rank' style='width: 51px'>"; echo $count++; echo "º</td> <td class='style58Rank'>$zeny[name]</td> <td class='style61Rank'>$zeny[zeny]</td> </tr> ";}} ?> </table>
No topo da página eu coloquei:
<?php include_once("lg/cnn.php"); mysql_connect($host,$usuario,$senha) or die("Erro ao conectar no banco de dados"); mysql_select_db($banco_de_dados) or die("Erro ao selecionar o banco de dados"); $count = 1; ?>
Pode parecer um pouco estranho o método q estou inserindo o php na página.. é porque eu entendo mto de html e quase nada de php.. e o editor q eu uso não colore as tags nem mostra a edição visual em php.. então minhas página ficam em html e depois converto pra php e vou inserindo as funções
Intel Inside Core 2 Duo E8400 - 3.0Ghz - Wolfdale - 6MB L2 Cache - 1333FSB
XFX 9300 Motherboard
x2 2Gb Corsair DDR 800Mhz
Western Digital 500Gb Caviar Green
NZXT Apollo Black
XFX 9300 Motherboard
x2 2Gb Corsair DDR 800Mhz
Western Digital 500Gb Caviar Green
NZXT Apollo Black
#9
Posted 26/09/2009, 19:00
Muito Obrigado a Todos..!!
Problema Resolvido!!
Problema Resolvido!!
Edição feita por: Helcio Macedo, 27/09/2009, 07:07.
Intel Inside Core 2 Duo E8400 - 3.0Ghz - Wolfdale - 6MB L2 Cache - 1333FSB
XFX 9300 Motherboard
x2 2Gb Corsair DDR 800Mhz
Western Digital 500Gb Caviar Green
NZXT Apollo Black
XFX 9300 Motherboard
x2 2Gb Corsair DDR 800Mhz
Western Digital 500Gb Caviar Green
NZXT Apollo Black
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)