Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Общие вопросы по PHP Ошибка фотоальбома после обновления PHP

Ошибка фотоальбома после обновления PHP


     09.04.2013    Общие вопросы по PHP, Модули    3015

вопрос
Здравствуйте, после обновления на сервере PHP c 5.2 на 5.4 возникла проблема с модулем фотоальбомы 0.09, версия DLE 9.7:

В админке модуля фотоальбомы:
Strict Standards: Only variables should be passed by reference in /home/virtwww/****/http/engine/inc/photo.php on line 2462 



содержимое строки 2462:

$info_[ $i ]= '<tr><td>' . str_replace( end( explode( '/', $f )), '<span class="namer">' . end( explode( '/', $f )) . '</span>', $f )  . '</td><td align="center">' . ( is_readable( $f ) ? 'ok' : '<font color="red">x</font>' ) . '</td><td align="center">' . ( is_writeable( $f ) ? 'ok' : '<font color="red">x</font>' ) . '</td><td align="center">' . decoct(0777 & fileperms( $f )). '</td></tr>';


В самом фотоальбоме при просмотре фото:
Strict Standards: Only variables should be passed by reference in /home/virtwww/****/http/engine/photo/photo_nucleus/functions/photo.php on line 364 Strict Standards: Only variables should be passed by reference in /home/virtwww/****/http/engine/photo/photo_nucleus/functions/photo.php on line 364




содержимое строки 364:

if( strtolower( end( explode( '.', $src ) ) ) == "gif" ){

Ответил: Sander


Как писал celsoft, на php5.4 пойдет только utf8 версия движка и соответственно модули.

Комментарии пользователей (2)

vitnet
218

2171 | 930

vitnet - 17 октября 2013 21:43 - Эксперт

Столкнулся сегодня с подобной проблемой, пробуйте:
$info_[$i] = '<tr><td>' . str_replace( end( explode( '/', $f )), '<span class="namer">' . end( explode( '/', $f )) . '</span>', $f )  . '</td><td align="center">' . ( is_readable( $f ) ? 'ok' : '<font color="red">x</font>' ) . '</td><td align="center">' . ( is_writeable( $f ) ? 'ok' : '<font color="red">x</font>' ) . '</td><td align="center">' . decoct(0777 & fileperms( $f )). '</td></tr>';

заменить на
$ex =  explode( '/', $f );
$info_[$i] = '<tr><td>' . str_replace( end($ex), '<span class="namer">' . end( $ex )) . '</span>', $f )  . '</td><td align="center">' . ( is_readable( $f ) ? 'ok' : '<font color="red">x</font>' ) . '</td><td align="center">' . ( is_writeable( $f ) ? 'ok' : '<font color="red">x</font>' ) . '</td><td align="center">' . decoct(0777 & fileperms( $f )). '</td></tr>';


if( strtolower( end( explode( '.', $src ) ) ) == "gif" ) {

заменить на
$tip =  explode( '.', $src );
if ( strtolower( end( $tip ) ) == "gif" ) {

RedRat
15 | 10

RedRat - 6 июля 2014 16:27 - Юзер

Обновитесь на Марка, только он поддерживает PHP 5.4.

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы