Slim Framework с Paris/Idiorm/Twig – Как обрабатывать загрузку файлов?

Джеп, вот в чем вопрос. Как обрабатывать Fileuplaods через эту замечательную команду?

Что-то типа:

$app -> post('/new/', function() use ($app) {
    $photo = Model::factory('Photos') -> create();      
    $unique_id = md5(uniqid(rand(), true));
    $WORKSPACE = 'data/photos/';
    $media = $HTTP_POST_FILES['photo']['name'];
    $filetype = strrchr($media,'.');
    $new_upload = $WORKSPACE . $unique_id . $filetype;
    $the_upload = copy($HTTP_POST_FILES['photo']['tmp_name'], $new_upload);
    $uploaded_file   = $new_upload;
    @chmod($uploaded_file, 0777);

    $photo -> timestamp = date('Y-m-d H:i:s');
    $photo -> url = 'data/photos/' . $unique_id . $filetype;
    $photo -> new_picture = $unique_id . $filetype;
    $photo -> description = $app -> request() -> post('description');
    $photo -> save();
    $app -> redirect('/upload/');
});

Не работает, причина:

Ошибка тонкого приложения: Сообщение: Неопределенная переменная: HTTP_POST_FILES

Но как я могу получить доступ к полю загрузки файла, например:

<input type="file" name="photo" value="" id="photo" />

через слим?


person Superpupsi    schedule 02.03.2012    source источник
comment
Возможно, используйте $_FILES вместо $HTTP_POST_FILES   -  person jpic    schedule 02.03.2012


Ответы (1)


$HTTP_POST_FILES не является суперглобальным. Это выходит за рамки вашей функции.

Вместо этого следует использовать $_FILES. , а также потому, что $HTTP_POST_FILES устарел.

person jpic    schedule 02.03.2012
comment
НП, пожалуйста, закройте вопрос: мета .stackexchange.com/questions/5234/ - person jpic; 02.03.2012