Ciao, forse mi sto mettendo su una cosa un po' più grande di me, quindi siate pazienti :-)
Ho scaricato swfupload, che mi dovrebbe facilitare le cose nell'upload di grossi file via web.
A un primo occhio è fantastico, e anche se la adobe dice che il limite massimo di upload è di circa 100 mega (per i quali non ho problemi), molti utenti dicono che riescono a fare upload anche di gigabytes.
Il mio intento non è di arrivare cosi lontano, ma vorrei permettere l'upload di file di almeno 200 mega.
Alla fine dell'upload (durante il quale viene animata una progressbar) lo script fa scaturire l'evento che mostra il messaggio di upload completato.
Il problema è che se lo script php ci mette "troppo" (nell'ordine di 60 secondi) a rispondere l'evento non viene scaturito.
Questo è un caso abbastanza frequente quando bisogna spostare file di certe dimensioni, cosi ho provato a vedere i sorgenti as dello script (che potete trovare anche qui:http://svn.swfupload.org/tags/swfupl...evelop/Flash9/)
e sono arrivato a questo punto:
Ora mi chiedevo, nella linea che ho evidenziato in grossetto, è possibile in qualche modo gestire il timeout?codice:if (start_upload) { try { // Set the event handlers this.current_file_item.file_reference.addEventListener(ProgressEvent.PROGRESS, this.FileProgress_Handler); this.current_file_item.file_reference.addEventListener(IOErrorEvent.IO_ERROR, this.IOError_Handler); this.current_file_item.file_reference.addEventListener(SecurityErrorEvent.SECURITY_ERROR, this.SecurityError_Handler); this.current_file_item.file_reference.addEventListener(HTTPStatusEvent.HTTP_STATUS, this.HTTPError_Handler); this.current_file_item.file_reference.addEventListener(DataEvent.UPLOAD_COMPLETE_DATA, this.ServerData_Handler); // Upload the file var request:URLRequest = this.BuildRequest(); this.Debug("startFile(): File Reference found. File accepted by startUpload event. Starting upload to " + request.url + " for File ID: " + this.current_file_item.id); this.current_file_item.file_reference.upload(request, this.filePostName, false); } catch (ex:Error) { this.upload_errors++; this.current_file_item.file_status = FileItem.FILE_STATUS_ERROR; var message:String = ex.errorID + "\n" + ex.name + "\n" + ex.message + "\n" + ex.getStackTrace(); this.Debug("Event: uploadError(): Unhandled exception: " + message); ExternalCall.UploadError(this.uploadError_Callback, this.ERROR_CODE_UPLOAD_FAILED, this.current_file_item.ToJavaScriptObject(), message); this.UploadComplete(); }
Grazie per l'attenzione![]()

Rispondi quotando
