Uploadify возвращает $_FILES в виде пустого массива

Я пытаюсь внедрить Uploadify в свой проект веб-сайта, в котором уже есть очень простая система загрузки файлов. Я настроил uploadify для отправки сообщения формы, которое передается на серверную загрузку php-скрипта для загрузки и сортировки изображений. Однако после загрузки я ничего не получаю, массив $_FILES полностью пуст, а форумы и документация Uploadify совсем не помогают. Вот мой код:

Внешняя страница загрузки

<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.min.js">          </script>
<script type="text/javascript" src="/modules/default/themes/uploadify/jquery.uploadify-  3.1.min.js"></script>
<script type="text/javascript">
$(function() {
    $('#file_upload').uploadify({
        'fileTypeDesc' : 'Image Files',
        'fileTypeExts' : '*.jpg; *.jpeg; *.png; *.gif',
        'method' : 'post',
        'auto' : false,
        'swf'      : '/modules/default/themes/uploadify/uploadify.swf',
        'uploader' : '/modules/default/themes/uploadify/uploadify.php',
        'onUploadComplete' : function(file, event, ID, fileObj, response, data) {
            $('#pff').submit();
        },
    });
});

//Further down the line

<form action="<?php echo $this->url('upload')?>" method="post" id="pff" enctype="multipart/form-data">
<div class="uploadfield">
    <input type="file" name="pics" id="file_upload" />
</div>
</form>
<a href="javascript:$('#file_upload').uploadify('upload')">Upload Files</a>

Back-end PHP Uploading Script Segment

$errors = array();
    $uploaded = array();
    $ids = array();
    $public = $this->app->config->upload_public_default;
    $user = $this->app->userSession->user;
    $gallery = $this->app->getParamInt('gallery_id');
    $userid = $user->user_id;
    if(!empty($_FILES['Filedata']['tmp_name']) && $this->app->config->allow_uploads){ 
//Code to upload the images to the user accounts 
}

Я пробовал разные вещи в течение нескольких часов и получил массу предложений с разных сайтов и форумов. Пока ничего не помогло и не подсказало, что делать. Я не могу передать файлы скрипту.


person aschmelyun    schedule 17.06.2012    source источник


Ответы (2)


Я не уверен, как работает uploadify, но уверен, что это не сработает.

<input type="file" name="pics"...

и

if(!empty($_FILES['Filedata']['tmp_name'])...

вы отправляете файл с именем pics и проверяете его с именем Filedata, что не сработает, вы должны использовать то же имя, что и $_FILES['pics]

person slash197    schedule 17.06.2012
comment
Изначально у меня были «фотографии», но он все равно возвращал пустой массив. - person aschmelyun; 17.06.2012
comment
значит у вас где-то ошибка. включите отчеты об ошибках или проверьте свой error.log - person slash197; 17.06.2012

Одной из возможных причин может быть ограничение размера загружаемого файла.

Прежде всего проверьте значения «upload_max_filesize», «post_max_size» в phpinfo.

Если размер файла превышает установленные ограничения, это может привести к тому, что массив $_FILES будет пустым.

Ссылка: http://webparticles.wordpress.com/2011/08/28/uploadify-_files-array-is-empty/

person Baijun    schedule 13.11.2013