Значит смотри. Если ты у тебя БД логина и сервера находятся на одном хосте, значит юзаеш этот скрипт:
PHP код:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Информация о сервере | ServerAion.ru</title>
</head>
<body style="font:11pt Verdana; color:#333; background: #fafafa;">
<?php
//настройки MySQL, Логин и Игрового сервера
$mysql_host="127.0.0.1"; //введи хост сервера (его IP, где расположен сервер)
$mysql_port="3306"; //порт mysql
$mysql_db="l2jdb"; //тут БД сервера
$mysql_login="root"; //логин к БД
$mysql_password="root"; //пароль к базе введи!
$serverlogin="127.0.0.1"; //сюда ИП где расположен ЛС
$servergame="127.0.0.1"; //сюда ИП где расположен ГС
$portgame="7777"; //сюда порт ГС
$portlogin="2106"; //сюда порт ЛС
$linkGS = mysql_connect($mysql_host, $mysql_login, $mysql_password) or die("Could not connect: " .mysql_error());
@mysql_select_db($mysql_db, $linkGS);
?>
<?
//статус серверов
$fp = @fsockopen($serverlogin, $portlogin, $errno, $errstr, 1);
if($fp >= 1)
{
$loginonline = '<font color=green size=3 face=verdana>On</font>';
}
else
{
$loginonline = '<font color=red size=3 face=verdana>Off</font>';
}
$fpS = @fsockopen($servergame, $portgame, $errno, $errstr, 1);
if($fpS >= 1)
{
$gameonline = '<font color=green size=3 face=verdana>On</font>';
}
else
{
$gameonline = '<font color=red size=3 face=verdana>Off</font>';
}
//значение количества онлайн
$sql = mysql_query("SELECT count(*) FROM players WHERE online = 1") or die("Invalid query: " .mysql_error());
//Здесь можно задавать цвет шрифта значения онлайн в зависимости от количества игроков
if( mysql_result($sql, 0, 0) <= 200)
{
$playersonline = "<font color=green>" .mysql_result($sql, 0, 0). "</font>";
}
elseif( mysql_result($sql, 0, 0) >= 200 AND mysql_result($sql, 0, 0) <= 500)
{
$playersonline = "<font color=orange>" .mysql_result($sql, 0, 0). "</font>";
}
elseif( mysql_result($sql, 0, 0) > 500)
{
$playersonline = "<font color=red>" .mysql_result($sql, 0, 0). "</font>";
}
//Статус-Имя ГМов онлайн
$sql = mysql_query ("SELECT players.name FROM players INNER JOIN account_data ON players.account_id = account_data.id WHERE account_data.access_level >= '1' AND players.online = '1'") or die("Invalid query: " .mysql_error());
$gmonline = "<font color=red>" .mysql_result($sql,''). "</font>";
//Статистика аккаунтов и персонажей
$sql = mysql_query("SELECT count(*) FROM players") or die("Invalid query: " .mysql_error());
$playersnum = mysql_result($sql, 0, 0);
$sql = mysql_query("SELECT count(*) FROM legions") or die("Invalid query: " .mysql_error());
$legionnum = mysql_result($sql, 0, 0);
$sql = mysql_query("SELECT count(*) FROM account_data Where access_level > 0") or die("Invalid query: " .mysql_error());
$gmnum = mysql_result($sql, 0, 0);
mysql_select_db('Название_БД'); // ДОБАВЛЕННО!!! сюда БД от ЛС
$sql = mysql_query("SELECT count(*) FROM account_data") or die("Invalid query: " .mysql_error());
$accountsnum = mysql_result($sql, 0, 0);
?>
<table style="border:solid 1px #999;">
<tr>
<td style="padding:4px; background:#eeeeee;">Логин сервер:</td><td style="padding:4px; background:#eeeeee; text-align:center;"><?php echo $loginonline; ?></td>
</tr>
<tr>
<td style="padding:4px; background:#eeeeee;">Гейм сервер:</td><td style="padding:4px; background:#eeeeee; text-align:center;"><?php echo $gameonline; ?></td>
</tr>
<tr>
<td style="padding:4px; background:#eeeeee;">Онлайн:</td><td style="padding:4px; background:#eeeeee; text-align:center;"><?php echo $playersonline; ?></td>
</tr>
<tr>
<td style="padding:4px; background:#eeeeee;">из них ГМов:</td><td style="padding:4px; background:#eeeeee;"><?php echo $gmonline; ?></td>
</tr>
<tr>
<td style="padding:4px; background:#eeeeee;">Аккаунтов:</td><td style="padding:4px; background:#eeeeee; text-align:center;"><?php echo $accountsnum; ?></td>
</tr>
<tr>
<td style="padding:4px; background:#eeeeee;">Персонажей:</td><td style="padding:4px; background:#eeeeee; text-align:center;"><?php echo $playersnum; ?></td>
</tr>
<tr>
<td style="padding:4px; background:#eeeeee;">из них ГМов:</td><td style="padding:4px; background:#eeeeee; text-align:center;"><?php echo $gmnum; ?></td>
</tr>
<tr>
<td style="padding:4px; background:#eeeeee;">Легионов:</td><td style="padding:4px; background:#eeeeee; text-align:center;"><?php echo $legionnum; ?></td>
</tr>
</table>
<?
mysql_close($link);
?>
</body>
</html>
Обрати внимание сюда:
76строка: mysql_select_db('Название_БД'); // ДОБАВЛЕННО!!! сюда БД от ЛС
Если же, у тебя отдельные хосты к Баз данных, т. е. Логин на IP 127.0.0.1, а сервер
на 127.152.125.145, то используеш этот скрипт:
PHP код:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Информация о сервере | ServerAion.ru</title>
</head>
<body style="font:11pt Verdana; color:#333; background: #fafafa;">
<?php
//настройки MySQL, Логин и Игрового сервера
$mysql_host="127.0.0.1"; //введи хост сервера (его IP, где расположен сервер)
$mysql_port="3306"; //порт mysql
$mysql_db="l2jdb"; //тут БД сервера
$mysql_login="root"; //логин к БД
$mysql_password="root"; //пароль к базе введи!
$serverlogin="127.0.0.1"; //сюда ИП где расположен ЛС
$servergame="127.0.0.1"; //сюда ИП где расположен ГС
$portgame="7777"; //сюда порт ГС
$portlogin="2106"; //сюда порт ЛС
$linkGS = mysql_connect($mysql_host, $mysql_login, $mysql_password) or die("Could not connect: " .mysql_error());
@mysql_select_db($mysql_db, $linkGS);
?>
<?
//статус серверов
$fp = @fsockopen($serverlogin, $portlogin, $errno, $errstr, 1);
if($fp >= 1)
{
$loginonline = '<font color=green size=3 face=verdana>On</font>';
}
else
{
$loginonline = '<font color=red size=3 face=verdana>Off</font>';
}
$fpS = @fsockopen($servergame, $portgame, $errno, $errstr, 1);
if($fpS >= 1)
{
$gameonline = '<font color=green size=3 face=verdana>On</font>';
}
else
{
$gameonline = '<font color=red size=3 face=verdana>Off</font>';
}
//значение количества онлайн
$sql = mysql_query("SELECT count(*) FROM players WHERE online = 1") or die("Invalid query: " .mysql_error());
//Здесь можно задавать цвет шрифта значения онлайн в зависимости от количества игроков
if( mysql_result($sql, 0, 0) <= 200)
{
$playersonline = "<font color=green>" .mysql_result($sql, 0, 0). "</font>";
}
elseif( mysql_result($sql, 0, 0) >= 200 AND mysql_result($sql, 0, 0) <= 500)
{
$playersonline = "<font color=orange>" .mysql_result($sql, 0, 0). "</font>";
}
elseif( mysql_result($sql, 0, 0) > 500)
{
$playersonline = "<font color=red>" .mysql_result($sql, 0, 0). "</font>";
}
//Статус-Имя ГМов онлайн
$sql = mysql_query ("SELECT players.name FROM players INNER JOIN account_data ON players.account_id = account_data.id WHERE account_data.access_level >= '1' AND players.online = '1'") or die("Invalid query: " .mysql_error());
$gmonline = "<font color=red>" .mysql_result($sql,''). "</font>";
//Статистика аккаунтов и персонажей
$sql = mysql_query("SELECT count(*) FROM players") or die("Invalid query: " .mysql_error());
$playersnum = mysql_result($sql, 0, 0);
$sql = mysql_query("SELECT count(*) FROM legions") or die("Invalid query: " .mysql_error());
$legionnum = mysql_result($sql, 0, 0);
$sql = mysql_query("SELECT count(*) FROM account_data Where access_level > 0") or die("Invalid query: " .mysql_error());
$gmnum = mysql_result($sql, 0, 0);
$mysql_hostL="127.0.0.1"; // ДОБАВЛЕННО!!! введи хост лоигна (его IP, где расположен сервер)
$mysql_loginL="root"; // ДОБАВЛЕННО!!! логин к БД
$mysql_passwordL="root"; // ДОБАВЛЕННО!!! пароль к базе логина
$linkLS = mysql_connect($mysql_hostL, $mysql_loginL, $mysql_passwordL) or die("Could not connect: " .mysql_error());
mysql_select_db('Название_БД', $linkLS); // ДОБАВЛЕННО!!! сюда БД от ЛС
$sql = mysql_query("SELECT count(*) FROM account_data") or die("Invalid query: " .mysql_error());
$accountsnum = mysql_result($sql, 0, 0);
?>
<table style="border:solid 1px #999;">
<tr>
<td style="padding:4px; background:#eeeeee;">Логин сервер:</td><td style="padding:4px; background:#eeeeee; text-align:center;"><?php echo $loginonline; ?></td>
</tr>
<tr>
<td style="padding:4px; background:#eeeeee;">Гейм сервер:</td><td style="padding:4px; background:#eeeeee; text-align:center;"><?php echo $gameonline; ?></td>
</tr>
<tr>
<td style="padding:4px; background:#eeeeee;">Онлайн:</td><td style="padding:4px; background:#eeeeee; text-align:center;"><?php echo $playersonline; ?></td>
</tr>
<tr>
<td style="padding:4px; background:#eeeeee;">из них ГМов:</td><td style="padding:4px; background:#eeeeee;"><?php echo $gmonline; ?></td>
</tr>
<tr>
<td style="padding:4px; background:#eeeeee;">Аккаунтов:</td><td style="padding:4px; background:#eeeeee; text-align:center;"><?php echo $accountsnum; ?></td>
</tr>
<tr>
<td style="padding:4px; background:#eeeeee;">Персонажей:</td><td style="padding:4px; background:#eeeeee; text-align:center;"><?php echo $playersnum; ?></td>
</tr>
<tr>
<td style="padding:4px; background:#eeeeee;">из них ГМов:</td><td style="padding:4px; background:#eeeeee; text-align:center;"><?php echo $gmnum; ?></td>
</tr>
<tr>
<td style="padding:4px; background:#eeeeee;">Легионов:</td><td style="padding:4px; background:#eeeeee; text-align:center;"><?php echo $legionnum; ?></td>
</tr>
</table>
<?
mysql_close($link);
?>
</body>
</html>
Обрати внимание сюда:
75 строка: $mysql_hostL="127.0.0.1"; // ДОБАВЛЕННО!!! введи хост лоигна (его IP, 76 строка: где расположен сервер)
77 строка: $mysql_loginL="root"; // ДОБАВЛЕННО!!! логин к БД
78 строка: $mysql_passwordL="root"; // ДОБАВЛЕННО!!! пароль к базе логина
79 строка: $linkLS = mysql_connect($mysql_hostL, $mysql_loginL, $mysql_passwordL) or die("Could not connect: " .mysql_error());
80 строка: mysql_select_db('Название_БД', $linkLS); // ДОБАВЛЕННО!!! сюда БД от ЛС
P.S. это я сделал только для кол-ва аккаунтов, так как если я не ошибаюсь кроме как запросить кол-во акков из ЛС, нет ничего. Ну если что-то упустил, отпиши. ЧТо касается статуса ЛС (офф/он) для этого вбей вот сюда данные (ты не ввел):
PHP код:
$serverlogin="127.0.0.1"; //сюда ИП где расположен ЛС
$servergame="127.0.0.1"; //сюда ИП где расположен ГС
$portgame="7777"; //сюда порт ГС
$portlogin="2106"; //сюда порт ЛС