[script]Статистика
2 ответов206 просмотровСейчас просматривают: 1
· 07.05.2009, 05:59
La2Base 1.1.17
Перейду к сути проблемы. нашел скрипт "Статус 2 рого сервера" 2 рой серве офф, но онлайн игроков показывает от 1 рвого сервера, то есть
Пример:
Раскрывающийся текст
1 server
Статус Онлайн
on 150
2 server
Статус Онлайн
off 150
Вот сам скрипт, Кто может попрвти его чтобы он не брал онлайн из 1 рвого сервера.
Раскрывающийся текст
<?php
#Гейм сервер
#Сервер1
$gameserver1["ip"]="xD";
$gameserver1["port"]="7777";
$gameserver1["location"]="xD";
$gameserver1["base"]="xD";
$gameserver1["user"]="root";
$gameserver1["pass"]="xD";
#Логин
$loginserver["ip"]="xD";
$loginserver["port"]="2106";
#Получаем онлайн первого сервера
$dbc=@mysql_connect($gameserver1["location"],$gameserver1["user"],$gameserver1["pass"]);
@mysql_select_db($gameserver1["base"],$dbc);
$count2=mysql_fetch_array(mysql_query("SELECT COUNT(*) AS count FROM characters WHERE online='1'"));
$count2=$count2["count"];
mysql_close();
$fp=@fsockopen($gameserver1["ip"], $gameserver1["port"], $errno, $errstr, 1);
if ($fp>=1) { $check_game_server1='<img src="/blocks/on.gif">'; } else { $check_game_server1='<img src="/blocks/off.gif">'; }
$fp=@fsockopen($gameserver1["ip"], $gameserver1["port"], $errno, $errstr, 1);
if ($fp>=1) { $check_game_server1='<img src="/blocks/on.gif">'; } else { $check_game_server1='<img src="/blocks/off.gif">'; }
$fp=@fsockopen($loginserver["ip"], $loginserver["port"], $errno, $errstr, 1);
if ($fp>=1) { $check_login_server='<img src="/blocks/on.gif">';}else{ $check_login_server='<img src="/blocks/off.gif">'; }
?>
Скрипт 1 рвого сервера "РАБОЧИЙ"
Раскрывающийся текст
<?
# Stats scripts
$fp = @fsockopen($hserver, $portlogin, $errno, $errstr, 1);
if($fp >= 1){
$loginonline = '<img src="/blocks/on.gif">';}
else{ $loginonline = '<img src="/blocks/off.gif">'; }
$fp = @fsockopen($hserver, $portgame, $errno, $errstr, 1);
if($fp >= 1){
$gameonline = '<img src="/blocks/on.gif">';}
else{ $gameonline = '<img src="/blocks/off.gif">'; }
$sql = mysql_query("SELECT count(*) FROM characters WHERE online = 1");
if( mysql_result($sql, 0, 0) <= 80){
$playsonline = "<font color=green>" . mysql_result($sql, 0, 0) . "</font>";}
elseif( mysql_result($sql, 0, 0) >= 80 AND mysql_result($sql, 0, 0) <= 150){
$playsonline = "<font color=orange>" . mysql_result($sql, 0, 0) . "</font>";}
elseif( mysql_result($sql, 0, 0) > 150){
$playsonline = "<font color=red>" . mysql_result($sql, 0, 0) . "</font>";}
$sql = mysql_query("SELECT count(*) FROM accounts");
$sql = mysql_query("SELECT count(*) FROM characters WHERE online ='1' AND accesslevel>50");
if( mysql_result($sql, 0, 0) <= 80){
$gmonline = "<font color=red>" . mysql_result($sql, 0, 0) . "</font>";}
$sql = mysql_query("SELECT count(*) FROM accounts");
$accountsnum = mysql_result($sql, 0, 0);
$sql = mysql_query("SELECT count(*) FROM characters");
$charnum = mysql_result($sql, 0, 0);
$sql = mysql_query("SELECT count(*) FROM clan_data");
$clannum = mysql_result($sql, 0, 0);
$sql = mysql_query("SELECT count(*) FROM characters Where accesslevel > 99");
$gmnum = mysql_result($sql, 0, 0);
?>
Затыкаю спасибками ^^
Извеняюсь за ошибки. не спал сутки. сижу как зомби
0
· 07.05.2009, 07:18
ну ёпперный театр...
Много раз обсуждалась статистика на 2 сервера!
Вот, наипростейший:
Раскрывающийся текст
<?php
////Статус сервера//////
error_reporting(0);
$IP = array(
"Гейм" => "12.12.12.12:1212",
"Логин" => "12.12.12.12:2106",
); while(list($ServerName,$Host)=each($IP)) {
list($IPAddress,$Port)=explode(":",$Host);
echo($ServerName);
if($fp=fsockopen($IPAddress,$Port,$ERROR_NO,$ERROR_STR,(float)0.5)) {
echo("<font color='#00CC00'>Online</font>");
fclose($fp);
}
else {
echo ("<font color='red'>OffLine</font>");
}
}
////Колличество он-лайн//////
$dbhost="12.12.12.12"; ////Адрес MYSQL сервера
$dbname="12"; //// Имя базы
$dbuser="1212"; //// Логин для базы
$dbpass="12121212"; //// Пароль для базы
$msc=MYSQL_CONNECT($dbhost,$dbuser,$dbpass) or die ("");
MYSQL_SELECT_DB($dbname) or die ("");
$get_config_data="SELECT online FROM characters WHERE online > 0";
$config_data=MYSQL_QUERY($get_config_data);
$config['num_online']=mysql_num_rows($config_data);
echo "";
echo ("<font color='#00CC00'>".$config['num_online']."</font>");
MYSQL_CLOSE($msc);
?>
Из этого скрипта я сделал 3 статистики =)
Гейм сервер (отдельно)
Логин сервер (отдельно)
кто в игре (отдельно)
гейм
<?php
////Статус сервера//////
error_reporting(0);
$IP = array(
"гейм" => "12.12.12.12:7777", // IP адрес и порт гейм сервера
); while(list($ServerName,$Host)=each($IP)) {
list($IPAddress,$Port)=explode(":",$Host);
echo($ServerName);
if($fp=fsockopen($IPAddress,$Port,$ERROR_NO,$ERROR_STR,(float)0.5)) {
echo("<font color='#00CC00'>Online</font>");
fclose($fp);
}
else {
echo ("<font color='red'>OffLine</font>");
}
} ?>
////Статус сервера//////
error_reporting(0);
$IP = array(
"гейм" => "12.12.12.12:7777", // IP адрес и порт гейм сервера
); while(list($ServerName,$Host)=each($IP)) {
list($IPAddress,$Port)=explode(":",$Host);
echo($ServerName);
if($fp=fsockopen($IPAddress,$Port,$ERROR_NO,$ERROR_STR,(float)0.5)) {
echo("<font color='#00CC00'>Online</font>");
fclose($fp);
}
else {
echo ("<font color='red'>OffLine</font>");
}
} ?>
логин
<?php
////Статус сервера//////
error_reporting(0);
$IP = array(
"логин" => "12.12.12.12:2106", // IP адрес и порт логин сервера
); while(list($ServerName,$Host)=each($IP)) {
list($IPAddress,$Port)=explode(":",$Host);
echo($ServerName);
if($fp=fsockopen($IPAddress,$Port,$ERROR_NO,$ERROR_STR,(float)0.5)) {
echo("<font color='#00CC00'>Online</font>");
fclose($fp);
}
else {
echo ("<font color='red'>OffLine</font>");
}
} ?>
кто в игре
<?php
////Колличество он-лайн//////
$dbhost="12.12.12.12"; ////Адрес MYSQL сервера
$dbname="12"; //// Имя базы
$dbuser="1212"; //// Логин для базы
$dbpass="12121212"; //// Пароль для базы
$msc=MYSQL_CONNECT($dbhost,$dbuser,$dbpass) or die ("");
MYSQL_SELECT_DB($dbname) or die ("");
$get_config_data="SELECT online FROM characters WHERE online > 0";
$config_data=MYSQL_QUERY($get_config_data);
$config['num_online']=mysql_num_rows($config_data);
echo "";
echo ("<font color='#00CC00'>".$config['num_online']."</font>");
MYSQL_CLOSE($msc);
?>
*Это всё в разных php файлах!
И потом прописываешь пути к статистикам:
Цитата
<?php include('game_x1000.php') ;?>
<?php include('login_x1000.php') ;?>
<?php include('online_x1000.php') ;?>
<?php include('login_x1000.php') ;?>
<?php include('online_x1000.php') ;?>
и т.д.
Главная ошибка одится в полуметре от монитора...
0
Тема закрыта для ответов


