Uploadify застрял на 100%, но все равно делает загрузку - PullRequest
0 голосов
/ 25 мая 2011

У меня, похоже, проблема с uploadify.Он всегда застревает на 100% в первом файле, независимо от того, что это за файл.Я использую Zend на своем Wamp, и он отлично работает там, но как только я загружаю его на свой сервер Linux, он застревает.Файл загружен и переименован, но он никогда не запускает событие onComplete и остается на 100% в первом файле.Вот мой JavaScript:

$('#fileInput').uploadify({
        'uploader'          : 'http://test.thevenuelist.co.uk/js/uploadify/uploadify.swf',
        'script'            : 'http://test.thevenuelist.co.uk/ajax/uploadify',
        'cancelImg'         : 'http://test.thevenuelist.co.uk/js/uploadify/cancel.png',
        'folder'        : '/userdata/images/',
        'auto'              : true,
        'multi'         : true,
        'fileDesc'      : 'Image Files (*.jpg;*.jpeg;*.gif;*.png)',
        'fileExt'       : '*.jpg;*.jpeg;*.gif;*.png', 
        'buttonText'        : 'Upload Images',
        'removeCompleted'   : true,
        'onComplete'            : function (event, queueID, fileObj, response, data) {
            var answer = eval('(' + response + ')');
            if(answer.result == "success")
            {
                $("#hdnImages").val($("#hdnImages").val() + answer.fileName + ",");
                var toAdd = "<li><img src='/images/delete.png' id='removeItem' rel='"+answer.fileName+"' style='cursor:pointer;' title='Remove' alt='Remove'/>&nbsp;&nbsp;Image "+answer.realName+" uploaded</li>";
                $("#completedItemsList").append(toAdd);
            }
        },
        'onError': function (event, queueID ,fileObj, errorObj) {
            alert(errorObj.info);
        }
    });

А вот мой Zend-код:

$tempFile = $_FILES['Filedata']['tmp_name'];
    $targetPath = $_SERVER['DOCUMENT_ROOT']. '/' . $_REQUEST['folder'] . '/';
    $fileNameArray = explode('.',$_FILES['Filedata']['name']);
    $hash = substr(md5(microtime()),0,5);
    $finalFileName = $fileNameArray[0].$hash.'.'.$fileNameArray[1];
    $targetFile =  str_replace('//','/',$targetPath) . $finalFileName;

    if(move_uploaded_file($tempFile,$targetFile))
    {
        $data = array("result"=>"success","fileName"=>$finalFileName,"realName"=>$_FILES['Filedata']['name']);
    }
    else
    {
        $data = array("result"=>"failed");
    }

    echo Zend_Json::encode($data);

Любая помощь будет принята с благодарностью.Я потратил слишком много времени, пытаясь понять это.Мне нужно, чтобы событие onComplete работало, чтобы я мог завершить свои формы.

1 Ответ

0 голосов
/ 26 мая 2011

Я обнаружил, что с uploadify мне нужно было вернуть 1 или 0 для успеха или неудачи, чтобы заставить его работать.

...