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

Веб webMCR 2.4

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

  1. Lancelot

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

    Баллы:
    123
    Skype:
    lancelool
    Имя в Minecraft:
    Lancelool
    В ****у Денвер.
    Я не на одном хосте испробовал webmcr, везде одни и те же проблемы.
     
  2. Хостинг MineCraft
    <
  3. satan_007

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

    Баллы:
    103
    Skype:
    satan_0007
    Имя в Minecraft:
    satan_007
    Хостинг provisov.net все загрузилось! Не одного варнинга, html код нормально пашет. http://skin.mcdia.ru
     
  4. Lancelot

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

    Баллы:
    123
    Skype:
    lancelool
    Имя в Minecraft:
    Lancelool
    МБ у меня что сломалось...
     
  5. satan_007

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

    Баллы:
    103
    Skype:
    satan_0007
    Имя в Minecraft:
    satan_007
    Попробуй добавить в .htacess
    Код:
    php_flag magic_quotes_gpc Off
     
    Lancelot нравится это.
  6. Автор темы
    NC22

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

    Баллы:
    153
    Имя в Minecraft:
    NC22
    Ну так предоставь площадку для тестов, если уверен, что дело не в кавычках. Проблему повторить не удалось.

    Версия была скачана неделю назад? см. сообщение

    В редакторе есть функция вывода исходного кода как и раньше. Но можно удалить редактор - style/news/news_add.html - удалить 2 строчки tinymce

    слишком поверхностный ответ. Можно номер версии, мб адрес хостера.
     
    slavik123123123, Angel of death и Lancelot нравится это.
  7. никио

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

    Баллы:
    123
    Skype:
    googletools
    Имя в Minecraft:
    Googlers
    :Dтема на 155 страниц
     
    DragonX и Angel of death нравится это.
  8. Ur4uk

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

    Баллы:
    103
    Skype:
    Hannyfeo
    Я на html и вставлял. Тут дело в js.
     
  9. никио

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

    Баллы:
    123
    Skype:
    googletools
    Имя в Minecraft:
    Googlers
    А не лучше vds взять? чем парить мозги с обычными хостами.
     
  10. Ur4uk

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

    Баллы:
    103
    Skype:
    Hannyfeo
    Там не мой хост.. проблему решил. Изображения вставил таким кодом <img src=img.jpg>
     
  11. martyanov12

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

    Баллы:
    63
    Skype:
    martyanov12th
    Имя в Minecraft:
    martyanov12
    Нет. Связать худо-бедно у меня вышло. Только есть одно "но". У меня основная CMS - xenForo, и мне надо чтобы remember_key в таблице паролей xenForo сошелся со сгенерированным лаунчером кодом. Вроде видит, а шифрует как-то не так.
    В xenForo я полагаю SHA1+SHA256+SALT, только вот черт его знает...


    UPDATED.
    Все оказалось проще. Фикс кривой, поставил основные файлы (они уже настроены были).
     
  12. Tereror

    Tereror Старожил

    Баллы:
    103
    Поставил новую версию и задался вопросом: "Где менять меню сверху? Раньше в индексе все было, а сейчас где?" Изрыл все что можно, но не нашел...
     
    Сникерсни нравится это.
  13. satan_007

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

    Баллы:
    103
    Skype:
    satan_0007
    Имя в Minecraft:
    satan_007
    instruments/menu_items.php
     
    Lancelot и Tereror нравится это.
  14. Lancelot

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

    Баллы:
    123
    Skype:
    lancelool
    Имя в Minecraft:
    Lancelool
    Благодарю. Решил все проблемы.[DOUBLEPOST=1370084366,1370034433][/DOUBLEPOST]
    помогло.
     
  15. seand

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

    Баллы:
    78
    До этого стояла WEBMCR 2.1, перешел на 2.15, но есть одна проблема... Регистрируюсь - Регистрация завершена Подтвердите ваш почтовый адрес, чтобы разблокировать все действия с аккаунтом - подтвердил, а зайти не могу, пишет Пользователь с таким именем или e-mail'ом не существует
     
  16. Автор темы
    NC22

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

    Баллы:
    153
    Имя в Minecraft:
    NC22
    На днях основной теме исполнился год, время летит :)

    Рад, что многим проект пригодился за этот год. Всем добра.

    @seand, см. здесь . При переходе на новую версию старый конфиг был удален?
     
    alden нравится это.
  17. seand

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

    Баллы:
    78
    Решил проблему, действительно конфиг)
    Осталась еще одна, ссылки в верхней панели не рабочие, .ru/go/control - 404
     
  18. никио

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

    Баллы:
    123
    Skype:
    googletools
    Имя в Minecraft:
    Googlers
    NC22, кстати используй этот код в своем редакторе под новости, и все будет лучше оформлены новости чем городить 10001 и 1 тег <p> в каждое новое предложение.
    PHP:
    Код выполнен в виде одного небольшого класса2выровненный HTML можно получить при помощи нескольких строк:
     
    $align = new alignedXHTML;
    $align->SPACER "  "// устанавливаем отступ по два пробела
    $align->SKIPTAGS = array('a''img''span''sup'); // эти теги трогать не будем
    // допустим, ранее сформированный HTML-код хранится в переменной $html
    $aligned_html $align->parse($html); // получили выровненный HTML
    Класс будет правильно работать при соблюдении следующих условий:
     
    количество открывающих тегов равно количеству закрывающих (т.екод корректный)
    одиночный тег всегда имеет слэш прямо перед закрывающей скобкой (<br/> или <br />, но не <br>)
    Последнее требование является частью стандарта XHTMLпоэтому в итоге класс получил название alignedXHTML.
     
    Основным недостатком рассматриваемого способа является его сравнительно низкое быстродействиеобработка 100 Кб HTML-кода на сервереобслуживающем webew.ruзанимает порядка 0.05 секВидимоупирается здесь всё в низкую производительность PHP (сам код подвергался достаточно тщательной оптимизации), и тут уж ничего не поделаешь3.
     
    Далее приводится непосредственно сам код.
     
    class 
    alignedXHTML
        
    {
        public 
    $SPACER;
        public 
    $OFFSET;
        public 
    $SKIPTAGS;
        function 
    parse($xhtml)
            {
            if (
    is_null($this->SPACER)) {$this->SPACER "\t"; }
            if (
    is_null($this->OFFSET)) {$this->OFFSET 0; }
            if (
    is_null($this->SKIPTAGS)) {
                
    $this->SKIPTAGS = array('a''span''img''sup''sub');
                }
            
    /*
            Теги <textarea>, <pre> и <script> - особенные, и с ними
            придется попотеть.
            Нужно защитить содержимое этих тегов от вмешательства
            при выравнивании: убрать на время, во-первых, переводы строки,
            во-вторых, HTML-теги, которые могут встретиться внутри
            строковых переменных в скриптах
            (точнее, не сами теги, а открывающие и закрывающие скобки).
            */
            
    $xhtml str_replace(array("\x01""\x02""\x03"), ''$xhtml);
            
    $xhtml preg_replace_callback(
                
    '/
                (<(textarea|script|pre)(?:[^>"\']*|"[^"]*"|\'[^\']*\')*>)
                (.*?)
                (<\/\2>)
                /six'
    ,
                
    // модификатор 's' не забываем: точка тут должна совпадать
                // и с символом новой строки; модификатор 'x' позволяет добавлять в шаблон
                // необрабатываемые пробелы и переводы строки, чтобы он лучше читался
                
    create_function(
                    
    '$matches',
                    
    '$tagbody = $matches[3];
                    $tagbody = str_replace("\n", "\x01", $tagbody);
                    $tagbody = str_replace("<", "\x02", $tagbody);
                    $tagbody = str_replace(">", "\x03", $tagbody);
                    return $matches[1] . $tagbody . $matches[4];'
                    
    ),
                
    $xhtml);
           
            
    // регулярное выражение для HTML-тега
            // (модификатор s не нужен, т.к. точки в выражении нет)
            
    $tagpattern '/<(\/?)(\w+)(?:[^>"\']*|"[^"]*"|\'[^\']*\')*>/';
           
            
    // убираем переводы строки внутри тегов (заменяем на пробелы)
            
    $xhtml preg_replace_callback(
                
    $tagpattern,
                
    create_function(
                    
    '$matches',
                    
    'return str_replace("\n", " ", $matches[0]);'
                    
    ),
                
    $xhtml);
           
            
    // теперь обрабатыавем XHTML-код по одной строке
            // (PHP это не умеет, поэтому пришлось вручную)
            
    $start 0;
            
    $final_xhtml '';
            do
                {
                
    $end strpos($xhtml"\n"$start);
                
    $line = ($end !== FALSE)
                    ? 
    substr($xhtml$start$end - ($start 1) )
                    : 
    substr($xhtml$start);
                
    $line ltrim($line); // убираем ведущие пробелы, чтоб не мешали выравнивать
                
    $final_xhtml .=
                    
    str_repeat($this->SPACER$this->OFFSET) .
                    
    preg_replace_callback(
                        
    $tagpattern,
                        array(
    $this'alignXHTMLtags'),
                        
    $line);
                
    $start $end 1;
                }
            while (
    $end !== FALSE);
           
            
    // убираем пустые строки
            
    $final_xhtml preg_replace('/\n\s*(?=\n)/m'''$final_xhtml);
           
            
    // возвращаем обратно содержимое <textarea>, <pre> и <script>
            
    $final_xhtml str_replace("\x01""\n"$final_xhtml);
            
    $final_xhtml str_replace("\x02""<"$final_xhtml);
            
    $final_xhtml str_replace("\x03"">"$final_xhtml);
           
            return 
    $final_xhtml;
            }
           
        function 
    alignXHTMLtags($matches)
            {
            
    $tag $matches[0];
            
    $tagname $matches[2];
            if (
    in_array($tagname$this->SKIPTAGS)) return $tag;
            
    $opening FALSE;
            if (
    $matches[1]) { $this->OFFSET -= 1;  } // тег является закрывающим
            
    elseif (substr($tag, -21) == '/') { ; } // тег является одиночным
            
    else { $opening TRUE; } // если тег не является ни одиночным, ни закрывающим, значит, он открывающий
            
    if ($tagname == 'textarea' OR $tagname == 'pre' OR $tagname == 'script')
                { 
    // эти теги вообще не трогаем, просто перенесем их
                // полностью (со всем содержимым) на новую строку
                
    if ($opening) { $replacement "\n" $tag; }
                else 
    $replacement $tag "\n";
                }
            else
                {
                
    $replacement "\n"
                    
    str_repeat($this->SPACER$this->OFFSET) . $tag "\n"
                    
    str_repeat($this->SPACER$this->OFFSET 1);
                }
            if (
    $opening) { $this->OFFSET += 1; }
            return 
    $replacement;
            }
        }
    1. Это касается случаякогда внутри тегов <textareaимеются переводы строкиЕсли при обработке кода никак их не защититьто в содержимое тега добавятся символыиспользуемые для выравнивания кодачто приведет к искажению данных (по этой же причине нельзя и просто отмахнуться от переводов строкизаменив их на пробелы — для этого все манипуляции с непечатаемыми символами).
    С тегами <preи <scriptситуация еще сложнеев их содержимом помимо переводов строки могут встретиться еще и HTML-тегикоторые будут выравниваться наряду с остальным HTML-кодомесли это специально не предотвратить (напримерзаменив скобки тегов на что-нибудь на время выравниванияа потом вернуть их обратно).
    Эта проблема также решается с помощью непечатаемых символов.
     
    2. Писать через классы пришлось из
    -за тогочто в callback-функциювызываемую в preg_replace_callback(), невозможно нормальным способом передать никакие аргументыкроме собственно массива совпаденийи уж тем более никак нельзя получить их обратно
     
    3. Из этих 0.05 сек 60
    составляет непосредственно выравнивание тегов35— замена переводов строки на пробелы внутри тегов и около 5— удаление пустых строк.
    Если в коде встречаются <textarea>, <preи <script>, время работы возрастает еще на несколько процентов.
    Работу кода можно ускорить почти в три разаесли использовать для внутренности тегов выражения /<(\/?)(\w+)(?:[^>"\']*|"[^"]*"|\'[^\']*\')*>/ более «грязное» — /<(\/?)(\w+)[^>]*>/. Дополнительный набор альтернатив требуется для случая, когда внутри одинарных или двойных кавычек в теге встретится закрывающая скоба (например, <img alt="3 > 2 - верно!">). В реальной жизни так практически никогда не бывает, и те, кто готов на это положиться, могут использовать второе выражение вместо первого. ⇑
     
  19. Автор темы
    NC22

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

    Баллы:
    153
    Имя в Minecraft:
    NC22
    @никио, Учту, но так ли нужна в данном случае логика на стороне сервера? Часть важных настроек TinyMCE тоже вынесу.
    Абзацы генерируются потому что TinyMCE так настроен. Сейчас для переноса строки можно использовать shift+enter, либо в index.php в функции LoadTinyMCE добавить по аналогии $tmce .= ' force_br_newlines : true,';
    На счет выравнивания не осведомлен, но думаю оно предусмотрено.
     
  20. Jhutf

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

    Баллы:
    63
    Имя в Minecraft:
    Jhutf
    У меня возникла проблема с Iconomy. На сайте пишет:
    Код:
    <b>Warning</b>:  mysql_num_rows() expects parameter 1 to be resource, boolean given in <b>****/instruments/user.class.php</b> on line <b>236</b><br />
    Потом поковырялся в логе и нашел там такое:
    Код:
    < SQLError: [SELECT `balance` FROM `1` WHERE `username`='demo'] 
    Как я понял, сейчас используется таблица "1". Кто знает, как это можно исправить?
     
  21. satan_007

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

    Баллы:
    103
    Skype:
    satan_0007
    Имя в Minecraft:
    satan_007
    Мои экстросенсорные способности говорят, что ты в конфиге поменял с Iconomy - false на true. Но ты не прав. Ты должен был поменять на 'Iconomy'. Оммм... :)
     
    Jhutf нравится это.

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