Технический сбой

Сайт временно работает в режиме только для чтения, идут восстановительные работы. Приносим свои извинения за неудобства.
DLE FAQ » Все вопросы » Общие вопросы по PHP » Strict Standards: Only variables should be passed by reference in.Как решить?

Strict Standards: Only variables should be passed by reference in.Как решить?


     Все вопросы » Общие вопросы по PHP    1470

вопрос
Вот такая ошибка
Strict Standards: Only variables should be passed by reference in C:\OpenServer\domains\localhost\engine\modules\userphotos.php on line 143


Сам код

//    Инфо о фотографии
                
                $image = $_FILES['Filedata']['tmp_name'];
                $image_size = $_FILES['Filedata']['size'];
                
                $type = end( explode( ".", $_FILES['Filedata']['name'] ) );
                
                
                $image_name = explode( ".", str_replace( " ", "_", $_FILES['Filedata']['name'] ) );
                $image_name = totranslit( $image_name[0] );
                
                $Prefix = $UserName; //time() + rand( 1, 500 );
                $DbFile = "{$image_name}.{$type}";
                $ImageFile = "/uploads/userphotos/{$Prefix}_{$DbFile}";
                $ImageThumbFile = "/uploads/userphotos/thumbs/{$Prefix}_{$DbFile}";


Спасибо всем кто поможет

Ответил: nowheremany


Надо заменить такое
$type = end( explode( ".", $_FILES['Filedata']['name'] ) );

на
$type = explode( ".", $_FILES['Filedata']['name'] );
$type = end( $type );


Сама ошибка возникает изза повышения версии php

3 комментария

wcw2007
Юзер

wcw2007 - -

Вот эта строка

$type = end( explode( ".", $_FILES['Filedata']['name'] ) );

nowheremany
Эксперт

nowheremany - -

***Комментарий удален***

Благодарность принимаю тут Связь

wcw2007
Юзер

wcw2007 - -

К сожалению не помогло, на денвере работает нормально а на опенкарте ошибка

C:\OpenServer\domains\localhost\engine\modules\userphotos.php on line 143 Strict Standards: Only variables should be passed by reference in C:\OpenServer\domains\localhost\engine\modules\userphotos.php on line 143 Strict Standards: Only variables should be passed by reference in C:\OpenServer\domains\localhost\engine\modules\userphotos.php on line 143


Строки где ошибка

$image = $_FILES['Filedata']['tmp_name'];
                $image_size = $_FILES['Filedata']['size'];
                
                
                
                $type = explode( ".", $_FILES['Filedata']['name'] );
$type = end( $type );


Пишет что загружаю слишком большой файл, хотя даже файл который весит 70кб пишет большой

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

наверх