ExBB Community ExBB Community
 Сайт проекта ExBB Общение объединяет!
Войдите на форум при помощиВойти через loginza
 Чат на форуме      Помощь      Поиск      Пользователи     BanList BanList


 Страниц (2): [1] 2 »   

> Описание: https://stackoverflow.com/questions/48161526/php-7-2-function-create-function-is-deprecated
Speaker
Отправлено: 8 июля 2019 — 11:48
Post Id



Пользователь
Newbie


Покинул форум
Сообщений всего: 31
Дата рег-ции: Февр. 2010  
Репутация: 0




После перехода на PHP 7.2 появилась ошибка Function create_function() is Deprecated.
Вот строка из error_log:
Function create_function() is deprecated in /home/.../public_html/forum/include/fm.class.php

Эта функция также обнаружена в файлах:
modules/threadstop/frontindex.php
modules/mailer/Mailer.Class.php

Тема активно обсуждается в сети, например, здесь: https://stackoverflow.com/questi...on-is-deprecated

Сам переписывать функции побоялся. Как эти решения использовать применительно к ExBB?
 
 
Speaker
Отправлено: 11 июля 2019 — 14:31
Post Id



Пользователь
Newbie


Покинул форум
Сообщений всего: 31
Дата рег-ции: Февр. 2010  
Репутация: 0




Speaker пишет:
Как эти решения использовать применительно к ExBB?


Помогите, пожалуйста. Неужели кроме меня никого не коснулась эта проблема?
 
 
NordWest
Отправлено: 11 июля 2019 — 23:08
Post Id



Пользователь
Super Member


Покинул форум
Сообщений всего: 981
Дата рег-ции: Дек. 2011  
Откуда: Северо-Запад
Репутация: 74




Постараюсь посмотреть на выходных, если раньше никто не подскажет.
 
 
1Bot
Отправлено: 12 июля 2019 — 12:04
Post Id



Пользователь
Super Member


Покинул форум
Сообщений всего: 767
Дата рег-ции: Апр. 2009  
Откуда: Днепропетровск
Репутация: 69




Speaker, какая версия форума Вами используется?
 
 
Speaker
Отправлено: 14 июля 2019 — 11:59
Post Id



Пользователь
Newbie


Покинул форум
Сообщений всего: 31
Дата рег-ции: Февр. 2010  
Репутация: 0




Cудя по копирайту в коде файлов - ExBB v.1.1. Кодировка utf-8.
 
 
1Bot
Отправлено: 15 июля 2019 — 14:50
Post Id



Пользователь
Super Member


Покинул форум
Сообщений всего: 767
Дата рег-ции: Апр. 2009  
Откуда: Днепропетровск
Репутация: 69




Speaker
Найдены несовместимые с PHP v7.2 участки кода в основном классе fm.
Сделана замена на анонимные функции устаревшей функции create_function().
Прикрепляю исправленный файл ExBB-1.1.3/include/fm.class.php из последнего дистрибутива.

Скачать файл: (для скачивания файла Войдите или зарегистрируйтесь)
Скачан раз: 3
 
 
Speaker
Отправлено: 16 июля 2019 — 06:45
Post Id



Пользователь
Newbie


Покинул форум
Сообщений всего: 31
Дата рег-ции: Февр. 2010  
Репутация: 0




1Bot, спасибо большое!

А что делать с этими файлами?

modules/threadstop/frontindex.php
modules/mailer/Mailer.Class.php

В них тоже есть create_function()

(Отредактировано автором: 16 июля 2019 — 07:01)

 
 
1Bot
Отправлено: 16 июля 2019 — 06:56
Post Id



Пользователь
Super Member


Покинул форум
Сообщений всего: 767
Дата рег-ции: Апр. 2009  
Откуда: Днепропетровск
Репутация: 69




Speaker , в остальные файлы тоже желательно внести правки, но и без них будет работать, если не исполтзуются чат и почтовые функции.
 
 
Speaker
Отправлено: 16 июля 2019 — 07:03
Post Id



Пользователь
Newbie


Покинул форум
Сообщений всего: 31
Дата рег-ции: Февр. 2010  
Репутация: 0




1Bot, заменил файл на новый, но теперь форум вообще не отображается и выдает HTTP ERROR 500.
 
 
electron
Отправлено: 16 июля 2019 — 07:07
Post Id



Администратор
ExBB Team


Покинул форум
Сообщений всего: 3889
Дата рег-ции: Февр. 2009  
Репутация: 340




Speaker , опуститесь на версию пхп 7.0 , на ней форум стабильно работает
 
 
Speaker
Отправлено: 16 июля 2019 — 07:57
Post Id



Пользователь
Newbie


Покинул форум
Сообщений всего: 31
Дата рег-ции: Февр. 2010  
Репутация: 0




electron пишет:
Speaker , опуститесь на версию пхп 7.0 , на ней форум стабильно работает



Попробовал переключить на 7.0, и все равно ERROR 500

Возможно, у нас несостыковка с версиями форума. Я вроде ставил 2.0 (utf-8 по умолчанию). В копирайте вижу Powered by ExBB FM 1.0 Final, а в коде страниц ExBB v.1.1

Ваш файл почему-то в Windows-1251. На всякий случай я попробовал его перекодировать в utf, но это не помогло.

(Отредактировано автором: 16 июля 2019 — 07:58)

 
 
Speaker
Отправлено: 16 июля 2019 — 10:50
Post Id



Пользователь
Newbie


Покинул форум
Сообщений всего: 31
Дата рег-ции: Февр. 2010  
Репутация: 0




1Bot, спасибо, разобрался. Видимо, проблема в несовпадении версий. Я просто скопировал из Вашего файла все строки соответствующие моим с create_function и все заработало! Но осталась еще одна некритическая ошибка, которую хотелось бы убрать.
Error_log пишет:
Undefined offset: 2 in ...public_html/forum/include/common.php on line 39

Если я правильно понимаю, что-то не так с форматом урла в админке. Пробовал переписать в файле header('Location: http://' . $set_url[2] на header('Location: https://' . $set_url[2] (сайт на https). В админке пробовал разные варианты url, но не помогло. Что тут можно сделать?
 
 
1Bot
Отправлено: 16 июля 2019 — 15:19
Post Id



Пользователь
Super Member


Покинул форум
Сообщений всего: 767
Дата рег-ции: Апр. 2009  
Откуда: Днепропетровск
Репутация: 69




Speaker,
Форум работает, с нуля скачана последняя версия дистрибутива ExBB 1.1.3, сделана замена файла /include/fm.class.php
OS: Centos 6 x86_64
PHP: 7.2.20 из репозитория remi-php72
(Добавление)
Speaker пишет:
еще одна некритическая ошибка, которую хотелось бы убрать.
Error_log пишет:
Undefined offset: 2 in ...public_html/forum/include/common.php on line 39


В файле /include/common.php
заменить
CODE:
if (@$req_url[2] == @$set_url[2] && $req_url[1] != $set_url[1]) {
header('Location: http://' . $set_url[2] . $req_url[3] . ( ( $_SERVER['QUERY_STRING'] ? '?' . $_SERVER['QUERY_STRING'] : '' ) ));
}

на
CODE:
if (
isset($req_url[1]) &&
isset($req_url[2]) &&
isset($set_url[1]) &&
isset($set_url[2]) &&
$req_url[2]==$set_url[2] &&
$req_url[1]!=$set_url[1]
) {
header('Location: http://' . $set_url[2] . $req_url[3] . ( ( $_SERVER['QUERY_STRING'] ? '?' . $_SERVER['QUERY_STRING'] : '' ) ));
}

(Отредактировано автором: 16 июля 2019 — 15:28)

 
 
Speaker
Отправлено: 16 июля 2019 — 17:07
Post Id



Пользователь
Newbie


Покинул форум
Сообщений всего: 31
Дата рег-ции: Февр. 2010  
Репутация: 0




1Bot, спасибо большое. Видимо, у меня все-таки версия 2.0. У меня кодировка utf была изначально.

Странно только, что копирайтах везде написано 1.1.

Подойдет ли Ваш код (для /include/common.php) для 2.0?
 
 
electron
Отправлено: 17 июля 2019 — 06:25
Post Id



Администратор
ExBB Team


Покинул форум
Сообщений всего: 3889
Дата рег-ции: Февр. 2009  
Репутация: 340




Speaker , в теме про версию 2.0 четко написано, что она еще очень сырая , нестабильная и наверняка содержит кучу ошибок. Разработчик этого релиза пока не рекомендовал ее ставить на живой форум
 
 
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Решение проблем »

> Похожие темы: Function create_function() is Deprecated.
Темы Форум Информация о теме Обновление
Не отображается картинка если...
в адресе есть https
Решение проблем Ответов: 9
Автор темы: Guyver
17 октября 2014 — 20:33
Автор: Guyver
Проблема с http - s
Неправильная обработка https
Решение проблем Ответов: 8
Автор темы: Yamaliya
25 марта 2018 — 06:56
Автор: NordWest
ошибка 500
Fatal error: Call to undefined function sqlite_open() in /..... /modules/watches/Watches.php on line 295
Общие вопросы Ответов: 50
Автор темы: elehan2
19 сентября 2013 — 08:02
Автор: NordWest
Ошибка Notice: session_start() [function.session-start]: ps_files_cleanup_dir: opendir(/shared/sessions) failed:
Решение проблем Ответов: 2
Автор темы: team
6 октября 2009 — 14:42
Автор: team
undefined function hash_hmac()
PHP/Perl Ответов: 1
Автор темы: Defenderyk
9 августа 2011 — 18:17
Автор: Defenderyk
 



Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 




Яндекс.Метрика   

Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.1841]     [ ]