1. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
  2. Данный раздел создан исключительно для релизов! Вопросы по лаунчеру или обвязке задавайте ТОЛЬКО в соответсвующей теме автора. Любые другие темы будут удалены, а авторы понесут наказание.

Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Веб Скрипт мониторинга с полосой заполненности

Тема в разделе "Веб-обвязки и лаунчеры", создана пользователем Chris, 2 апр 2012.

Статус темы:
Закрыта.
  1. Автор темы
    Chris

    Chris Старожил Пользователь

    Баллы:
    123
    Чай будешь?
     
  2. Gfdtk

    Gfdtk Активный участник

    Баллы:
    88
    Skype:
    igbuby
    пожалуй, я откажусь:trf:
     
  3. Вовка

    Вовка Активный участник

    Баллы:
    63
    Joomla:)
     
  4. Agenda

    Agenda Активный участник

    Баллы:
    68
    Помогите поставить,хостинг jino.ru движек XenForo
     
  5. vindeezel1993

    vindeezel1993 Активный участник Пользователь

    Баллы:
    78
    Skype:
    vindeezel1993
    Предложу свой вариант. Может кому и понравится.
    [​IMG]


    PHP:
    <?$host = '46.38.57.236';
    $port = '25565';
    $socket = @fsockopen($host, $port);
    if (
    $socket !== false) {
    @
    fwrite($socket, "\xFE");
    $data = "";
    $data = @fread($socket, 1024);
    @
    fclose($socket);
    if (
    $data !== false && substr($data, 0, 1) == "\xFF") {
    $info = explode("\xA7", mb_convert_encoding(substr($data,1), "iso-8859-1", "utf-16be"));
    $playersOnline = $info[1];
    $playersMax = $info[2];
    $percent = (100/$playersMax)*$playersOnline;
    $percent = round($percent,0);
    $width = 1.5*$percent;
    if (
    $percent <= 50) {$pic = "loadbargreen.gif";}
    if (
    $percent > 50 && $percent <= 80) {$pic = "loadbaryellow.gif";}
    if (
    $percent > 80) {$pic = "loadbarred.gif";}
    echo 
    '<fieldset></legend>';
    echo 
    '<img src="/images/world.jpg" border="10" width="140" height="100" /><br>';
    echo 
    'IP <b>';
    echo 
    "$host:$port";
    echo 
    '</b><br>Игроки <b>';
    echo 
    "$playersOnline/$playersMax";
     
     
    ?>
    </b>
    <style>table.main {
    background-color: #fafafa;
    }</style>
    <table class="main" border="0" width="150"><tr><td style="padding: 0px; background-repeat: repeat-x"></b><br><b>Заполненость: </b><?echo $percent;?> %<br>
    <img height="15" width="<? echo $width; ?>" src="images/<? echo $pic; ?>">
    </td></tr></table>
    <?
    echo '</fieldset>';
     
    } else {
    echo 
    '<fieldset><legend>Ошибка</legend>';
    echo 
    '<img src="/images/nopicture.jpg" border="10" width="140" height="100" /><br>';
    echo 
    'IP <b>';
    echo 
    "$host:$port";
    echo 
    '</b><br>Игроки <b>Ошибка</b></fieldset>';
    }
     
    } else {
    echo 
    '<fieldset><legend>Сервер выключен</legend>';
    echo 
    '<img src="/images/nopicture.jpg" border="10" width="140" height="100" /><br>';
    echo 
    'IP <b>';
    echo 
    "$host:$port";
    echo 
    '</b><br><b>Сервер выключен</b></fieldset>';
    }
    + сами картинки
     

    Вложения:

    • images.zip
      Размер файла:
      9,9 КБ
      Просмотров:
      48
    Gfdtk нравится это.
  6. Gfdtk

    Gfdtk Активный участник

    Баллы:
    88
    Skype:
    igbuby
    хм. а если и картинки менялись, было бы неплохо. а так прикольно +
     
  7. vindeezel1993

    vindeezel1993 Активный участник Пользователь

    Баллы:
    78
    Skype:
    vindeezel1993
    Так картинки меняются в зависимости от процента заполненности. Или ты про карту?я не не стал запрос делать)ибо карта не меняется)Просто вписал картинку и все.
     
  8. vindeezel1993

    vindeezel1993 Активный участник Пользователь

    Баллы:
    78
    Skype:
    vindeezel1993
    Вывод данных на картинку. Три состояния. В скрипте отредактируйте.
    $map = 'world'; // имя вашей карты
    $s = 'empower.su'; // адрес вашего сайта
    $host = '46.38.57.75';
    $port = '25565';

    Сам скрипт

    PHP:
    <?
    $map = 'world';
    $s = 'empower.su';
    $height=95;
    $width=560;
    $path=""; // путь до картинки))
    $image="go.png";
    $host = '46.38.57.75';
    $port = '25565';
    $socket = @fsockopen($host, $port);
    if (
    $socket !== false) {
    @
    fwrite($socket, "\xFE");
    $data = "";
    $data = @fread($socket, 1024);
    @
    fclose($socket);
    if (
    $data !== false && substr($data, 0, 1) == "\xFF") {
    $info = explode("\xA7", mb_convert_encoding(substr($data,1), "iso-8859-1", "utf-16be"));
    $playersOnline = $info[1];
    $playersMax = $info[2];
    Header("Content-type: image/png");
    $im=imagecreatefrompng($path.$image);
    $black  = ImageColorAllocate($im, 0,0,0);
    $white = ImageColorAllocate($im, 255,255,255);
    $red = ImageColorAllocate($im, 255,0,0);
    $bl = ImageColorAllocate($im, 6,0,255);
    $green = ImageColorAllocate($im, 0,255,0);
    $yellow= ImageColorAllocate($im, 255,255,0);
    $src = imagecreatefromgif("images/world.gif");
    imagecopymerge($im, $src, 15, 15, 0, 0, 93, 70, 100);
    ImageString($im, 6, 180, 20, $host, $white );
    ImageString($im, 6, 180, 40, $port, $white);
    ImageString($im, 6, 180, 60, "Online", $green);
    ImageString($im, 6, 395, 18, $map, $white);
    ImageString($im, 6, 405, 40, $playersOnline."/".$playersMax , $white);
    ImageString($im, 6, 380, 58, $s, $white);
    ImageRectangle($im, 0, 0, $width-0, $height-0, $white);
    Imagepng($im);
    ImageDestroy($im);
    Imagedestroy($src);
     
     
    } else {
    Header("Content-type: image/png");
    $im=imagecreatefrompng($path.$image);
    $black  = ImageColorAllocate($im, 0,0,0);
    $white = ImageColorAllocate($im, 255,255,255);
    $red = ImageColorAllocate($im, 255,0,0);
    $bl = ImageColorAllocate($im, 6,0,255);
    $green = ImageColorAllocate($im, 0,255,0);
    $yellow= ImageColorAllocate($im, 255,255,0);
    $src = imagecreatefromgif("images/nopicture.gif");
    imagecopymerge($im, $src, 15, 15, 0, 0, 93, 70, 100);
    ImageString($im, 6, 180, 20, $host, $white );
    ImageString($im, 6, 180, 40, $port, $white);
    ImageString($im, 6, 180, 60, "No response", $yellow);
    ImageString($im, 6, 395, 18, $map, $white);
    ImageString($im, 6, 405, 40, "0/0" , $white);
    ImageString($im, 6, 380, 58, $s, $white);
    ImageRectangle($im, 0, 0, $width-0, $height-0, $white);
    Imagepng($im);
    ImageDestroy($im);
    Imagedestroy($src);
     
     
    }
     
    } else {
    Header("Content-type: image/png");
    $im=imagecreatefrompng($path.$image);
    $black  = ImageColorAllocate($im, 0,0,0);
    $white = ImageColorAllocate($im, 255,255,255);
    $red = ImageColorAllocate($im, 255,0,0);
    $bl = ImageColorAllocate($im, 6,0,255);
    $green = ImageColorAllocate($im, 0,255,0);
    $yellow= ImageColorAllocate($im, 255,255,0);
    $src = imagecreatefromgif("images/nopicture.gif");
    imagecopymerge($im, $src, 15, 15, 0, 0, 93, 70, 100);
    ImageString($im, 6, 180, 20, $host, $white );
    ImageString($im, 6, 180, 40, $port, $white);
    ImageString($im, 6, 180, 60, "Offline", $red);
    ImageString($im, 6, 395, 18, $map, $white);
    ImageString($im, 6, 405, 40, "0/0" , $white);
    ImageString($im, 6, 380, 58, $s, $white);
    ImageRectangle($im, 0, 0, $width-0, $height-0, $white);
    Imagepng($im);
    ImageDestroy($im);
    Imagedestroy($src);
     
     
    }
     
     
    ?>
    Скрины

    [​IMG] [​IMG] [​IMG]

    PSD баннера. + картинки.(Формат баннера любой. Формат картинки карты gif)
    PS надо бы запрос на определение карты сделать. Где то даже лежал мануальчик.

    А)Мини фак. Как сделать GET запросы?
    Б)Замените
    $host = '46.38.57.75';
    $port = '25565';
    на
    $host =$_GET['host'];
    $port = $_GET['port'];
     

    Вложения:

    • htdocs.zip
      Размер файла:
      490,2 КБ
      Просмотров:
      33
  9. Gfdtk

    Gfdtk Активный участник

    Баллы:
    88
    Skype:
    igbuby
    что такое GET запросы?
     
  10. vindeezel1993

    vindeezel1993 Активный участник Пользователь

    Баллы:
    78
    Skype:
    vindeezel1993
    в браузер ?host=127.0.0.1?port=25565
     
  11. Автор темы
    Chris

    Chris Старожил Пользователь

    Баллы:
    123
    Молодец :)
     
  12. vindeezel1993

    vindeezel1993 Активный участник Пользователь

    Баллы:
    78
    Skype:
    vindeezel1993
    Делал для себя) Тут может остаться лишний код, но на работу он не влияет.
     
  13. DimasForce

    DimasForce Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    DimasForce
    Отличный скриптик, но... я так понимаю, лаунчер (на основе Нотча) не использует css файл :confused:
    И выходит весьма странная картина :D
    В браузере все 0k.
    Как бы с этим разобраться? :)
     
  14. Автор темы
    Chris

    Chris Старожил Пользователь

    Баллы:
    123
    Java не цепляет CSS стили
     
  15. DimasForce

    DimasForce Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    DimasForce
    О черт! :mad:
     
  16. Syma71

    Syma71 Активный участник

    Баллы:
    63
    Имя в Minecraft:
    Syma
    Спасибо!
     
  17. vindeezel1993

    vindeezel1993 Активный участник Пользователь

    Баллы:
    78
    Skype:
    vindeezel1993
    Мой вариант попробуй. там css не нужен. <style> ... </style> можешь убрать. это с сайта моего осталось, выделял, чтобы с фоном не сливалось
     
  18. Gamerus45

    Gamerus45 Активный участник Пользователь

    Баллы:
    78
    У меня получилось решить проблему с DLE.
    В самом server.php изменил строку 21
    Код:
    $server = "<div class=\"monitor\" style=\"background-position: ". (-165+165*$playersOnline/$playersMax) ."px 0;\">$playersOnline/$playersMax</div>";
    на

    Код:
    $server = "<div class=\"monitor\" style=\"background-position: ". (-165+150*$playersOnline/$playersMax) ."px 0;\">$playersOnline/$playersMax</div>";
    На сервере 50 слотов.
     
    vtvtima нравится это.
  19. Joomplix

    Joomplix Старожил Пользователь

    Баллы:
    103
    Skype:
    Zolik767
    Имя в Minecraft:
    BetterSwetten
    И что получилось покажы
     
  20. Bars

    Bars Старожил Девелопер Пользователь

    Баллы:
    173
    Скрин можно?
     
    Сникерсни нравится это.
Статус темы:
Закрыта.

Поделиться этой страницей