AIR - загрузить локальный файл на веб-сервер - PullRequest
0 голосов
/ 25 октября 2011

Я пытаюсь загрузить файл из локальной системы на веб-сервер. Мое приложение является настольным приложением, и я работаю с php-сервером.

Найдите ниже мой код

In flex

var dropfiles:Array = evt.clipboard.getData(ClipboardFormats.FILE_LIST_FORMAT) as Array;
        for each (var file:File in dropfiles){

            var fileFormat:String = file.extension;
            var fileUrl:String = file.url;
            var fileName:String = file.name;
            var fileDate:Date = file.creationDate;
            var objAdd:Object= new Object();

            objAdd.titre=fileName;
            objAdd.date=fileDate;
            objAdd.url=fileUrl;

            DP_PAT_COURR_ENT.addItem(objAdd);   

            var myFileDir:String=getPatPath(monIdPatient);

            var urlCopy:String = new urlManager().urlCourriersPatLoad()+myFileDir;
             var rq:URLRequest = new URLRequest(new urlManager().urlService() + "upload.php");
            rq.method = URLRequestMethod.POST;
            var varphp:URLVariables = new URLVariables();
            varphp.userID = monIdPatient;
            varphp.url = myFileDir;

            rq.data = varphp;
            file.upload(rq, 'Filedata');            

        }

В PHP

    <?php
if(isset($_POST['myFileDir']))      
$patRoot=$_POST['myFileDir'];

$file_temp = $_FILES['Filedata']['tmp_name'];
$file_name = $_FILES['Filedata']['name'];

$file_path = $_SERVER['DOCUMENT_ROOT'].$patRoot";

//checks for duplicate files
if(!file_exists($file_path."/".$file_name)) {

     //complete upload 
     $filestatus = move_uploaded_file($file_temp,$file_path."/".$file_name);

     if(!$filestatus) {
     $success = "false";
     array_push($errors,"Upload failed. Please try again.");
     }

}
else {
$success = "false";
array_push($errors,"File already exists on server.");
}

echo $file_path;

С этим кодом появляется сообщение «Ошибка # 2044: необработанный IOErrorEvent:» на flex.

Спасибо за помощь

1 Ответ

0 голосов
/ 25 октября 2011
...