Valenza 855 Posted June 8, 2014 Bom dia! Gostaria de pedir a quem sabe fazer scripts de web site, como se faz scripts de ranking? eu queria fazer um script diferenciado dos demais que já existem ( guid, por nivel ) por exemplo o MKMT2 possui o ranking de jogadores Online (também queria achar um desse) mas o pedido principal é: - o que eu preciso fazer para criar um script de ranking?, tipo, para fazer um ranking de jogadores online qual a diferença de script comparando o de NIVEL/GUILD com este novo modo (jogadores ON) ? Queria pedir um script padrão utilizado, para acrescentar outras funções e assim poder gerar novos tipos de ranking... seria interessante.. obrigado. Share this post Link to post Share on other sites
Unk3n0w7 1,321 Posted June 8, 2014 <?PHP $CPSeite = 25; $markierteZeile=0; if(isset($_GET['p'])) { if(!checkInt($_GET['p']) || !($_GET['p']>0)) $aSeite = 1; else $aSeite = $_GET['p']; } else { $aSeite = 1; } if(isset($_POST['suche']) && $_POST['suche']=='Αναζήτηση') { if(!empty($_POST['charakter'])) { $sqlCmd="SELECT id, name, level, exp, empire, guild_name, rang FROM ( SELECT id, name, level, exp, empire, guild_name, @num := @num +1 AS rang FROM ( SELECT player.id, player.name, player.level, player.exp, player_index.empire, guild.name AS guild_name, @num :=0 FROM player.player LEFT JOIN player.player_index ON player_index.id = player.account_id LEFT JOIN player.guild_member ON guild_member.pid = player.id LEFT JOIN player.guild ON guild.id = guild_member.guild_id INNER JOIN account.account ON account.id=player.account_id WHERE player.name NOT LIKE '[%]%' AND account.status!='BLOCK' ORDER BY player.level DESC , player.exp DESC ) AS t1 ) AS t2 WHERE name = '".mysql_real_escape_string($_POST['charakter'])."' LIMIT 1"; $sqlQry=mysql_query($sqlCmd,$sqlServ); if(mysql_num_rows($sqlQry)>0) { $getRang = mysql_fetch_object($sqlQry); $aSeite = ceil($getRang->rang/$CPSeite); $markierteZeile = $getRang->rang; } } } $sqlCmd = "SELECT COUNT(*) as summeChars FROM player.player LEFT JOIN player.player_index ON player_index.id=player.account_id LEFT JOIN player.guild_member ON guild_member.pid=player.id LEFT JOIN player.guild ON guild.id=guild_member.guild_id INNER JOIN account.account ON account.id=player.account_id WHERE player.name NOT LIKE '[%]%' AND account.status!='BLOCK' ORDER BY player.level DESC, player.exp DESC"; $sqlQry = mysql_query($sqlCmd,$sqlServ); $getSum = mysql_fetch_object($sqlQry); $cSeite = calcPages($getSum->summeChars,$aSeite,$CPSeite); ?><div id="con-top">Κατάταξη χαρακτήρων</div><div id="con-mid"><div class="center"><form name="form"><select name="link" SIZE="1" onChange="window.location.href = document.form.link.options[document.form.link.selectedIndex].value;"><option selected value="#">Κατάταξη χαρακτήρων</option><option value="?s=ranking_gilden">Κατάταξη Συντεχνιών</option></select></form><br/><form action="?s=ranking_chars" method="POST"> <b>Suche:</b> <input type="text" name="charakter" maxlength="20" size="20" class="txt"/> <input type="submit" name="suche" value="Αναζήτηση" maxlength="20" size="20" class="button"/></form></div><table><tr> <th class="topLine">Βαθμ</th> <th class="topLine">Όνομα</th> <th class="topLine">Επίπεδο</th> <th class="topLine">EXP</th> <th class="topLine">Συντεχνία</th> <th class="topLine">Βασίλειο</th></tr><?PHP $sqlCmd = "SELECT player.id,player.name,player.level,player.exp,player_index.empire,guild.name AS guild_name,guild.id AS guild_id FROM player.player LEFT JOIN player.player_index ON player_index.id=player.account_id LEFT JOIN player.guild_member ON guild_member.pid=player.id LEFT JOIN player.guild ON guild.id=guild_member.guild_id INNER JOIN account.account ON account.id=player.account_id WHERE player.name NOT LIKE '[%]%' AND account.status!='BLOCK' ORDER BY player.level DESC, player.exp DESC LIMIT ".$cSeite[1].",".$CPSeite; $sqlCmd2 = "SELECT player.name,player.account_id FROM player.player INNER JOIN account.account ON account.id=player.account_id WHERE player.name NOT LIKE '[%]%' AND account.status!='BLOCK'"; $sqlQry = mysql_query($sqlCmd,$sqlServ); $numrows = mysql_num_rows(mysql_query($sqlCmd2,$sqlServ)); $x=$cSeite[1]+1; while($getPlayers = mysql_fetch_object($sqlQry)) { $zF = ($x%2==0) ? "thell" : "tdunkel"; if(checkInt($markierteZeile) && $markierteZeile==$x) { $zF = "tmarkiert"; } echo "<tr>"; echo "<td class="$zF">".$x."</td>"; echo "<td class="$zF"><a href='index.php?s=char&char=".$getPlayers->name."'>".$getPlayers->name."</a></td>"; echo "<td class="$zF">".$getPlayers->level."</td>"; echo "<td class="$zF">".$getPlayers->exp."</td>"; echo "<td class="$zF"><a href='index.php?s=guild&guild=".$getPlayers->guild_name."'>".$getPlayers->guild_name."</a></td>"; echo "<td class="$zF">"; if(!empty($getPlayers->empire)) { echo '<img src="img/reiche/'.$getPlayers->empire.'_kl.jpg" title="Reich" alt="Reich"/>'; } echo "</td>"; echo "</tr>"; $x++; }?></table><div class="center"><?PHP $maxRange = 4; $maxStep = 15; $totalpages = ceil($numrows/$CPSeite); if(($aSeite-$maxRange)>0) $sStart = $aSeite-$maxRange; else $sStart = 1; if(($aSeite+$maxRange)<=$cSeite[0]) $sEnde = $aSeite+$maxRange; else $sEnde = $cSeite[0]; if(($aSeite)>1) echo '<span class="ranking2"><a href="index.php?s=ranking_chars&p=1">Erste</a></span> « '; for($i=$sStart;$i<=$sEnde;$i++) { $sKlasse = ($i==$aSeite) ? "ranking1" : "ranking2"; echo'<span class="'.$sKlasse.'">'; echo'<a href="index.php?s=ranking_chars&p='.$i.'">'.$i.'</a></span>'; } if(($aSeite+$maxStep)<=$cSeite[0]) echo ' » <span class="ranking2"><a href="index.php?s=ranking_chars&p='.$totalpages.'">Letzte</span></a>';?></div></div><div id="con-bot"></div> 2 zenmt2 and Valenza reacted to this Share this post Link to post Share on other sites
Valenza 855 Posted June 11, 2014 <?PHP $CPSeite = 25; $markierteZeile=0; if(isset($_GET['p'])) { if(!checkInt($_GET['p']) || !($_GET['p']>0)) $aSeite = 1; else $aSeite = $_GET['p']; } else { $aSeite = 1; } if(isset($_POST['suche']) && $_POST['suche']=='Αναζήτηση') { if(!empty($_POST['charakter'])) { $sqlCmd="SELECT id, name, level, exp, empire, guild_name, rang FROM ( SELECT id, name, level, exp, empire, guild_name, @num := @num +1 AS rang FROM ( SELECT player.id, player.name, player.level, player.exp, player_index.empire, guild.name AS guild_name, @num :=0 FROM player.player LEFT JOIN player.player_index ON player_index.id = player.account_id LEFT JOIN player.guild_member ON guild_member.pid = player.id LEFT JOIN player.guild ON guild.id = guild_member.guild_id INNER JOIN account.account ON account.id=player.account_id WHERE player.name NOT LIKE '[%]%' AND account.status!='BLOCK' ORDER BY player.level DESC , player.exp DESC ) AS t1 ) AS t2 WHERE name = '".mysql_real_escape_string($_POST['charakter'])."' LIMIT 1"; $sqlQry=mysql_query($sqlCmd,$sqlServ); if(mysql_num_rows($sqlQry)>0) { $getRang = mysql_fetch_object($sqlQry); $aSeite = ceil($getRang->rang/$CPSeite); $markierteZeile = $getRang->rang; } } } $sqlCmd = "SELECT COUNT(*) as summeChars FROM player.player LEFT JOIN player.player_index ON player_index.id=player.account_id LEFT JOIN player.guild_member ON guild_member.pid=player.id LEFT JOIN player.guild ON guild.id=guild_member.guild_id INNER JOIN account.account ON account.id=player.account_id WHERE player.name NOT LIKE '[%]%' AND account.status!='BLOCK' ORDER BY player.level DESC, player.exp DESC"; $sqlQry = mysql_query($sqlCmd,$sqlServ); $getSum = mysql_fetch_object($sqlQry); $cSeite = calcPages($getSum->summeChars,$aSeite,$CPSeite); ?><div id="con-top">Κατάταξη χαρακτήρων</div><div id="con-mid"><div class="center"><form name="form"><select name="link" SIZE="1" onChange="window.location.href = document.form.link.options[document.form.link.selectedIndex].value;"><option selected value="#">Κατάταξη χαρακτήρων</option><option value="?s=ranking_gilden">Κατάταξη Συντεχνιών</option></select></form><br/><form action="?s=ranking_chars" method="POST"> <b>Suche:</b> <input type="text" name="charakter" maxlength="20" size="20" class="txt"/> <input type="submit" name="suche" value="Αναζήτηση" maxlength="20" size="20" class="button"/></form></div><table><tr> <th class="topLine">Βαθμ</th> <th class="topLine">Όνομα</th> <th class="topLine">Επίπεδο</th> <th class="topLine">EXP</th> <th class="topLine">Συντεχνία</th> <th class="topLine">Βασίλειο</th></tr><?PHP $sqlCmd = "SELECT player.id,player.name,player.level,player.exp,player_index.empire,guild.name AS guild_name,guild.id AS guild_id FROM player.player LEFT JOIN player.player_index ON player_index.id=player.account_id LEFT JOIN player.guild_member ON guild_member.pid=player.id LEFT JOIN player.guild ON guild.id=guild_member.guild_id INNER JOIN account.account ON account.id=player.account_id WHERE player.name NOT LIKE '[%]%' AND account.status!='BLOCK' ORDER BY player.level DESC, player.exp DESC LIMIT ".$cSeite[1].",".$CPSeite; $sqlCmd2 = "SELECT player.name,player.account_id FROM player.player INNER JOIN account.account ON account.id=player.account_id WHERE player.name NOT LIKE '[%]%' AND account.status!='BLOCK'"; $sqlQry = mysql_query($sqlCmd,$sqlServ); $numrows = mysql_num_rows(mysql_query($sqlCmd2,$sqlServ)); $x=$cSeite[1]+1; while($getPlayers = mysql_fetch_object($sqlQry)) { $zF = ($x%2==0) ? "thell" : "tdunkel"; if(checkInt($markierteZeile) && $markierteZeile==$x) { $zF = "tmarkiert"; } echo "<tr>"; echo "<td class="$zF">".$x."</td>"; echo "<td class="$zF"><a href='index.php?s=char&char=".$getPlayers->name."'>".$getPlayers->name."</a></td>"; echo "<td class="$zF">".$getPlayers->level."</td>"; echo "<td class="$zF">".$getPlayers->exp."</td>"; echo "<td class="$zF"><a href='index.php?s=guild&guild=".$getPlayers->guild_name."'>".$getPlayers->guild_name."</a></td>"; echo "<td class="$zF">"; if(!empty($getPlayers->empire)) { echo '<img src="img/reiche/'.$getPlayers->empire.'_kl.jpg" title="Reich" alt="Reich"/>'; } echo "</td>"; echo "</tr>"; $x++; }?></table><div class="center"><?PHP $maxRange = 4; $maxStep = 15; $totalpages = ceil($numrows/$CPSeite); if(($aSeite-$maxRange)>0) $sStart = $aSeite-$maxRange; else $sStart = 1; if(($aSeite+$maxRange)<=$cSeite[0]) $sEnde = $aSeite+$maxRange; else $sEnde = $cSeite[0]; if(($aSeite)>1) echo '<span class="ranking2"><a href="index.php?s=ranking_chars&p=1">Erste</a></span> « '; for($i=$sStart;$i<=$sEnde;$i++) { $sKlasse = ($i==$aSeite) ? "ranking1" : "ranking2"; echo'<span class="'.$sKlasse.'">'; echo'<a href="index.php?s=ranking_chars&p='.$i.'">'.$i.'</a></span>'; } if(($aSeite+$maxStep)<=$cSeite[0]) echo ' » <span class="ranking2"><a href="index.php?s=ranking_chars&p='.$totalpages.'">Letzte</span></a>';?></div></div><div id="con-bot"></div> + 1 poderia me explicar por cima mesmo qual tipo de rank é esse? eu li o php dele , mas nao entendi todos Share this post Link to post Share on other sites