Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Помогите Как получить состояние сервера и кол-во игроков?

Тема в разделе "[Архив] Помощь", создана пользователем Евгеха19_93, 11 июн 2013.

  1. Автор темы
    Евгеха19_93

    Евгеха19_93 Старожил Пользователь

    Баллы:
    153
    Имя в Minecraft:
    Xeleon
    Как получить состояние сервера и кол-во игроков php скриптом? (короче, мониторинг, только просто статус и кол-во игроков, без полоски)
     
  2. Хостинг MineCraft
    <
  3. Dvladislav

    Dvladislav Старожил Переводчик Пользователь

    Баллы:
    173
  4. Автор темы
    Евгеха19_93

    Евгеха19_93 Старожил Пользователь

    Баллы:
    153
    Имя в Minecraft:
    Xeleon
  5. Dvladislav

    Dvladislav Старожил Переводчик Пользователь

    Баллы:
    173
    Зато у вас не хватает "не знаю чего" чтобы взять готовый код из готового мониторинга.
     
  6. Автор темы
    Евгеха19_93

    Евгеха19_93 Старожил Пользователь

    Баллы:
    153
    Имя в Minecraft:
    Xeleon
    Если вы такие умные, дайте. Ибо там все запутано, из функции ничего не возвращается, откуда мне брать онлайн?
     
  7. Shevchik

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

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    PHP:
    @fwrite($socket"\xFE\x01");
    $data "";
    $data = @fread($socket256);
    @
    fclose($socket);

    if (
    $data == false or substr($data01) != "\xFF") return;

    $infosubstr$data);
    $info iconv'UTF-16BE''UTF-8'$info );
    if( 
    $info] === "\xA7" && $info] === "\x31" ) {
    $info explode"\x00"$info );
    $playersOnline=IntVal$info[4] );
    $playersMax IntVal$info[5] );
    } else {
    $info Explode"\xA7"$info );
    $playersOnline=IntVal$info[1] );
    $playersMax IntVal$info[2] );
    }
    и да из мониторинга готового мог бы и взять.
     
    Евгеха19_93 нравится это.
  8. Автор темы
    Евгеха19_93

    Евгеха19_93 Старожил Пользователь

    Баллы:
    153
    Имя в Minecraft:
    Xeleon
    Спасибки, а где переменная с ошибкой? (выключен, т.д.)
     
  9. Dvladislav

    Dvladislav Старожил Переводчик Пользователь

    Баллы:
    173
    Код:
    <html>
    <head>
    <link rel="stylesheet" href="style.css" type="text/css" />
    </head>
    <?php
    $host = "144.76.41.231"; //IP
    $port = "25675"; //????
    $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];
    ?>
    <div class="on" style="background-position: <?php echo (-165+165*$playersOnline/$playersMax); ?>px 0;"><?php echo "$playersOnline";?></div>
    <?php
    } else {
    echo "<div class=\"off\">Текст</div>";}
    } else {
    echo "<div class=\"off\">Текст</div>";}
    ?>
    </body>
    </html>
     
  10. Shevchik

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

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    $socket = @fsockopen($host, $port , $errno , $errstr, 2);
    if ($socket == false) {значит он блджад выключен}

    Короче как-то так
    PHP:
    <?php
    $socket 
    = @fsockopen($host$port $errno $errstr2);
    if (
    $socket == false) {значит он блджад выключенпилим здесь вывод оффлайн статуса; return;}
    @
    fwrite($socket"\xFE\x01");
    $data "";
    $data = @fread($socket256);
    @
    fclose($socket);

    if (
    $data == false or substr($data01) != "\xFF") return;

    $infosubstr$data);
    $info iconv'UTF-16BE''UTF-8'$info );
    if( 
    $info] === "\xA7" && $info] === "\x31" ) {
    $info explode"\x00"$info );
    $playersOnline=IntVal$info[4] );
    $playersMax IntVal$info[5] );
    } else {
    $info Explode"\xA7"$info );
    $playersOnline=IntVal$info[1] );
    $playersMax IntVal$info[2] );
    }
     
    ?>
    Где-то тут теперь пилить вывод работающего сервера
     
    Евгеха19_93 нравится это.
  11. Автор темы
    Евгеха19_93

    Евгеха19_93 Старожил Пользователь

    Баллы:
    153
    Имя в Minecraft:
    Xeleon
    $errno , $errstr - what is this?
     
  12. Shevchik

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

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Оставь как есть, просто это переменные вывода ошибок для отладки.
     

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