Utwórz plik o nazwie blood_castle_ranking
Kod:
<?php
#########################################################
# ? Copyrights Bulka																					  #
#########################################################
if(!defined('SkyTeamPageRUNNING'))
{
die("Include error...");
}
?>

<td valign=top>
<form action="index.php?strona=blood_castle_ranking" method="POST">
<input type="hidden" name="strona" value="blood_castle_ranking" />

<b><font color=orange>Wybierz Blood Castle:</font></b><br /><br />
Blood Castle 1 <INPUT TYPE="CHECKBOX" NAME="Tbc1" VALUE="Tak"> <BR>
Blood Castle 2 <INPUT TYPE="CHECKBOX" NAME="Tbc2" VALUE="Tak"> <BR>
Blood Castle 3 <INPUT TYPE="CHECKBOX" NAME="Tbc3" VALUE="Tak"> <BR>
Blood Castle 4 <INPUT TYPE="CHECKBOX" NAME="Tbc4" VALUE="Tak"> <BR>
Blood Castle 5 <INPUT TYPE="CHECKBOX" NAME="Tbc5" VALUE="Tak"> <BR>
Blood Castle 6 <INPUT TYPE="CHECKBOX" NAME="Tbc6" VALUE="Tak"> <BR>
Blood Castle 7 <INPUT TYPE="CHECKBOX" NAME="Tbc7" VALUE="Tak"> <BR>
<br /><br />
<input type="submit" Value="Sortuj">
</form>
</center>
<br /><br />

<center>
<?php

//Ranking BC

mssql_select_db(Ranking, $conn);

$bc1 = "SELECT TOP 50 CharacterName, Class, Point, Bridge FROM EVENT_INFO_BC WHERE Bridge = 1 Order By Point desc";
$result1 = mssql_query($bc1);
$bc2 = "SELECT TOP 50 CharacterName, Class, Point, Bridge FROM EVENT_INFO_BC WHERE Bridge = 2 Order By Point desc";
$result2 = mssql_query($bc2);
$bc3 = "SELECT TOP 50 CharacterName, Class, Point, Bridge FROM EVENT_INFO_BC WHERE Bridge = 3 Order By Point desc";
$result3 = mssql_query($bc3);
$bc4 = "SELECT TOP 50 CharacterName, Class, Point, Bridge FROM EVENT_INFO_BC WHERE Bridge = 4 Order By Point desc";
$result4 = mssql_query($bc4);
$bc5 = "SELECT TOP 50 CharacterName, Class, Point, Bridge FROM EVENT_INFO_BC WHERE Bridge = 5 Order By Point desc";
$result5 = mssql_query($bc5);
$bc6 = "SELECT TOP 50 CharacterName, Class, Point, Bridge FROM EVENT_INFO_BC WHERE Bridge = 6 Order By Point desc";
$result6 = mssql_query($bc6);
$bc7 = "SELECT TOP 50 CharacterName, Class, Point, Bridge FROM EVENT_INFO_BC WHERE Bridge = 7 Order By Point desc";
$result7 = mssql_query($bc7);

if(isset($_REQUEST['Tbc1']))
{
echo '<table width=300 border=0>';
echo '<b><font color=orange>Blood Castle 1 Ranking</font></b>';
echo '<tr>';
echo '<td align=left valign=top><b><font color=orange>#</font></b></td>';
echo '<td align=left valign=top><b><font color=orange>Name</font></b></td>';
echo '<td align=left valign=top><b><font color=orange>BC level</font></b></td>';
echo '<td align=left valign=top><b><font color=orange>Points</font></b></td>';
echo '</tr>';

for($i=0; $i < mssql_num_rows($result1); ++$i)
{
$rank1 = $i+1;
$rowbc1 = mssql_fetch_row($result1);

echo "
<tr>
<td align=left valign=top><b>$rank1</b></td>
<td align=left valign=top><b>$rowbc1[0]</b></td>
<td align=left valign=top><b>$rowbc1[3]</b></td>
<td align=left valign=top><b>$rowbc1[2]</b></td>
</tr>
";
}

echo '<br>';
echo '<br>';
echo '</table>';
}

if(isset($_REQUEST['Tbc2']))
{
echo '<table width=300 border=0>';
echo '<b><br><font color=orange>Blood Castle 2 Ranking</font></b>';
echo '<tr>';
echo '<td align=left valign=top><b><font color=orange>#</font></b></td>';
echo '<td align=left valign=top><b><font color=orange>Name</font></b></td>';
echo '<td align=left valign=top><b><font color=orange>BC level</font></b></td>';
echo '<td align=left valign=top><b><font color=orange>Points</font></b></td>';
echo '</tr>';

for($i=0; $i < mssql_num_rows($result2); ++$i)
{
$rank2 = $i+1;
$rowbc2 = mssql_fetch_row($result2);

echo "
<td align=left valign=top><b>$rank2</b></td>
<td align=left valign=top><b>$rowbc2[0]</b></td>
<td align=left valign=top><b>$rowbc2[3]</b></td>
<td align=left valign=top><b>$rowbc2[2]</b></td>
</tr>
";
}

echo '<br>';
echo '<br>';
echo '</table>';
}

if(isset($_REQUEST['Tbc3']))
{
echo '<table width=300 border=0>';
echo '<b><br><font color=orange>Blood Castle 3 Ranking</font></b>';
echo '<tr>';
echo '<td align=left valign=top><b><font color=orange>#</font></b></td>';
echo '<td align=left valign=top><b><font color=orange>Name</font></b></td>';
echo '<td align=left valign=top><b><font color=orange>BC level</font></b></td>';
echo '<td align=left valign=top><b><font color=orange>Points</font></b></td>';
echo '</tr>';

for($i=0; $i < mssql_num_rows($result3); ++$i)
{
$rank3 = $i+1;
$rowbc3 = mssql_fetch_row($result3);

echo "
<td align=left valign=top><b>$rank3</b></td>
<td align=left valign=top><b>$rowbc3[0]</b></td>
<td align=left valign=top><b>$rowbc3[3]</b></td>
<td align=left valign=top><b>$rowbc3[2]</b></td>
</tr>
";
}

echo '<br>';
echo '<br>';
echo '</table>';
}

if(isset($_REQUEST['Tbc4']))
{
echo '<table width=300 border=0>';
echo '<b><br><font color=orange>Blood Castle 4 Ranking</font></b>';
echo '<tr>';
echo '<td align=left valign=top><b><font color=orange>#</font></b></td>';
echo '<td align=left valign=top><b><font color=orange>Name</font></b></td>';
echo '<td align=left valign=top><b><font color=orange>BC level</font></b></td>';
echo '<td align=left valign=top><b><font color=orange>Points</font></b></td>';
echo '</tr>';

for($i=0; $i < mssql_num_rows($result4); ++$i)
{
$rank4 = $i+1;
$rowbc4 = mssql_fetch_row($result4);

echo "
<tr>
<td align=left valign=top><b>$rank4</b></td>
<td align=left valign=top><b>$rowbc4[0]</b></td>
<td align=left valign=top><b>$rowbc4[3]</b></td>
<td align=left valign=top><b>$rowbc4[2]</b></td>
</tr>
";
}

echo '<br>';
echo '<br>';
echo '</table>';
}

if(isset($_REQUEST['Tbc5']))
{
echo '<table width=300 border=0>';
echo '<b><br><font color=orange>Blood Castle 5 Ranking</font></b>';
echo '<tr>';
echo '<td align=left valign=top><b><font color=orange>#</font></b></td>';
echo '<td align=left valign=top><b><font color=orange>Name</font></b></td>';
echo '<td align=left valign=top><b><font color=orange>BC level</font></b></td>';
echo '<td align=left valign=top><b><font color=orange>Points</font></b></td>';
echo '</tr>';

for($i=0; $i < mssql_num_rows($result5); ++$i)
{
$rank5 = $i+1;
$rowbc5 = mssql_fetch_row($result5);

echo "
<tr>
<td align=left valign=top><b>$rank5</b></td>
<td align=left valign=top><b>$rowbc5[0]</b></td>
<td align=left valign=top><b>$rowbc5[3]</b></td>
<td align=left valign=top><b>$rowbc5[2]</b></td>
</tr>
";
}

echo '<br>';
echo '<br>';
echo '</table>';
}

if(isset($_REQUEST['Tbc6']))
{
echo '<table width=300 border=0>';
echo '<b><br><font color=orange>Blood Castle 6 Ranking</font></b>';
echo '<tr>';
echo '<td align=left valign=top><b><font color=orange>#</font></b></td>';
echo '<td align=left valign=top><b><font color=orange>Name</font></b></td>';
echo '<td align=left valign=top><b><font color=orange>BC level</font></b></td>';
echo '<td align=left valign=top><b><font color=orange>Points</font></b></td>';
echo '</tr>';

for($i=0; $i < mssql_num_rows($result6); ++$i)
{
$rank6 = $i+1;
$rowbc6 = mssql_fetch_row($result6);

echo "
<tr>
<td align=left valign=top><b>$rank6</b></td>
<td align=left valign=top><b>$rowbc6[0]</b></td>
<td align=left valign=top><b>$rowbc6[3]</b></td>
<td align=left valign=top><b>$rowbc6[2]</b></td>
</tr>
";
}

echo '<br>';
echo '<br>';
echo '</table>';
}

if(isset($_REQUEST['Tbc7']))
{
echo '<table width=300 border=0>';
echo '<b><br><font color=orange>Blood Castle 7 Ranking</font></b>';
echo '<tr>';
echo '<td align=left valign=top><b><font color=orange>#</font></b></td>';
echo '<td align=left valign=top><b><font color=orange>Name</font></b></td>';
echo '<td align=left valign=top><b><font color=orange>BC level</font></b></td>';
echo '<td align=left valign=top><b><font color=orange>Points</font></b></td>';
echo '</tr>';

for($i=0; $i < mssql_num_rows($result7); ++$i)
{
$rank7 = $i+1;
$rowbc7 = mssql_fetch_row($result7);

echo "
<tr>
<td align=left valign=top><b>$rank7</b></td>
<td align=left valign=top><b>$rowbc7[0]</b></td>
<td align=left valign=top><b>$rowbc7[3]</b></td>
<td align=left valign=top><b>$rowbc7[2]</b></td
</tr>
";
}

echo '<br>';
echo '<br>';
echo '</table>';
}
?>
Należy jeszcze zmienić procedurę w bazie danych. Baza Ranking -> Stored Procedure -> SP_POINT_ACCM_BC

Podmieniamy na to:

Kod:
--//************************************************************************
--// 3?? ??? : o???ua??311 AIoYAR A??A??AR ?¤o¸ ´cAu
--// o?? 1 : °??A??°31??AA
--// ¸¸u?AI : 2003.08. 16
--// ¸¸u?AI : ?OAI
--//
--//************************************************************************
CREATE PROCEDURE SP_POINT_ACCM_BC
@Server smallint, -- 11??
@Bridge tinyint, -- ´U¸R
@AccountID varchar(10), -- °c?¤¸?
@CharacterName varchar(10), -- ????¸??¸?
@Class tinyint , -- A?!1o 1oEL (0-Ea¸1?????, 1-1O?i¸1oA?, 16-Ea+?????, 17-o?1AIua3aAIAR, 32-???¤, 33-1?????¤???, 48-¸°?????)
@Point int, -- A??A??AR
@PCRoomGUID int -- PC1a GUID (0AI¸? u?IuE PC1a 3A´???)
As
Begin

BEGIN TRANSACTION

SET NOCOUNT ON
IF EXISTS ( SELECT CharacterName FROM EVENT_INFO_BC WITH (READUNCOMMITTED)
WHERE Server = @Server AND AccountID = @AccountID AND CharacterName = @CharacterName )
Begin
DECLARE @iiiPoint int
SELECT @iiiPoint = Point FROM EVENT_INFO_BC
WHERE Server = @Server AND AccountID = @AccountID AND CharacterName = @CharacterName
IF (@iiiPoint + @Point < 0)
BEGIN
UPDATE EVENT_INFO_BC
SET Point = 0 , Bridge = @Bridge, PlayCount = PlayCount+1
WHERE Server = @Server AND AccountID = @AccountID AND CharacterName = @CharacterName
END
ELSE
BEGIN
UPDATE EVENT_INFO_BC
SET Point = Point + @Point , Bridge = @Bridge, PlayCount = PlayCount+1
WHERE Server = @Server AND AccountID = @AccountID AND CharacterName = @CharacterName
END
End
ELSE
Begin
INSERT INTO EVENT_INFO_BC ( Server, Bridge, AccountID, CharacterName, Class, Point, PlayCount ) VALUES (
@Server,
@Bridge,
@AccountID,
@CharacterName,
@Class,
@Point,
default
)
End
IF (@PCRoomGUID <> 0)
Begin
IF EXISTS (SELECT AccountID FROM T_BC_PCROOM_PLAYCOUNT WITH (READUNCOMMITTED)
WHERE PCROOM_GUID = @PCRoomGUID AND AccountID = @AccountID)
Begin
UPDATE T_BC_PCROOM_PLAYCOUNT
SET PlayCount = PlayCount + 1, Point = Point + @Point
WHERE PCROOM_GUID = @PCRoomGUID AND AccountID = @AccountID
End
ELSE
Begin
INSERT INTO T_BC_PCROOM_PLAYCOUNT
VALUES (@PCRoomGUID, @AccountID, default, @Point)
End
End
IF(@@Error <> 0 )
ROLLBACK TRANSACTION
ELSE
COMMIT TRANSACTION
SET NOCOUNT OFF
End
GO