Вы не зашли.

#1 

Dimitry
Ниндзя по зачистке капусты
Имя: Дмитрий
Откуда: Германия
Зарегистрирован: 2003-04-18
Сообщений: 18728
На форуме: 1809 час.
Репутация: 1241 (99%) ±
Инфо  Вебсайт  Написать

Запуск VOC++ чата на "PHP 5.6" без проблем!

Запустил чат на php5.6, исправил критические проблемы, после чего чат запустился, однако есть ещё другие мелкие проблемки.
Необходимые найденные исправления доступны ниже:

1. В файл inc_comon.php в самом верху добавить такие зелёные строки:

<?php

//MIGRATION to PHP5.6
ini_set('default_charset','cp1251');
mb_internal_encoding("cp1251");
foreach($GLOBALS as $k=>$v) if($k[0]=="_") {
    if($k=="_FILES")  ${"HTTP_POST$k"}=$GLOBALS[$k]; else ${"HTTP$k"."_VARS"}=$GLOBALS[$k];
}

2. В файле events.php найти 73 строку и меняем на новую, изменения синим:

if(function_exists($eventHandlers[$i]["handler"])) $eventHandlers[$i]["handler"]($HParam, $LParam);

3. Чат уже работает, но есть другие файлы с номерами строк где возможны ошибки, просто удаляем красные &:

admin/clan_list.php:19:                         $url = fsockopen($address, 80, &$errno, &$errstr, 30);
edit_clan.php:24:                                  $url = fsockopen($address, 80, &$errno, &$errstr, 30);
plugins/antiproxy/Client.php:632:           $this->socket = fsockopen( $host, $port, &$this->reply, &$this->replyString, 5);
powmod/friends/friends.php:690:            array_push( &$approval_friend, $row_a['friend_name'] );
powmod/friends/friends.php:691:            array_push( &$approval_friend_id, $row_a['fid'] );

SSH команда поиска лишних &, кроме папки форума, для экспертов:

egrep -n -R '[( ]{1}&\$' ./|grep -v Binary|grep -v 'function '|grep -v '/forum/'

4. Если присутствует нижеприведенная строка 341 в файле sender.php, то добавим пропущенный знак равно =, добавьте его так как в строке ниже:

if (($type=="JPG") || ($type=="JPEG")) $open_file=imagecreatefromjpeg($file.$text);

5. В файле admin_work.php и в файле adm_cmd.php находим все функции strcasecmp и заменяем на эту:

strnatcasecmp

6. У кого не работает вход в админку, нужно в файле admin/check_session.php изменить 2 верхние строки так:

<?php
$lang = "";
while (list($var, $val) = each($_GET)) $$var  = $val;
while (list($var, $val) = each($_POST)) $$var  = $val;

7. >>> Этот пункт по желанию. Рекомендация для быстрой работы викторины, для всех таблиц в базе данных через phpMyAdmin установить вид движка InnoDB. Зайти в phpMyAdmin, нажать на таблицу, затем в Операции через верхнее меню, и там можно выбрать движок базы InnoDB и конвертировать.

8. В чужой старой сборке найдена проблема кодировки при написании в чате, исправлять надо в файле sender.php найдя 2 строки с функцией htmlspecialchars и приведя их к такому виду:

<script language="JavaScript" type="text/javascript"> alert('<?php echo htmlspecialchars($MsgToPass); ?>');</script>
и
$mesg = htmlspecialchars($mesg);

оказалось таких файлов очень много, что это за сборка не понятно, чтобы найти все такие файлы, нужно выполнить команду в папке чата через шелл и во всех найденных функциях вырезать красный код: , NULL, '' :

egrep -n -R 'htmlspecialchars' |grep 'NULL,'

Для запуска чата VOC++ на версии 5.6 достаточно пунктов 1 и 2, а чтобы заработали некоторые модули, нужно сделать ещё и 3.
Пункты 4, 5, 6 это мелкие исправления, таких у каждого может быть много, зависит от сборки! Номер строк может также не совпадать, если файлы менялись. После всех исправлений, не забудьте переключить версию PHP на 5.6 через панель Webserv24 в настройках вашего домена.


Моя анкета на vmeste.eu
Если сообщение Вам помогло, отблагодарите участника повысив его репутацию!
PS. То, что нас не убивает, то делает нас сильнее!

Неактивен

#2 

mychatik
Moderator
Имя: Геннадий
Зарегистрирован: 2016-04-24
Сообщений: 250
На форуме: 62 час.
Репутация: 19 (95%) ±
Инфо  Вебсайт  Написать

Протестировал на рабочем чате.

После внесения поправок и перехода на PHP5.6 - чат работает, но не принимает кириллицу.
В сообщениях проходят смайлы, цифры и английские буквы. Вместо текста на русском языке - пустое сообщение.

Неактивен

#3 

Dimitry
Ниндзя по зачистке капусты
Имя: Дмитрий
Откуда: Германия
Зарегистрирован: 2003-04-18
Сообщений: 18728
На форуме: 1809 час.
Репутация: 1241 (99%) ±
Инфо  Вебсайт  Написать

Это единственный баг?
Если да, то может быть стоит им заняться.


Моя анкета на vmeste.eu
Если сообщение Вам помогло, отблагодарите участника повысив его репутацию!
PS. То, что нас не убивает, то делает нас сильнее!

Неактивен

#4 

Dimitry
Ниндзя по зачистке капусты
Имя: Дмитрий
Откуда: Германия
Зарегистрирован: 2003-04-18
Сообщений: 18728
На форуме: 1809 час.
Репутация: 1241 (99%) ±
Инфо  Вебсайт  Написать

Кажется понял причину кодировки, достаточно прописать в common файле такое

ini_set('default_charset','cp1251');


Моя анкета на vmeste.eu
Если сообщение Вам помогло, отблагодарите участника повысив его репутацию!
PS. То, что нас не убивает, то делает нас сильнее!

Неактивен

#5 

mychatik
Moderator
Имя: Геннадий
Зарегистрирован: 2016-04-24
Сообщений: 250
На форуме: 62 час.
Репутация: 19 (95%) ±
Инфо  Вебсайт  Написать

В принципе, проблема локализована.

Чат заработал! Сообщения идут.

Но сдохла викторина sad
Похоже, как отвалился коннект с базой.
В качестве ответа принимает всё подряд и вместо символов правильного ответа - вопросительные знаки.

https://imgs.su/upload/161/1220612572.png

Потестировал ещё - викторина считает количество знаков и только по этому параметру принимает ответ.
Если знаков меньше, чем в условии вопроса - то не примет ответ, а если больше - то принимает.
Вызов ТОП-10 по команде !топ - работает.

===================

Судя по всему, проблема теперь в mysql_connect - нужно менять на mysqli_connect.
Как-то так...

Расширение — mysql_connect() — устарело, начиная с версии PHP 5.5.0, и будет удалено в будущем. Используйте вместо него MySQLi или PDO_MySQL.

У меня сделан вывод статистики ответов и награда для пользователей, находящихся в 10-ке лидеров через mysqli_connect - всё работает без изменений.
Но только я поставил обращение к базе через mysql_connect - сразу же пропала статистика.

Неактивен

#6 

Dimitry
Ниндзя по зачистке капусты
Имя: Дмитрий
Откуда: Германия
Зарегистрирован: 2003-04-18
Сообщений: 18728
На форуме: 1809 час.
Репутация: 1241 (99%) ±
Инфо  Вебсайт  Написать

mysql_connect - работает нормально в 5.6, поэтому должно работать, но в версии 5.6 всё сделано для UTF-8, поэтому нужно видимо и для базы задать кодировку верную, напиши мне лично и решим проблему, потом можем написать все нужные исправления для работы на 5.6. А версию 5.3 я планирую удалить в будущем ...


Моя анкета на vmeste.eu
Если сообщение Вам помогло, отблагодарите участника повысив его репутацию!
PS. То, что нас не убивает, то делает нас сильнее!

Неактивен

#7 

Dimitry
Ниндзя по зачистке капусты
Имя: Дмитрий
Откуда: Германия
Зарегистрирован: 2003-04-18
Сообщений: 18728
На форуме: 1809 час.
Репутация: 1241 (99%) ±
Инфо  Вебсайт  Написать

Викторина исправлена добавлением mb_internal_encoding("cp1251"); - наверху изменил описание.


Моя анкета на vmeste.eu
Если сообщение Вам помогло, отблагодарите участника повысив его репутацию!
PS. То, что нас не убивает, то делает нас сильнее!

Неактивен

#8 

Dimitry
Ниндзя по зачистке капусты
Имя: Дмитрий
Откуда: Германия
Зарегистрирован: 2003-04-18
Сообщений: 18728
На форуме: 1809 час.
Репутация: 1241 (99%) ±
Инфо  Вебсайт  Написать

Градиент исправлен в пункте 2.
Кланы и некоторые модули исправляются в пункте 3.


Моя анкета на vmeste.eu
Если сообщение Вам помогло, отблагодарите участника повысив его репутацию!
PS. То, что нас не убивает, то делает нас сильнее!

Неактивен

#9 

Dimitry
Ниндзя по зачистке капусты
Имя: Дмитрий
Откуда: Германия
Зарегистрирован: 2003-04-18
Сообщений: 18728
На форуме: 1809 час.
Репутация: 1241 (99%) ±
Инфо  Вебсайт  Написать

1й пункт обновлён для правильной работы загрузки файлов.


Моя анкета на vmeste.eu
Если сообщение Вам помогло, отблагодарите участника повысив его репутацию!
PS. То, что нас не убивает, то делает нас сильнее!

Неактивен

#10 

Dimitry
Ниндзя по зачистке капусты
Имя: Дмитрий
Откуда: Германия
Зарегистрирован: 2003-04-18
Сообщений: 18728
На форуме: 1809 час.
Репутация: 1241 (99%) ±
Инфо  Вебсайт  Написать

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


Моя анкета на vmeste.eu
Если сообщение Вам помогло, отблагодарите участника повысив его репутацию!
PS. То, что нас не убивает, то делает нас сильнее!

Неактивен

#11 

Dimitry
Ниндзя по зачистке капусты
Имя: Дмитрий
Откуда: Германия
Зарегистрирован: 2003-04-18
Сообщений: 18728
На форуме: 1809 час.
Репутация: 1241 (99%) ±
Инфо  Вебсайт  Написать

Викторина работает ещё медленнее после обновлений на сервере

Ответ на викторину приходит на 2-3 сек дольше чем раньше. Проблема в том что код VOC++ очень старый и с новой базой данных он работает ещё хуже чем до этого. Если кому то нужно исправить такую же проблему пишите мне, попробуйте просто изменить таблицы в базе с MyISAM => InnoDB.


Моя анкета на vmeste.eu
Если сообщение Вам помогло, отблагодарите участника повысив его репутацию!
PS. То, что нас не убивает, то делает нас сильнее!

Неактивен

#12 

Dimitry
Ниндзя по зачистке капусты
Имя: Дмитрий
Откуда: Германия
Зарегистрирован: 2003-04-18
Сообщений: 18728
На форуме: 1809 час.
Репутация: 1241 (99%) ±
Инфо  Вебсайт  Написать

Добавлен новый пункт 5, решает проблему регистра поиска по нику в админке.


Моя анкета на vmeste.eu
Если сообщение Вам помогло, отблагодарите участника повысив его репутацию!
PS. То, что нас не убивает, то делает нас сильнее!

Неактивен

#13 

Skriptoff
Moderator
Имя: Артем
Откуда: Харьков
Зарегистрирован: 2016-03-19
Сообщений: 17
На форуме: 3 час.
Репутация: 3 (100%) ±
Инфо  Вебсайт  Написать

4й пункт,

if (($type=="JPG") || ($type=="JPEG"))

Это точно файл sender.php в корне? там такой переменной даже нет, я пересмотрел все сборки что у нас на установке стоят, искал и по всем файлам чата.
Возможно это кастомный код


Мои контакты:
skype: Skriptoff, Меня можно найти на Vmeste.eu, Mvoc.ru

Неактивен

#14 

mychatik
Moderator
Имя: Геннадий
Зарегистрирован: 2016-04-24
Сообщений: 250
На форуме: 62 час.
Репутация: 19 (95%) ±
Инфо  Вебсайт  Написать

Сообщение от Skriptoff:

Это точно файл sender.php в корне? там такой переменной даже нет, я пересмотрел все сборки что у нас на установке стоят, искал и по всем файлам чата.
Возможно это кастомный код

Да, точно!
Этот код (он выводит картинки в чат) стоит во всех чатах со старыми вложениями (или там, где эти вложения когда-то стояли).
И вообще, в инструкции по установке вложений (старых) нигде нет этого кода.
Написано только:

Для того, чтобы работали смайлы версии 2.0 и вложения - нужно применять исправленный sender.php

и прилагается файл с ошибкой.
Просмотрел несколько сборок, которые есть у меня - везде с этим косяком.
Что удивительно, до перехода на php5.6, ошибка никак не проявлялась. Всё работало.

Неактивен

#15 

Dimitry
Ниндзя по зачистке капусты
Имя: Дмитрий
Откуда: Германия
Зарегистрирован: 2003-04-18
Сообщений: 18728
На форуме: 1809 час.
Репутация: 1241 (99%) ±
Инфо  Вебсайт  Написать

Да, работали с чатом mychatik, поэтому может быть только его код, и строки могут не совпадать...
Для запуска чата VOC достаточно пунктов 1 и 2, чтобы заработали некоторые модули, нужно сделать ещё и 3.
Пункты 4, 5, 6 это мелкие исправления, таких у каждого может быть много, зависит от сборки!


Моя анкета на vmeste.eu
Если сообщение Вам помогло, отблагодарите участника повысив его репутацию!
PS. То, что нас не убивает, то делает нас сильнее!

Неактивен

#16 

Инкогнито
Новичок
Зарегистрирован: 2017-10-27
Сообщений: 10
На форуме: 2 час.
Репутация: 1 (100%) ±
Инфо  Написать

Я конечно извиняюсь, но в 5 пункте не admin_works.php а admin_work.php


=======================

Модератор: Спасибо, исправлено.

Неактивен

#17 

Инкогнито
Новичок
Зарегистрирован: 2017-10-27
Сообщений: 10
На форуме: 2 час.
Репутация: 1 (100%) ±
Инфо  Написать

В чате не работают все кнопки админские, пишет "не найден", и банк не работает, есть по этому какие-то действия?

Так же не работал поиск в редакторе, сделали в файле adm_cmd.php пункт 5 и он заработал

Неактивен

#18 

Dimitry
Ниндзя по зачистке капусты
Имя: Дмитрий
Откуда: Германия
Зарегистрирован: 2003-04-18
Сообщений: 18728
На форуме: 1809 час.
Репутация: 1241 (99%) ±
Инфо  Вебсайт  Написать

Про adm_cmd.php информацию добавил, админские кнопки должны работать, не должно быть связано со сменой версии.
Не найден? Какой урл у этого файла и как выглядит эта страница?
Если что mychatik может помочь, ну или Артем.


Моя анкета на vmeste.eu
Если сообщение Вам помогло, отблагодарите участника повысив его репутацию!
PS. То, что нас не убивает, то делает нас сильнее!

Неактивен

#19 

Инкогнито
Новичок
Зарегистрирован: 2017-10-27
Сообщений: 10
На форуме: 2 час.
Репутация: 1 (100%) ±
Инфо  Написать

Сделал откат, вернул 5,3 версию пхп все работает хорошо, ставлю снова 5,6 делаю пункты и снова, кнопки админа не работают, а так же админка которая в чате, не работает из замеченного Редактор пользовательских данных (поиск пользователей), Смена топика, Редактор комнат, Банк (но это ладно, это дополнительный мод)

Неактивен

#20 

Dimitry
Ниндзя по зачистке капусты
Имя: Дмитрий
Откуда: Германия
Зарегистрирован: 2003-04-18
Сообщений: 18728
На форуме: 1809 час.
Репутация: 1241 (99%) ±
Инфо  Вебсайт  Написать

Сделай 5.6 с всеми выполненными пунктами и ссылку скинь, я зайду гляну.
А то завтра уже отключение.


Моя анкета на vmeste.eu
Если сообщение Вам помогло, отблагодарите участника повысив его репутацию!
PS. То, что нас не убивает, то делает нас сильнее!

Неактивен

[ Generated in 0.008 seconds, 10 queries]