Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

3 страниц V   1 2 »

Мониторинг Серверов

, помощь в настройке и установки мониторинга
Статус пользователя Lavrik
сообщение 24.9.2007, 23:37
Сообщение #1


Стаж: 19 лет

Сообщений: 341
Благодарностей: 230
Полезность: 924

monitoring.php
Код
<?php
$timeout = 1; // The connection timeout, in seconds
$maps = "http://c-s.net.ua/maps";

$params = str_replace(".php","",$_SERVER['SCRIPT_NAME']);
$params = getenv('REQUEST_URI');
$params = str_replace(".php","",$params);
$params = str_replace(str_replace(".php","",$_SERVER['SCRIPT_NAME']),"",$params);
$params = substr($params, 1);
list($ip, $port) = explode(":", $params);

if( $server = fsockopen( "udp://".$ip, $port, $errno, $errstr ) )
{
    $write = "\xFF\xFF\xFF\xFFTSource Engine Query\x00";
    socket_set_timeout($server,$timeout);
    fwrite($server, $write);
    $server_response = fread($server,4096);
    fclose($server);
    $server_status = ($server_response ? 'ON' : 'OFF');
    if ($server_status == "ON"){
        $server_info['server_type'] = $server_response[4];
        $server_response = substr($server_response, 5);
        if ($server_info['server_type'] == "m") {
            $server_info['address'] = cs_get_value_string($server_response);
            $server_info['hostname'] = htmlentities(cs_get_value_string($server_response));
            $server_info['map'] = cs_get_value_string($server_response);
            $server_info['gamedir'] = cs_get_value_string($server_response);
            $server_info['description'] = cs_get_value_string($server_response);
            $server_info['players'] = cs_get_value_byte($server_response);
            $server_info['max'] = cs_get_value_byte($server_response);
            $server_info['protocol'] = cs_get_value_byte($server_response);
            $server_info['lan'] = cs_get_value_byte($server_response);
            $server_info['os'] = $server_response[0];
            $server_response = substr($server_response, 1);
            $server_info['password'] = cs_get_value_byte($server_response);
            $server_info['is_mod']     = cs_get_value_byte($server_response);
            $server_info['url_info'] = cs_get_value_string($server_response);
            $server_info['url_down'] = cs_get_value_string($server_response);
            $server_info['unused'] = cs_get_value_string($server_response);
            $server_info['mod_version'] = cs_get_value_lint($server_response);
            $server_info['mod_size'] = cs_get_value_lint($server_response);
            $server_info['sv_only'] = cs_get_value_byte($server_response);
            $server_info['cl'] = cs_get_value_byte($server_response);
            $server_info['secure'] = cs_get_value_byte($server_response);
            $server_info['bots'] = cs_get_value_byte($server_response);
            $typeimg = ".jpg";
            $type = "cs";
        }
        elseif ($server_info['server_type'] == "I") {
            $server_info['address'] = $ip.":".$port;
            $server_info['protocol'] = cs_get_value_byte($server_response);
            $server_info['hostname'] = htmlentities(cs_get_value_string($server_response));
            $server_info['map'] = cs_get_value_string($server_response);
            $server_info['gamedir'] = cs_get_value_string($server_response);
            $server_info['description'] = cs_get_value_string($server_response);
            $server_info['app_id'] = cs_get_value_sint($server_response);
            $server_info['players'] = cs_get_value_byte($server_response);
            $server_info['max'] = cs_get_value_byte($server_response);
            $server_info['bots'] = cs_get_value_byte($server_response);
            $server_info['lan'] = cs_get_value_byte($server_response);
            $server_info['os'] = cs_get_value_string($server_response);
            $server_info['password'] = cs_get_value_byte($server_response);
            $server_info['secure'] = cs_get_value_byte($server_response);
            $server_info['version'] = cs_get_value_string($server_response);
            $typeimg = ".png";
            $type = "css";
        }
    }
}
else $server_status = "OFF";

function cs_get_value_string(&$data) {
    $temp = '';
    $i = 0;
    while (ord($data[$i]) != 0){
        $temp .= $data[$i];
        $i++;
    }
    $data = substr($data, $i+1);
    return $temp;
}

function cs_get_value_byte(&$data) {
    $temp = $data[0];
    $data = substr($data, 1);
    return ord($temp);
}

function cs_get_value_lint(&$data) {
    $temp = substr($data, 0, 4);
    $data = substr($data, 4);
    $array = @unpack('Lint', $temp);
    return $array['int'];
}

function cs_get_value_sint(&$data) {
    $tmp = substr($data, 0, 2);
    $data = substr($data, 2);
    $array = @unpack('Sshort', $tmp);
    return $array['short'];
}

// Online Server
$online_s='
<center>
<table cellpadding="0" cellspacing="0">
    <tr>
        <td background="'.$maps.'/'.$type.'/'.$server_info['map'].$typeimg.'">
            <img border="0" src="'.$maps.'/map.gif" width="160" height="120">
        </td>
    </tr>
</table>
<b>'.$ip.':'.$port.'</b><br />
Игроки: '.$server_info['players'].'/'.$server_info['max'].'<br />
Карта: '.$server_info['map'].'.bsp<br/>
Статус сервера: <font color="green"><b>ON</b></font> <br />
</center>';

// Offline server
$offline_s='<center>
<table cellpadding="0" cellspacing="0">
    <tr>
        <td background="'.$maps.'/maps/noimage.jpg">
            <img border="0" src="'.$maps.'/map.gif" width="160" height="120">
        </td>
    </tr>
</table>
<b>'.$ip.':'.$port.'</b><br />
Карта: unknown.bsp<br/>
Игроки: 0/0<br />
Статус сервера: <font color="red"><b>OFF</b></font><br />
</center>';

if ($server_status == "ON") echo $online_s;
elseif ($server_status == "OFF") echo $offline_s;
else echo "Ошибка :(";
?>


Работает как CS16 так и CSS

Вписать в .htaccess
Код
Options +MultiViews -Indexes


Инклудить на сайт
Код
<?php include "http://siteurl.com/monitoring/ip:port" ?>


-------------
Скрипт для вывода именов игроков:
Код
<?php
$timeout = 2; // The connection timeout, in seconds

# c-s.net.ua labs
list($ip, $port) = explode(":", "localhost:1234");

//--------------------------/----------------------------//
if(@$fp = @fsockopen("udp://$ip", $port, $errno, $errstr))
{
    socket_set_timeout($fp,$timeout);
    $challenge_code = "\xFF\xFF\xFF\xFF\x57";
    fwrite($fp, $challenge_code);
    $buffer = fread($fp, 4096);
    $server_status = ($buffer ? 'ON' : 'OFF');
    $challenge_code = substr($buffer, 5, 4);
    $challenge = "\xFF\xFF\xFF\xFFU".$challenge_code;
    fwrite($fp, $challenge);
    $buffer = fread($fp, 4096);

    fclose($fp);
}
//--------------------------/----------------------------//
if ($server_status == "ON"){

    $player_number = 0;
    $player[0]['name'] = "<b>Players:</b>";
    $player[0]['score'] = "<b>Frags:</b>";
    $position = 6;

    do
    {
        $player_number++;
        $player[$player_number]['id'] = ord($buffer[$position]);
        $position ++;

        while($buffer[$position] != "\x00" && $position < 4000)
        {
            $player[$player_number]['name'] .= $buffer[$position];
            $position ++;
        }
        $player[$player_number]['score'] = (ord($buffer[$position + 1]))
        + (ord($buffer[$position + 2]) * 256)
        + (ord($buffer[$position + 3]) * 65536)
        + (ord($buffer[$position + 4]) * 16777216);
        if ($player[$player_number]['score'] > 2147483648) { $player[$player_number]['score'] -= 4294967296; }
        $position += 9;
    }
    while ($position < strlen($buffer));

    echo "<table>\r\n";
    for($i=0; isset($player[$i]['name']); $i++)
    {
        echo "<tr><td align=\"center\" style=\"border:1px solid #2c2c2c;margin:5px;padding-left:5px;padding-right:5px;padding-top:5px;padding-bottom:5px;font-family:tahoma;font-size:11px;color:#6E6E6E;line-height:12px;\">".$player[$i]['name']."</td><td align=\"center\" style=\"border:1px solid #2c2c2c;margin:5px;padding-left:5px;padding-right:5px;padding-top:5px;padding-bottom:5px;font-family:tahoma;font-size:11px;color:#6E6E6E;line-height:12px;\">".$player[$i]['score']."</td></tr>\r\n";
        $i++;
        if(isset($player[$i]['name']))echo "<tr><td align=\"center\" style=\"border:1px solid #2c2c2c;margin:5px;padding-left:5px;padding-right:5px;padding-top:5px;padding-bottom:5px;font-family:tahoma;font-size:11px; background:#EEE; color:#6E6E6E;line-height:12px;\">".$player[$i]['name']."</td><td align=\"center\" style=\"border:1px solid #2c2c2c;margin:5px;padding-left:5px;padding-right:5px;padding-top:5px;padding-bottom:5px;font-family:tahoma;font-size:11px;background:#EEE;color:#6E6E6E;line-height:12px;\">".$player[$i]['score']."</td></tr>\r\n";
    }
    echo "</table>\r\n";
}
?>


Весь суппорт по дополнениям и настройки мониторинга в этой теме

Исходники Статусбара
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   Цитировать сообщение
Статус пользователя dotsenko
сообщение 28.9.2007, 10:47
Сообщение #2
Стаж: 19 лет

Сообщений: 269
Благодарностей: 27
Полезность: 98

ооо вот это да круто спасибо как будут деньги поддержу проект =)

Хотел узнать можно ли сделать на картинке png мониторинг?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя dotsenko
сообщение 28.9.2007, 11:04
Сообщение #3
Стаж: 19 лет

Сообщений: 269
Благодарностей: 27
Полезность: 98

вот как тут http://www.xtcs.eu/serv/.gif

Отредактировал: dotsenko, - 28.9.2007, 11:04
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Lavrik
сообщение 28.9.2007, 18:23
Сообщение #4


Стаж: 19 лет

Сообщений: 341
Благодарностей: 230
Полезность: 924

Simple:
Код
header("Content-type: image/jpeg");
$im = imagecreatefromjpeg($map.".jpg");
imagestring($im, (FONTSIZE), (X), (Y), $ip.":".$port, imagecolorallocate ($im, (R), (G), (B)));
imagejpeg($im);
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Stalin_alex
сообщение 31.10.2007, 19:54
Сообщение #5
Стаж: 19 лет

Сообщений: 531
Благодарностей: 114
Полезность: 0

Ребят. помогите пожалуста. Долго мучался изучал структуру кода, но никак не врублюсь что я делаю не так. но у меня нихрена не пашет. Где я не вписываю что то что должен?

Вот смотрите как я делаю: Пробую чисто для начала в виде пробы, тоесть создаю файл в корне сайта, называю его monitoring.php и вписываю в него Ваш код. Но изменяю путь к папке с картами что лежат в корне сайта , Ваш на свой $maps = "http://10.159.18.17/maps";

Помоему где то ещё нужно прописать IP моего сервака и порт, но где? Не могу понять. Короче больше нигде ничего не изменяя пробую открывать этот файл в браузере, указываю путь свой http://10.159.18.17/monitoring.php и в итоге на странице отображается следующее:

$timeout = 1; // The connection timeout, in seconds $maps = "http://10.159.18.17/maps"; $params = str_replace(".php","",$_SERVER['SCRIPT_NAME']); $params = getenv('REQUEST_URI'); $params = str_replace(".php","",$params); $params = str_replace(str_replace(".php","",$_SERVER['SCRIPT_NAME']),"",$params); $params = substr($params, 1); list($ip, $port) = explode(":", $params); if( $server = fsockopen( "udp://".$ip, $port, $errno, $errstr ) ) { socket_set_timeout($server,$timeout); $write = "\xFF\xFF\xFF\xFFTSource Engine Query\x00"; socket_set_timeout($server,$timeout); fwrite($server, $write); $server_response = fread($server,4096); fclose($server); $server_status = ($server_response ? 'ON' : 'OFF'); if ($server_status == "ON"){ $server_info['server_type'] = $server_response[4]; $server_response = substr($server_response, 5); if ($server_info['server_type'] == "m") { $server_info['address'] = cs_get_value_string($server_response); $server_info['hostname'] = htmlentities(cs_get_value_string($server_response)); $server_info['map'] = cs_get_value_string($server_response); $server_info['gamedir'] = cs_get_value_string($server_response); $server_info['description'] = cs_get_value_string($server_response); $server_info['players'] = cs_get_value_byte($server_response); $server_info['max'] = cs_get_value_byte($server_response); $server_info['protocol'] = cs_get_value_byte($server_response); $server_info['lan'] = cs_get_value_byte($server_response); $server_info['os'] = $server_response[0]; $server_response = substr($server_response, 1); $server_info['password'] = cs_get_value_byte($server_response); $server_info['is_mod'] = cs_get_value_byte($server_response); $server_info['url_info'] = cs_get_value_string($server_response); $server_info['url_down'] = cs_get_value_string($server_response); $server_info['unused'] = cs_get_value_string($server_response); $server_info['mod_version'] = cs_get_value_lint($server_response); $server_info['mod_size'] = cs_get_value_lint($server_response); $server_info['sv_only'] = cs_get_value_byte($server_response); $server_info['cl'] = cs_get_value_byte($server_response); $server_info['secure'] = cs_get_value_byte($server_response); $server_info['bots'] = cs_get_value_byte($server_response); $typeimg = ".gif"; $type = "cs"; } elseif ($server_info['server_type'] == "I") { $server_info['address'] = $ip.":".$port; $server_info['protocol'] = cs_get_value_byte($server_response); $server_info['hostname'] = htmlentities(cs_get_value_string($server_response)); $server_info['map'] = cs_get_value_string($server_response); $server_info['gamedir'] = cs_get_value_string($server_response); $server_info['description'] = cs_get_value_string($server_response); $server_info['app_id'] = cs_get_value_sint($server_response); $server_info['players'] = cs_get_value_byte($server_response); $server_info['max'] = cs_get_value_byte($server_response); $server_info['bots'] = cs_get_value_byte($server_response); $server_info['lan'] = cs_get_value_byte($server_response); $server_info['os'] = cs_get_value_string($server_response); $server_info['password'] = cs_get_value_byte($server_response); $server_info['secure'] = cs_get_value_byte($server_response); $server_info['version'] = cs_get_value_string($server_response); $typeimg = ".png"; $type = "css"; } } } else $server_status = "OFF"; function cs_get_value_string(&$data) { $temp = ''; $i = 0; while (ord($data[$i]) != 0){ $temp .= $data[$i]; $i++; } $data = substr($data, $i+1); return $temp; } function cs_get_value_byte(&$data) { $temp = $data[0]; $data = substr($data, 1); return ord($temp); } function cs_get_value_lint(&$data) { $temp = substr($data, 0, 4); $data = substr($data, 4); $array = @unpack('Lint', $temp); return $array['int']; } function cs_get_value_sint(&$data) { $tmp = substr($data, 0, 2); $data = substr($data, 2); $array = @unpack('Sshort', $tmp); return $array['short']; } // Online Server $online_s='

'.$ip.':'.$port.'
Игроки: '.$server_info['players'].'/'.$server_info['max'].'
Карта: '.$server_info['map'].'.bsp
Статус сервера: ON
'; // Offline server $offline_s='

'.$ip.':'.$port.'
Карта: unknown.bsp
Игроки: 0/0
Статус сервера: OFF
'; if ($server_status == "ON") echo $online_s; elseif ($server_status == "OFF") echo $offline_s; else echo "Ошибка sad.gif";


Что я натворил не так, и скорее всего недописал куда то что то. Пожалуста помогите!

Отредактировал: Stalin_alex, - 31.10.2007, 19:59
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Lavrik
сообщение 1.11.2007, 9:29
Сообщение #6


Стаж: 19 лет

Сообщений: 341
Благодарностей: 230
Полезность: 924

Еще раз краткая инструкция
Создаем если нет файл .htaccess, и в него пишем:
Код
Options +MultiViews -Indexes

Чтоб инклудить его в сайт надо:
Код
<?php
......
include "http://siteurl.com/monitoring/ip:port";
.....
?>

Можно еще с браузера посмотреть )
http://siteurl.com/monitoring/ip:port

Если это невыполняемо :)
меняем
Код
$params = str_replace(".php","",$_SERVER['SCRIPT_NAME']);
$params = getenv('REQUEST_URI');
$params = str_replace(".php","",$params);
$params = str_replace(str_replace(".php","",$_SERVER['SCRIPT_NAME']),"",$params);
$params = substr($params, 1);
list($ip, $port) = explode(":", $params);

на
Код
$ip = "ip";
$port = "port";

И вставляем тупо в скрипт. И вставлять в .htaccess ничего ненадо ;)
---------------------------------------------------------------------------------------------------------------------------------
Если вы хотите чтоб скрипт можно было загрузить только через include, впишите вначале

Код
if("IPSERVERA"  != $_SERVER['REMOTE_ADDR'] ) exit();
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Stalin_alex
сообщение 1.11.2007, 11:56
Сообщение #7
Стаж: 19 лет

Сообщений: 531
Благодарностей: 114
Полезность: 0

Большое спасибо, я щас на работе, дома попробую.


Попробовал. Тоже самое. Что я сделал?

1. Вариант


1. Открываю файл .htaccess в папке localhost, добавляю строчку Options +MultiViews -Indexes

Ни о каком инклуде пока речь и близко не ведём. (Тут в радость чтоб просто для пробы заработало sad.gif )


2. набираю в браузере http://10.159.18.17/monitoring/10.159.18.17:27015

Итог. Та же басня, что я выложил выше!

2- Вариант


1. Удаляю из файла .htaccess строчку Options +MultiViews -Indexes
2. Меняю в файле monitoring.php абзац

$params = str_replace(".php","",$_SERVER['SCRIPT_NAME']);
$params = getenv('REQUEST_URI');
$params = str_replace(".php","",$params);
$params = str_replace(str_replace(".php","",$_SERVER['SCRIPT_NAME']),"",$params);
$params = substr($params, 1);
list($ip, $port) = explode(":", $params);


на 2 строчки

$ip = "10.159.18.17";
$port = "27015";


Итог.

Объект не найден
Not Found
Ошибка 404


Ребят помогите пожалуста очень прошу, я именно из-за этого скрипта ломился в этот закрытый раздел как только мог. У меня в принципе есть почти такой же скриптик, работает нормально, но только в нём есть один недостаток при отключении из сети одного из серверов на который он настроен, страница сайта начинает висеть около 30 секунд, и только потом выдаст скриншот "Сервер отключён." Это очень сильно напрягает, поэтому я пробивался сюда, чтобы попробовать Ваш скрипт, надеясь что в нём этот недостаток предусмотрен!


Отредактировал: Stalin_alex, - 1.11.2007, 19:05
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Lavrik
сообщение 1.11.2007, 20:12
Сообщение #8


Стаж: 19 лет

Сообщений: 341
Благодарностей: 230
Полезность: 924

Я блин я забыл добавить <?php в начале :), все исправил. Юзаем нестесняемся
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Stalin_alex
сообщение 2.11.2007, 17:34
Сообщение #9
Стаж: 19 лет

Сообщений: 531
Благодарностей: 114
Полезность: 0

Осталось 2 вопроса последних.



1. Почему саму карту не отображает? Что надо сделать????

Рамка есть вокруг у Вас стырил. В коде изменял все типы на .gif В корне сайта лежит папка maps и в ней все карты нужные в гифе. Сам личено делал.



И ещё . Если один из серверов не в сети то он выдаёт вот это!

Notice: Undefined variable: type in T:\home\localhost\monitoring.php on line 111

Notice: Undefined variable: server_info in T:\home\localhost\monitoring.php on line 111

Notice: Undefined variable: typeimg in T:\home\localhost\monitoring.php on line 111

Notice: Undefined variable: server_info in T:\home\localhost\monitoring.php on line 117

Notice: Undefined variable: server_info in T:\home\localhost\monitoring.php on line 117

Notice: Undefined variable: server_info in T:\home\localhost\monitoring.php on line 118

Статус сервера: OFF
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Lavrik
сообщение 2.11.2007, 18:49
Сообщение #10


Стаж: 19 лет

Сообщений: 341
Благодарностей: 230
Полезность: 924

Кинь в папку maps =)
https://c-s.net.ua/maps/666.zip

Добавь перед
Код
// Online Server

if($server_status != "ON") $typeimg = $server_info['map'] = $maps = $type = null;
Или отключи оповищение об ошибках

добавь После
Код
<?php

error_reporting(0);
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Stalin_alex
сообщение 3.11.2007, 10:05
Сообщение #11
Стаж: 19 лет

Сообщений: 531
Благодарностей: 114
Полезность: 0

Всем большое спасибо. Lavriky особая благодарность за отзывчивость. Всё получилось. Всё замечательно!


Всем большое спасибо. Lavriky особая благодарность за отзывчивость. Всё получилось. Всё замечательно!


Всем большое спасибо. Lavriky особая благодарность за отзывчивость. Всё получилось. Всё замечательно!


Всем большое спасибо. Lavriky особая благодарность за отзывчивость. Всё получилось. Всё замечательно!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя dotsenko
сообщение 5.11.2007, 12:26
Сообщение #12
Стаж: 19 лет

Сообщений: 269
Благодарностей: 27
Полезность: 98

Хм неподскажете как убрать рамку?)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Lavrik
сообщение 5.11.2007, 16:46
Сообщение #13


Стаж: 19 лет

Сообщений: 341
Благодарностей: 230
Полезность: 924

Вот =)
Код
// Online Server
$online_s='
<center>
<table cellpadding="0" cellspacing="0">
    <tr>
        <td>
            <img border="0" src="'.$maps.'/'.$type.'/'.$server_info['map'].$typeimg.'" width="160" height="120">
        </td>
    </tr>
</table>
<b>'.$ip.':'.$port.'</b><br />
Игроки: '.$server_info['players'].'/'.$server_info['max'].'<br />
Карта: '.$server_info['map'].'.bsp<br/>
Статус сервера: <font color="green"><b>ON</b></font> <br />
</center>';

// Offline server
$offline_s='<center>
<table cellpadding="0" cellspacing="0">
    <tr>
        <td>
            <img border="0" src="'.$maps.'/maps/noimage.jpg" width="160" height="120">
        </td>
    </tr>
</table>
<b>'.$ip.':'.$port.'</b><br />
Карта: unknown.bsp<br/>
Игроки: 0/0<br />
Статус сервера: <font color="red"><b>OFF</b></font><br />
</center>';
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя dotsenko
сообщение 5.11.2007, 17:36
Сообщение #14
Стаж: 19 лет

Сообщений: 269
Благодарностей: 27
Полезность: 98

Спасибо
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя MEN
сообщение 6.11.2007, 1:52
Сообщение #15


Стаж: 19 лет

Сообщений: 98
Благодарностей: 14
Полезность: 116

О великий АДМИН, скажите пожалуйста где должен быть вставлен этот код, для отображения статистики на картинке!

header("Content-type: image/jpeg");
$im = imagecreatefromjpeg($map.".jpg");
imagestring($im, (FONTSIZE), (X), (Y), $ip.":".$port, imagecolorallocate ($im, ®, (G), (B)));
imagejpeg($im);
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Lavrik
сообщение 6.11.2007, 18:56
Сообщение #16


Стаж: 19 лет

Сообщений: 341
Благодарностей: 230
Полезность: 924

Это пример :)
..
Создаем картинку kartinka.jpg
..
Берем файл monitoring.php
изменяем в нем
Код
$params = str_replace(".php","",$_SERVER['SCRIPT_NAME']);
$params = getenv('REQUEST_URI');
$params = str_replace(".php","",$params);
$params = str_replace(str_replace(".php","",$_SERVER['SCRIPT_NAME']),"",$params);
$params = substr($params, 1);
list($ip, $port) = explode(":", $params);

на
Код
$ip = "ip";
$port = "port";

Меняем
Код
// Online Server
$online_s='
<center>
<table cellpadding="0" cellspacing="0">
    <tr>
        <td background="'.$maps.'/'.$type.'/'.$server_info['map'].$typeimg.'">
            <img border="0" src="'.$maps.'/map.gif" width="160" height="120">
        </td>
    </tr>
</table>
<b>'.$ip.':'.$port.'</b><br />
Игроки: '.$server_info['players'].'/'.$server_info['max'].'<br />
Карта: '.$server_info['map'].'.bsp<br/>
Статус сервера: <font color="green"><b>ON</b></font> <br />
</center>';

// Offline server
$offline_s='<center>
<table cellpadding="0" cellspacing="0">
    <tr>
        <td background="'.$maps.'/maps/noimage.jpg">
            <img border="0" src="'.$maps.'/map.gif" width="160" height="120">
        </td>
    </tr>
</table>
<b>'.$ip.':'.$port.'</b><br />
Карта: unknown.bsp<br/>
Игроки: 0/0<br />
Статус сервера: <font color="red"><b>OFF</b></font><br />
</center>';

if ($server_status == "ON") echo $online_s;
elseif ($server_status == "OFF") echo $offline_s;
else echo "Ошибка :(";

На
Код
header("Content-type: image/jpeg");
$im = imagecreatefromjpeg("kartinka.jpg");
imagestring($im, 15, 50, 50,$server_info['map']." ".$server_info['players'] "/"$server_info['max'], imagecolorallocate ($im, 255, 255, 255));
imagejpeg($im);

Ток когда сервак офф будут глюки =) потом как нить напишу нормальный скрипт
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя dotsenko
сообщение 7.11.2007, 13:56
Сообщение #17
Стаж: 19 лет

Сообщений: 269
Благодарностей: 27
Полезность: 98

Хмм пишет ошибку

Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in

строка
imagestring($im, 15, 50, 50,$server_info['map']." ".$server_info['players'] "/"$server_info['max'], imagecolorallocate ($im, 255, 255, 255));
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Lavrik
сообщение 7.11.2007, 17:27
Сообщение #18


Стаж: 19 лет

Сообщений: 341
Благодарностей: 230
Полезность: 924

Это пример как делать, а тебе надо уже готовое :)
Будет время сделаю
Код
imagestring($im, 15, 50, 50,$server_info['map']." ".$server_info['players'] ."/".$server_info['max'], imagecolorallocate ($im, 255, 255, 255));
вот
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Stalin_alex
сообщение 11.11.2007, 10:49
Сообщение #19
Стаж: 19 лет

Сообщений: 531
Благодарностей: 114
Полезность: 0

-------------
Скрипт для вывода именов игроков:



1.
Lavrik скажи я правильно зделал всё?

Создал php файл, players.php, в него закинул этот скрипт, и изменил в нём верхнюю строчку list($ip, $port) = explode(":", "10.159.18.17:27015"); заменив в ней слово localhost на свой IP и 1234 поменял на 27015 - порт моего сервака. В обозревателе просто указываю http://10.159.18.17/players.php

2.
Скажи, а что количество фрагов не суждено будет нам увидеть? sad.gif Мне кажется это Важный вопрос!

Отредактировал: Stalin_alex, - 11.11.2007, 11:10
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Lavrik
сообщение 11.11.2007, 19:04
Сообщение #20


Стаж: 19 лет

Сообщений: 341
Благодарностей: 230
Полезность: 924

Цитата
Lavrik скажи я правильно зделал всё?
Все норм

Цитата
Скажи, а что количество фрагов не суждено будет нам увидеть
Конечно да =)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
3 страниц V   1 2 »
 
Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: