PHP Code:
<?php
echo '<h1>Top guilds</h1>';
$mssql_link = mssql_connect( 'xxxxxxx\SQLEXPRESS', 'sa', 'xxxxxx' );
if ( !$mssql_link )
{
showMessage( 'info', 'Top Guild list is temporarly offline' );
}
else
{
$selectGuilds = mssql_query( "EXEC World00_Character..gilden_umlautefiltern" );
$i = 1;
echo "<table width=\"100%\">\n";
echo "<tr><td>#</td><td>Name</td><td>Won</td><td>Lost</td><td>Average Wins</td></tr>\n";
while ( $guild = mssql_fetch_array( $selectGuilds ) )
{
$guild["sName"] = str_replace("ä", "ä", str_replace("Ä", "Ä", str_replace("ö", "ö", str_replace("Ö", "Ö", str_replace("ü", "ü", str_replace("Ü", "Ü", str_replace("ß", "ß", $guild["sName"])))))));
if($guild['nWarWinCount'] > 0)$average = round($guild['nWarWinCount'] / ($guild['nWarWinCount'] + $guild['nWarLoseCount']), 3)*100;
else $average = 0;
echo '<tr><td width="20px">'.$i.'</td><td>'.$guild['sName'].'</td><td>'.$guild['nWarWinCount'].'</td><td>'.$guild['nWarLoseCount'].'</td><td>'. $average ."%</td></tr>\n";
$i++;
}
echo '</table>';
}
}
?>
Sql:
Code:
use World00_Character
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE dbo.[gilden_umlautefiltern]
AS
BEGIN
SET NOCOUNT ON;
SELECT TOP 100 sName, nWarWinCount, nWarLoseCount
FROM World00_Character..tGuild
ORDER BY nWarWinCount DESC
END
GO
Top 100 Ranking: ( mache ich public , obwohl e smir net passt das es hexa bekommt , aber naja)
PHP Code:
<?php
// CONFIG
$odbc_host = 'Sequess-PC\SQLEXPRESS';
$odbc_user = 'sa';
$odbc_pass = 'Angel12';
// CONFIG END
echo '<h1>Top 100 Spieler</h1>';
$odbc_link = odbc_connect ( "Driver={SQL Server};Server=".$odbc_host.";Database=World00_Character;" , $odbc_user , $odbc_pass );
$sql[1] = 'SELECT TOP 100 nCharNo, sID, nExp , nLevel FROM tCharacter WHERE nAdminLevel = 0 AND bDeleted = 0 ORDER BY nExp DESC';
$rs[1] = odbc_exec ( $odbc_link , $sql[1] );
if ( !$rs[1] )
{
exit ( 'Error in SQL' );
}
$i = 1;
echo '<table width="100%">';
echo ' <tr>';
echo ' <td>';
echo ' #';
echo ' </td>';
echo ' <td>';
echo ' Name';
echo ' </td>';
echo ' <td>';
echo ' Exp';
echo ' </td>';
echo ' <td>';
echo ' Level';
echo ' </td>';
echo ' <td>';
echo ' Klasse';
echo ' </td>';
echo ' <td>';
echo ' Gilde';
echo ' </td>';
echo ' </tr>';
while ( odbc_fetch_row ( $rs[1] ) )
{
$sID = odbc_result ( $rs[1] , 'sID' );
$nExp = odbc_result ( $rs[1] , 'nExp' );
$nLevel = odbc_result ( $rs[1] , 'nLevel' );
$nName = 'Keine Gilde';
$sID = str_replace ( 'ä' , 'ä' , str_replace ( 'Ä' , 'Ä' , str_replace ( 'ö' , 'ö' , str_replace ( 'Ö' , 'Ö' , str_replace ( 'ü' , 'ü' , str_replace ( 'Ü' , 'Ü' , str_replace ( 'ß' , 'ß' , $sID ) ) ) ) ) ) );
$nCharNo = odbc_result ( $rs[1] , 'nCharNo' );
$sql[2] = 'SELECT TOP 1 nNo FROM tGuildMember WHERE nCharNo = '.$nCharNo;
$rs[2] = odbc_exec ( $odbc_link , $sql[2] );
if ( !$rs[2] )
{
exit ( 'Error in SQL' );
}
while ( odbc_fetch_row ( $rs[2] ) )
{
$nNo = odbc_result ( $rs[2] , 'nNo' );
$sql[3] = 'SELECT TOP 1 sName FROM tGuild WHERE nNo = '.$nNo;
$rs[3] = odbc_exec ( $odbc_link , $sql[3] );
while ( odbc_fetch_row ( $rs[3] ) )
{
$nName = odbc_result ( $rs[3] , 'sName' );
}
}
$sql[4] = 'SELECT TOP 1 nClass FROM tCharacterShape WHERE nCharNo = '.$nCharNo;
$rs[4] = odbc_exec ( $odbc_link , $sql[4] );
if ( !$rs[4] )
{
exit ( 'Error in SQL' );
}
while ( odbc_fetch_row ( $rs[4] ) )
{
$nClass = odbc_result ( $rs[4] , 'nClass' );
}
switch ($nClass)
{
//Krieger
case 1:
$nClass = 'Krieger';
break;
case 2:
$nClass = 'Highlander';
break;
case 3:
$nClass = 'Feldherr';
break;
case 4:
$nClass = 'Gladiator';
break;
case 5:
$nClass = 'Ordensritter';
break;
//Priester
case 8:
$nClass = 'Priester';
break;
case 9:
$nClass = 'Kleriker';
break;
case 10:
$nClass = 'Hohepriester';
break;
case 11:
$nClass = 'Heilige Ritter';
break;
case 12:
$nClass = 'Wächter';
break;
//Jäger
case 15:
$nClass = 'Jäger';
break;
case 16:
$nClass = 'Fallensteller';
break;
case 17:
$nClass = 'Großwildjäger';
break;
case 18:
$nClass = 'Scharfschütze';
break;
case 19:
$nClass = 'Waldläufer';
break;
//Magier
case 22:
$nClass = 'Magier';
break;
case 23:
$nClass = 'Erzmagier';
break;
case 24:
$nClass = 'Beschwörer';
break;
case 25:
$nClass = 'Hexenmeister';
break;
case 26:
$nClass = 'Zauberer';
break;
//Standart
default:
$nClass = 'Unbekannte Klasse';
break;
}
echo ' <tr>';
echo ' <td>';
echo ' '.$i;
echo ' </td>';
echo ' <td>';
echo ' '.$sID;
echo ' </td>';
echo ' <td>';
echo ' '.$nExp;
echo ' </td>';
echo ' <td>';
echo ' '.$nLevel;
echo ' </td>';
echo ' <td>';
echo ' '.$nClass;
echo ' </td>';
echo ' <td>';
echo ' '.$nName;
echo ' </td>';
echo ' </tr>';
$i++;
}
odbc_close ( $odbc_link );
echo '</table>';
?>
müsste gehen , wenn net hatte ich denk fehler ^^