€
$
₴
₽
EN
RU
Vmeste.EU
Лента
Каталог
Файлы
Форумы
Услуги
Основное
Radiotalk
Пользовательское
VOC++ чаты (больше не поддерживаются)
3 •
Посмотреть все темы
Запуск VOC++ чата на "PHP 5.6" - без проблем! И что с PHP7.1?
1
2
3
20090
Dimitry
@Dimitry
25.03.2018
Запуск VOC++ чата на "PHP 5.6" - без проблем! И что с PHP7.1/7.4?
Запустил чат на 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 в настройках вашего домена.
327
Геннадий
@mychatik
29.03.2018
Протестировал на рабочем чате.
После внесения поправок и перехода на
PHP5.6
- чат работает, но не принимает кириллицу.
В сообщениях проходят смайлы, цифры и английские буквы. Вместо текста на русском языке - пустое сообщение.
20090
Dimitry
@Dimitry
29.03.2018
Это единственный баг?
Если да, то может быть стоит им заняться.
20090
Dimitry
@Dimitry
18.06.2018
Кажется понял причину кодировки, достаточно прописать в common файле такое
ini_set('default_charset','cp1251');
327
Геннадий
@mychatik
20.06.2018
В принципе, проблема локализована.
Чат заработал! Сообщения идут.
Но сдохла викторина 🙁
Похоже, как отвалился коннект с базой.
В качестве ответа принимает всё подряд и вместо символов правильного ответа - вопросительные знаки.
Потестировал ещё - викторина считает количество знаков и только по этому параметру принимает ответ.
Если знаков меньше, чем в условии вопроса - то не примет ответ, а если больше - то принимает.
Вызов ТОП-10 по команде
!топ
- работает.
===================
Судя по всему, проблема теперь в
mysql_connect
- нужно менять на
mysqli_connect
.
Как-то так...
Расширение —
mysql_connect()
— устарело, начиная с версии PHP 5.5.0, и будет удалено в будущем. Используйте вместо него
MySQLi
или
PDO_MySQL
.
У меня сделан вывод статистики ответов и награда для пользователей, находящихся в 10-ке лидеров через
mysqli_connect
- всё работает без изменений.
Но только я поставил обращение к базе через
mysql_connect
- сразу же пропала статистика.
20090
Dimitry
@Dimitry
20.06.2018
mysql_connect - работает нормально в 5.6, поэтому должно работать, но в версии 5.6 всё сделано для UTF-8, поэтому нужно видимо и для базы задать кодировку верную, напиши мне лично и решим проблему, потом можем написать все нужные исправления для работы на 5.6. А версию 5.3 я планирую удалить в будущем ...
20090
Dimitry
@Dimitry
25.06.2018
Викторина исправлена добавлением mb_internal_encoding("cp1251"); - наверху изменил описание.
20090
Dimitry
@Dimitry
26.06.2018
Градиент исправлен в пункте 2.
Кланы и некоторые модули исправляются в пункте 3.
20090
Dimitry
@Dimitry
26.06.2018
1й пункт обновлён для правильной работы загрузки файлов.
20090
Dimitry
@Dimitry
27.06.2018
Добавлен пункт 4 с исправлением, в некоторых чатах может не выводиться gif вложения по хештегу, только jpg работают.
20090
Dimitry
@Dimitry
20.08.2018
Викторина работает ещё медленнее после обновлений на сервере
Ответ на викторину приходит на 2-3 сек дольше чем раньше. Проблема в том что код VOC++ очень старый и с новой базой данных он работает ещё хуже чем до этого. Если кому то нужно исправить такую же проблему пишите мне, попробуйте просто изменить таблицы в базе с
MyISAM => InnoDB
.
20090
Dimitry
@Dimitry
24.08.2018
Добавлен новый пункт 5, решает проблему регистра поиска по нику в админке.
22
Артем
@Skriptoff
27.08.2018
4й пункт,
if (($type=="JPG") || ($type=="JPEG"))
Это точно файл sender.php в корне? там такой переменной даже нет, я пересмотрел все сборки что у нас на установке стоят, искал и по всем файлам чата.
Возможно это кастомный код
327
Геннадий
@mychatik
28.08.2018
Skriptoff
пишет:
Это точно файл sender.php в корне? там такой переменной даже нет, я пересмотрел все сборки что у нас на установке стоят, искал и по всем файлам чата.
Возможно это кастомный код
Да, точно!
Этот код (он выводит картинки в чат) стоит во всех чатах со старыми вложениями (или там, где эти вложения когда-то стояли).
И вообще, в инструкции по установке вложений (старых) нигде нет этого кода.
Написано только:
Для того, чтобы работали смайлы версии 2.0 и вложения - нужно применять исправленный sender.php
и прилагается файл с ошибкой.
Просмотрел несколько сборок, которые есть у меня - везде с этим косяком.
Что удивительно, до перехода на php5.6, ошибка никак не проявлялась. Всё работало.
20090
Dimitry
@Dimitry
28.08.2018
Да, работали с чатом
mychatik
, поэтому может быть только его код, и строки могут не совпадать...
Для запуска чата VOC достаточно пунктов
1 и 2
, чтобы заработали некоторые модули, нужно сделать ещё и
3
.
Пункты 4, 5, 6 это мелкие исправления, таких у каждого может быть много, зависит от сборки!
45
Инкогнито
@Инкогнито
03.09.2018
Я конечно извиняюсь, но в 5 пункте не
admin_work
s
.php
а
admin_work.php
=======================
Модератор:
Спасибо, исправлено.
45
Инкогнито
@Инкогнито
05.09.2018
В чате не работают все кнопки админские, пишет "не найден", и банк не работает, есть по этому какие-то действия?
Так же не работал поиск в редакторе, сделали в файле adm_cmd.php пункт 5 и он заработал
20090
Dimitry
@Dimitry
06.09.2018
Про adm_cmd.php информацию добавил, админские кнопки должны работать, не должно быть связано со сменой версии.
Не найден? Какой урл у этого файла и как выглядит эта страница?
Если что mychatik может помочь, ну или Артем.
45
Инкогнито
@Инкогнито
07.09.2018
Сделал откат, вернул 5,3 версию пхп все работает хорошо, ставлю снова 5,6 делаю пункты и снова, кнопки админа не работают, а так же админка которая в чате, не работает из замеченного Редактор пользовательских данных (поиск пользователей), Смена топика, Редактор комнат, Банк (но это ладно, это дополнительный мод)
20090
Dimitry
@Dimitry
07.09.2018
Сделай 5.6 с всеми выполненными пунктами и ссылку скинь, я зайду гляну.
А то завтра уже отключение.