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

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

Веб Мониторинг minecraft серверов на PHP+HTML+CSS

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

  1. Roma999

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

    Баллы:
    103
    Skype:
    r0ma.chernenk0
    Имя в Minecraft:
    Roma999
    Шаблон, помоему, переписан! :)
     
  2. Savetchuk

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

    Баллы:
    88
    Шаблон сам делал, но немножко взял с других сайтов.
     
  3. Roma999

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

    Баллы:
    103
    Skype:
    r0ma.chernenk0
    Имя в Minecraft:
    Roma999
    Да, молодец! Он сам переписал стандартный шаблон! Я посмотрел исходничек =3 Только помести стили с bootstrap в отдельный файл, так загрузка страниц быстрее будет, ну а так молодец! ;)
    И ещё переделай заголовок новостей и шапку блоков меню (Всем и так понятно, что взял с iPlayCraft)
    Вижу руки прямые, сам сделать свое сможешь!
     
  4. Savetchuk

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

    Баллы:
    88
    Спасибо, скоро переделаю, когда все будет готово :)
    А как сделать чтоб писало например - Онлайн 1 из 10 игроков и прогресс бар был полный?
    А то у меня Онлайн 1 из 10 игроков и прогресс бар только чуть-чуть заполнен.
     
  5. Автор темы
    enselerizer

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

    Баллы:
    123
    Имя в Minecraft:
    enselerizer
    Если Всего 10 слотов - установить фикс (в разделе Багфиксы в топике).

    UPD: Добавил видео установки (NEW)
     
  6. Roma999

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

    Баллы:
    103
    Skype:
    r0ma.chernenk0
    Имя в Minecraft:
    Roma999
    PHP:
    <?php echo $confStriped?> <?php echo $confActive?>" style="height: 24px;">
      <div class="bar" style="width:<?php // Изменяем процент заполненности бара
    if ($Server->Online == true && $Server->CurPlayers != 0) { // Если сервер - онлайн, и игроков больше 0, то...
    echo '100';
    }
    if (
    $Server->CurPlayers == 0) { // Если сервер - онлайн, но игроков на сервере - 0, то...
    echo '100';
    }
    if (
    $Server->Online != true) { // Если же сервер выключен, то...
    echo '100';
    };
    ?>

    46 строка =3
     
  7. Автор темы
    enselerizer

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

    Баллы:
    123
    Имя в Minecraft:
    enselerizer
    Так получится, что при любом раскладе будет 100 =)
    Просто поставить фикс, и бар будет отображаться правильно - например, если 1 из 10 игроков, то полоска заполнится на 10%.
     
  8. Roma999

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

    Баллы:
    103
    Skype:
    r0ma.chernenk0
    Имя в Minecraft:
    Roma999
    Ты не понял! Он хочет бес полоски заполненности!
     
  9. Автор темы
    enselerizer

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

    Баллы:
    123
    Имя в Minecraft:
    enselerizer
    Ну, это же одно из решений проблемы - тогда прогресс бар не будет "немножко заполнен", а очень даже ощутимо. Ну а если надо чтобы всегда было 100 - то зачем вообще парится с php?

    Заменяем:
    PHP:
      <div class="bar" style="width:<?php // Изменяем процент заполненности бара
    if ($Server->Online == true && $Server->CurPlayers != 0) { // Если сервер - онлайн, и игроков больше 0, то...
    $getBarProcent $Server->MaxPlayers 100;
    echo 
    $Server->CurPlayers $getBarProcent;
    }
    if (
    $Server->CurPlayers == 0) { // Если сервер - онлайн, но игроков на сервере - 0, то...
    echo '100';
    }
    if (
    $Server->Online != true) { // Если же сервер выключен, то...
    echo '100';
    };
    ?>
    На:
    HTML:
      <div class="bar" style="width:100
    [​IMG]

    P.S. Кстати, полазил по твоему сайту (тот, что в подписи), интересно, что за мониторинг? Раз 1.5.2, значит MCPC+, а значит мб добавлю фикс на MCPC+
     
  10. Автор темы
    enselerizer

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

    Баллы:
    123
    Имя в Minecraft:
    enselerizer
    Так понял, это получение данных о сервере?
    PHP:
    class serv {private $Socket$Info$to; public $Online$MOTD$CurPlayers$MaxPlayers$IP$Port$Error;
    public function 
    __construct($IP$Port '25565'$timeout='2') {$this->IP $IP;$this->Port $Port;$this->to $timeout;
    if(
    preg_match('/(.*):\/\//'$this->IP)) {$this->IP preg_replace('/(.*):\/\//'''$this->IP);}
    if(
    strpos($this->IP'/') !== false) {$this->IP rtrim($this->IP'/');if(strpos($this->IP'/') !== false) {
    $this->Failed();$this->Error 'Неправильно написан адрес сервера';return;}}
    if(
    preg_match_all('/:/'$this->IP$matches) > 1) {unset($matches);if(strpos($this->IP'[') === false && strpos($this->IP']') === false)
    $this->IP '['.$this->IP.']';} else if(strpos($this->IP':') !== false) {$this->Failed();return;}
    if(
    $this->Socket = @stream_socket_client('tcp://'.$this->IP.':'.$Port$ErrNo$ErrStr$this->to)) {
    if(
    strpos($this->IP'[') === && strpos($this->IP']')===(strlen($this->IP)-1))
    $this->IP=trim($this->IP'[]');$this->Online=true;fwrite($this->Socket"\xfe");$Handle fread($this->Socket8192);
    $Handle=substr($Handle1);if(strpos($Handle,"\x00\x00")!=0){$Handle explode("\x00\x00",$Handle);$Handle str_replace("\x00"''$Handle);
    $this->MOTD=$Handle[3];$this->CurPlayers=$Handle[4];$this->MaxPlayers=$Handle[5];$this->Error=false;}else{
    $Handle=explode("\xa7"$Handle);$Handle=str_replace("\x00"''$Handle);$this->MOTD=$Handle[0];
    $this->CurPlayers $Handle[1];$this->MaxPlayers=$Handle[2];$this->Error=false;}unset($Handle);
    fclose($this->Socket);}else{$this->Online false;$this->Failed();}}
    public function 
    Info(){return array('MOTD'=>$this->MOTD,'CurPlayers'=>$this->CurPlayers,'MaxPlayers'=>$this->MaxPlayers);}
    private function 
    Failed(){$this->MOTD=false;$this->CurPlayers false;$this->MaxPlayers false;}} $pod=0$pmd=0;
     
  11. Roma999

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

    Баллы:
    103
    Skype:
    r0ma.chernenk0
    Имя в Minecraft:
    Roma999
    Почисти немного функцию, так как тут много лишнего для твоего мониторинга!
     
  12. Roma999

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

    Баллы:
    103
    Skype:
    r0ma.chernenk0
    Имя в Minecraft:
    Roma999
    Допустим вывод МОДТ, немногие его используют + если у тебя он цветной, то вообще кракозябры выйдут! Сделай тогда 2 версии (С МОТД и бес него), также советую прихими4ить чтото на подобии шаблонизатора как у enselerizer, тогда твоя аудитория (с твоим мониторингом) станет побольше ;)
     
  13. book777

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

    Баллы:
    123
    укоротил
    PHP:
    class serv {private $Socket$Info$to; public $Online$MOTD$CurPlayers$MaxPlayers$IP$Port;
    public function 
    __construct($IP$Port '25565') {$this->IP $IP;$this->Port $Port;$this->to 2;
    if(
    $this->Socket = @stream_socket_client('tcp://'.$this->IP.':'.$Port$this->to)) {
    if(
    strpos($this->IP'[') === && strpos($this->IP']')===(strlen($this->IP)-1))
    $this->IP=trim($this->IP'[]');$this->Online=true;fwrite($this->Socket"\xfe");$Handle fread($this->Socket8192);
    $Handle=substr($Handle1);if(strpos($Handle,"\x00\x00")!=0){$Handle explode("\x00\x00",$Handle);$Handle str_replace("\x00"''$Handle);
    $this->MOTD=$Handle[3];$this->CurPlayers=$Handle[4];$this->MaxPlayers=$Handle[5];}else{
    $Handle=explode("\xa7"$Handle);$Handle=str_replace("\x00"''$Handle);$this->MOTD=$Handle[0];
    $this->CurPlayers=$Handle[1];$this->MaxPlayers=$Handle[2];}unset($Handle);
    fclose($this->Socket);}else{$this->Online=false;$this->Failed();}}
    public function 
    Info(){return array('MOTD'=>$this->MOTD,'CurPlayers'=>$this->CurPlayers,'MaxPlayers'=>$this->MaxPlayers);}
    private function 
    Failed(){$this->MOTD=false;$this->CurPlayers false;$this->MaxPlayers false;}} 
    Допустим вывод МОДТ, немногие его используют + если у тебя он цветной, то вообще кракозябры выйдут!
    1) его можно убрать (функция такая уже есть)
    2) кракозябры я пофиксил

    советую прихими4ить чтото на подобии шаблонизатора
    он уже есть - t=от 1 до 9блабблбабвид цветовой расцветки мониторинга (пока что только 9 видов)
    http://devrubukkit.org/temp/3/?s=sv...ensemplix.ru;sv99.ensemplix.ru&l=400&t=4&m=20
    http://devrubukkit.org/temp/3/?s=sv...ensemplix.ru;sv99.ensemplix.ru&l=400&t=3&m=20
    http://devrubukkit.org/temp/3/?s=sv...ensemplix.ru;sv99.ensemplix.ru&l=400&t=7&m=20
    http://devrubukkit.org/temp/3/?s=sv...ensemplix.ru;sv99.ensemplix.ru&l=400&t=8&m=20
     
    Roma999 нравится это.
  14. Roma999

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

    Баллы:
    103
    Skype:
    r0ma.chernenk0
    Имя в Minecraft:
    Roma999
    Если кому интиресно, только что переписал мониторинг на своем сайте! "Двиг" book777, переписан мной!
     
  15. Dionixor

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

    Баллы:
    103
    Ребят , дайте конфиг. У меня мак)
    все такие-же лентяи, как и я? :)
    спасибку проставлю
     
  16. WCRAFT

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

    Баллы:
    173
    Skype:
    worldplaytv
    Имя в Minecraft:
    World

    Вложения:

    • 777.zip
      Размер файла:
      85,6 КБ
      Просмотров:
      8
  17. ivan111

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

    Баллы:
    123
    Имя в Minecraft:
    ivan
  18. WCRAFT

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

    Баллы:
    173
    Skype:
    worldplaytv
    Имя в Minecraft:
    World
    В каком смысле? В общем там просто написано "Сервер на профилактике!"
     
    BleaZzZ нравится это.
  19. book777

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

    Баллы:
    123
    На "школосервере" написано же,
    Статус: Offline
     
  20. WCRAFT

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

    Баллы:
    173
    Skype:
    worldplaytv
    Имя в Minecraft:
    World
    Оу, не заметил, похоже реально школосервер!
     

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