[sql] Rank 100% Igual Do Tibia

Diorges
em Tutoriais de Websites
  • 1
  • 2

Diorges

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 19/04/06Posts: 3

Post retirado do OTFans!

Funciona apenas para servers SQL com o nova estrutura de Banco de Dados.

 

Versão antiga que funciona com estrutura antiga pode ser encontrado nesse link:

http://rapidshare.com/files/25881668/highscores.rar.html

 

-------------------------------------------------------------------------------------------

Hello!

This highscores was made by me.

The codes are based on the script made by Junkfood, and some credits will be to him.

No GM's in the Rank and 25 players per page.

 

ChangeLog:

* Updated to work with the Newest DataBase! (7.92 OTServers)

* Players with group_id more than 1 will not show in the rank (configurable in config.php).

* Fixed some issues.

 

Bugs:

None yet.

 

Config.php

<?
/*
  Script made by Tatu_Hunter		
Please dont remove this Credits	  
*/
$group_id = "2";		// Players with group_id more or equal to this variable will not shown in the rank.
$db['user'] = "root";		// Your USER for MySQL.
$db['pass'] = "password";	// Your Password.
$db['host'] = "localhost";	// HOST.
$db['name'] = "database";	// Data Base name.
@mysql_connect($db['host'], $db['user'], $db['pass']) or die("Unable to connect with the date base.");
@mysql_select_db($db['name']) or die("Unable to select the data base <b>".$db['name']."</b>.");
?>

 

and Highscores.php

<?
/*
  Script made by Tatu_Hunter		
Please dont remove this Credits	  
*/
include("config.php");
$cfg['rank'] = 25;
if(isset($_GET['skill'])){
$skill = $_GET['skill'];
} else {
$skill = "Level";
}
if(!isset($_GET['pg'])) {
$pg = 1;
} else {
$pg = $_GET['pg'];
}
if($pg > 11){
$inicio = 11;
}else{
$inicio = $pg - 1;
}
$ini = $inicio * $cfg['rank'];
$prox = $cfg['rank'] * $pg + 1;
$prox_ = $cfg['rank'] * $pg + $cfg['rank'];
if($pg == 2){
$ante = "1-".$cfg['rank'];
}elseif($pg > 2){
$aa = $pg - 1;
$b = $pg - 2;
$a = $cfg['rank'] * $b;
$ante = $a+'1'."-".$cfg['rank']*$aa;
}
if($pg == 1 or $pg == ""){
$asd = " ";
}else{
$asd = " | ";
}
?>
<style type="text/css">
<!--
.style1 {color: #FFFFFF}
-->
</style>
<div align="center"><h3 class="headerstyle">Highscores - Top 300</h3></div>
<table width="100%" border="0" cellspacing="1" cellpadding="2">
 <tr>
<td width="87%" valign="top"><table width="100%" border="0" cellpadding="2" cellspacing="1" bgcolor="#000000">
  <tr>
	<td width="10%"><div align="center"><span class="style1">Rank</span></div></td>
	<td width="50%"><span class="style1">Nome</span></td>
	<td width="15%"><div align="center"><span class="style1"><?=$skill?></span></div></td>
	<? if($skill == "Level"){?><td width="25%"><div align="center"><span class="style1">Experience</span></div></td><? } ?>
  </tr>
<?  switch($skill){
 case "Fist":
  $id = 0;
  break;
 case "Club":
  $id = 1;
  break;
 case "Sword":
  $id = 2;
  break;
 case "Axe":
  $id = 3;
  break;
 case "Distance":
  $id = 4;
  break;
 case "Shield":
  $id = 5;
  break;
 case "Fish":
  $id = 6;
  break;
}
if($skill == "Level") {
 $total = mysql_query("SELECT * FROM players WHERE group_id < '".$group_id."' ORDER BY level");
 $tr = mysql_num_rows($total);
 $tp = $tr / $cfg['rank'];
 $tp = ceil($tp);
 $ant = $pg-1;
 $pro = $pg+1;
 $verifica = mysql_query("SELECT name,level,experience FROM players WHERE group_id < '".$group_id."' ORDER BY experience DESC LIMIT ".$ini.",".$cfg['rank']."");
 if($pg == 1 or $pg == 0){
  $i = 1;
 }elseif($pg > 1){
  $i = $ini+1;
 }
 while($dados = mysql_fetch_array($verifica)) {
  echo ' <tr>
	   <td bgcolor="#FFFFFF"><center>'.$i.'</center></td>
	   <td bgcolor="#FFFFFF">'.$dados['name'].'</td>
	   <td bgcolor="#FFFFFF"><center>'.$dados['level'].'</center></td>
<td bgcolor="#FFFFFF"><center>'.number_format($dados['experience']).'</center></td>
	  </tr>';
$i++;
 }
 if($tr > $cfg['rank']){
  echo '<tr bgcolor="#FFFFFF">
	<td colspan=4><div align="right">';
  if($pg > 1){
$anterior = '<a href="?skill='.$skill.'&pg='.$ant.'">Rank '.$ante.'</a>';
  }
  if($pg != 11){
if($pg < $tp){
 $proxima = '<a href="?skill='.$skill.'&pg='.$pro.'">Rank '.$prox.'-'.$prox_.'</a>';
 $tt = true;
}
  }
  echo $anterior;
  if($tt == true) echo $asd;
  echo $proxima;
  echo '</div></td><tr>';
 }	
}
elseif($skill == "Magic") {
 $total = mysql_query("SELECT * FROM players WHERE group_id < '".$group_id."' ORDER BY maglevel");
 $tr = mysql_num_rows($total);
 $tp = $tr / $cfg['rank'];
 $tp = ceil($tp);
 $ant = $pg-1;
 $pro = $pg+1;
 $verifica = mysql_query("SELECT name,maglevel FROM players WHERE group_id < '".$group_id."' ORDER BY maglevel DESC LIMIT ".$ini.",".$cfg['rank']."");
 if($pg == 1 or $pg == 0){
  $i = 1;
 }elseif($pg > 1){
  $i = $ini+1;
 }
 while($dados = mysql_fetch_array($verifica)) {
echo ' <tr>
	   <td bgcolor="#FFFFFF"><center>'.$i.'</center></td>
	   <td bgcolor="#FFFFFF">'.$dados['name'].'</td>
	   <td bgcolor="#FFFFFF"><center>'.$dados['maglevel'].'</center></td>
	  </tr>';
$i++;
 }
 if($tr > $cfg['rank']){
  echo '<tr bgcolor="#FFFFFF">
	<td colspan=3><div align="right">';
  if($pg > 1){
$anterior = '<a href="?skill='.$skill.'&pg='.$ant.'">Rank '.$ante.'</a>';
  }
  if($pg != 11){
if($pg < $tp){
 $proxima = '<a href="?skill='.$skill.'&pg='.$pro.'">Rank '.$prox.'-'.$prox_.'</a>';
 $tt = true;
}
  }
  echo $anterior;
  if($tt == true) echo $asd;
  echo $proxima;
  echo '</div></td><tr>';
 } 
}
else {
 $total = mysql_query("SELECT name,value FROM players, player_skills WHERE group_id < '".$group_id."' AND players.id = player_skills.player_id AND player_skills.skillid = ".$id." ORDER BY value DESC");
 $tr = mysql_num_rows($total);
 $tp = $tr / $cfg['rank'];
 $tp = ceil($tp);
 $ant = $pg-1;
 $pro = $pg+1;
 $verifica = mysql_query("SELECT name,value FROM players, player_skills WHERE group_id < '".$group_id."' AND players.id = player_skills.player_id AND player_skills.skillid = ".$id." ORDER BY value DESC LIMIT ".$ini.",".$cfg['rank']."");
 if($pg == 1 or $pg == 0){
  $i = 1;
 }elseif($pg > 1){
  $i = $ini+1;
 }
 while($dados = mysql_fetch_array($verifica)) {
echo ' <tr>
	   <td bgcolor="#FFFFFF"><center>'.$i.'</center></td>
	   <td bgcolor="#FFFFFF">'.$dados['name'].'</td>
	   <td bgcolor="#FFFFFF"><center>'.$dados['value'].'</center></td>
	  </tr>';
$i++;
 }
 if($tr > $cfg['rank']){
  echo '<tr bgcolor="#FFFFFF">
	<td colspan=3><div align="right">';
  if($pg > 1){
$anterior = '<a href="?skill='.$skill.'&pg='.$ant.'">Rank '.$ante.'</a>';
  }
  if($pg != 11){
if($pg < $tp){
 $proxima = '<a href="?skill='.$skill.'&pg='.$pro.'">Rank '.$prox.'-'.$prox_.'</a>';
 $tt = true;
}
  }
  echo $anterior;
  if($tt == true) echo $asd;
  echo $proxima;
  echo '</div></td><tr>';
 } 
} 

?>
</table>
<div align="right">
</div>
  <table width="100%" border="0" cellpadding="2" cellspacing="1" bgcolor="#000000">
  </table></td>
<td width="13%" valign="top"><table width="130" border="0" align="right" cellpadding="2" cellspacing="1" bgcolor="#000000">
  <tr>
	<td bgcolor="#FFFFFF"><div align="center"><a href="?topico=highscores&skill=Level">Level</a></div></td>
  </tr>
  <tr>
	<td bgcolor="#FFFFFF"><div align="center"><a href="?topico=highscores&skill=Magic">Magic Level </a></div></td>
  </tr>
  <tr>
	<td bgcolor="#FFFFFF"><div align="center"><a href="?topico=highscores&skill=Fist">Fist Fighting </a></div></td>
  </tr>
  <tr>
	<td bgcolor="#FFFFFF"><div align="center"><a href="?topico=highscores&skill=Club">Club Fighting </a></div></td>
  </tr>
  <tr>
	<td bgcolor="#FFFFFF"><div align="center"><a href="?topico=highscores&skill=Sword">Sword Fighting </a></div></td>
  </tr>
  <tr>
	<td bgcolor="#FFFFFF"><div align="center"><a href="?topico=highscores&skill=Axe">Axe Fighting </a></div></td>
  </tr>
  <tr>
	<td bgcolor="#FFFFFF"><div align="center"><a href="?topico=highscores&skill=Distance">Distance Fighting</a></div></td>
  </tr>
  <tr>
	<td bgcolor="#FFFFFF"><div align="center"><a href="?topico=highscores&skill=Shield">Shielding</a></div></td>
  </tr>
  <tr>
	<td bgcolor="#FFFFFF"><div align="center"><a href="?topico=highscores&skill=Fish">Fishing</a></div></td>
  </tr>
</table></td>
 </tr>
</table>
<?
mysql_close();
?>

 

Screenshot

imagemzz3.jpg

 

------

If you find any bug post here...

c ya!

 

---------

Ahhh lembrando que eu sou Tatu_Hunter.

Angel_Of_Night

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 30/05/06Posts: 18

Funfa em xml tb ? ;P


...............................Web@Design................................




Presentes

Luc4z




Diorges

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 19/04/06Posts: 3

@up

Apenas só SQL!

Mustorze

Banido
avatar
Banidos
Banidos

INFOS

Grupo: BanidosRegistrado: 28/04/06Posts: 46

ehheeh nao uso muito sql mais ta daorinha

[Banido por Ripping]

HeNnet

avatar
Artesão
Artesão

INFOS

Grupo: ArtesãoRegistrado: 01/09/05Posts: 114Char no Tibia: Tiduji

heheh tbm não intendo de sql mas parece estar bom vou testar x~] e estudar o code vlw!

 

 

 

Abraços HeNnEt B)\\

wizardwarriorvr8.jpg

HenneT

nostrafanso6.png

godthunder

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 25/05/07Posts: 11

ow mano assim o sistema é bom só nao gostei por 1 coisa pq você copiou do Swelia

você nao o fez...

Ardok

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 31/08/06Posts: 27

Funfa em sites SQL apartir do 7.92? Ou somente em 7.92?


[PROCURA-SE: MAPPER, SPRITER MAKER E CLIENT MAKER]

h3online

.......0.o.......
avatar
Artesão
Artesão

INFOS

Grupo: ArtesãoRegistrado: 21/02/07Posts: 137Char no Tibia: GOD Grimrath

bom gostei



[X]Camponês
[X]Caçador
[X]Cavaleiro
[X]Baronete
[X]Barão


Tibi4ee e Colex melhores escripters
Mapper e RPG Maker

Diorges

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 19/04/06Posts: 3
ow mano assim o sistema é bom só nao gostei por 1 coisa pq você copiou do Swelia

você nao o fez...

 

Quem disse que não foi eu?

O site Swellia é um site com vários scripts feito por várias pessoas e uma delas sou eu... Tatu_Hunter

 

Obrigado por gostarem.

upking

Phoenix, sempre ressurgindo das cinzas
avatar
Marquês
Marquês

INFOS

Grupo: MarquêsRegistrado: 24/10/06Posts: 1026Char no Tibia: Lord Night Rider

boa, sql ganhando força

do moh apoio ao servidor em mysql mas to put* pq nao consigo fazer o xampp pegar aki, alguem me ranja um tuto de otstriad pra servidor em mysql?

Visite meu canal no youtube: http://youtube.com/gabriel_rodriguez_tech

 

EremboR

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 13/01/08Posts: 29

Poderia ter sido feito por você, mas ficou bem legal. Obrigado por trazer!


l

eniofreire

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 12/12/07Posts: 5Char no Tibia: Nick Nite

Muito Bem Explicado, Valeuu!

Sou:

Te ajudei??é meu fãn??Use minha fãn bar provisoria:

Colaborador,Xtibia. Tutoriais Uteis.
X-blog Tutoriais & Suportes.
Visite Meu X-Blog, Lá Encontrará Muito Mais Tutoriais Relacionados A OTserv.

CODE
Elaboro: Tutoriais De Todo Tipo, Websites,mapping,script, Em Geral.
Sou:Auxiliar de Mapper,SCRIPTER.
Objetivo: Sempre Ajudar no Forúm X-Tibia Com Suportes & Tutoriais De OTservs.
Contatos:---------
netow3@hotmail.com.
---------------------------------------------
Colaborando Com o Forúm A Cada Dia Que Passa.|

fabimdoidim

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 22/01/08Posts: 1

kra parabens! mas devia postar um para XML q é um dos tipos mais usados!!

  • 1
  • 2