Comunidad de diseño web y desarrollo en internet online

CArgar imagenes a el servidor en AS3

Citar            
MensajeEscrito el 22 Oct 2008 04:31 pm
Tengo que introducir en un site la posibilidad de cargar imagenes a el servidor y la verdad esque no encontre mucha documentacion en la red, mire en la ayuda de adobi pero no me... ayuda....mucho...nada. Consegui este codigo pero no se como hacerlo funcionar:

Código :

import flash.events.*;
import flash.net.FileFilter;
import flash.net.FileReference;
import flash.net.URLRequest;
 
//Dirección del PHP que va a subir el archivo
var uploadURL:URLRequest;
var archivo:FileReference;
 
//Función llamada al pulsar examinar, se crea el filereference y se abre el navegador de archivos
function Examinar(event:MouseEvent) {
   info.appendText("\n" + "Vamos a seleccionar el archivo.");
   uploadURL = new URLRequest();
   uploadURL.url = "http://www.esedeerre.com/ejemplos/as3/filereference/uploadFile.php/";
   archivo = new FileReference();
   PonerListeners(archivo);
   archivo.browse(getTypes());
}
 
//Añado los listener al objeto filereference
function PonerListeners(dispatcher:IEventDispatcher) {
   dispatcher.addEventListener(Event.CANCEL, cancelHandler);
   dispatcher.addEventListener(Event.COMPLETE, completeHandler);
   dispatcher.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler);
   dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
   dispatcher.addEventListener(Event.OPEN, openHandler);
   dispatcher.addEventListener(ProgressEvent.PROGRESS, progressHandler);
   dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
   dispatcher.addEventListener(Event.SELECT, selectHandler);
   dispatcher.addEventListener(DataEvent.UPLOAD_COMPLETE_DATA,uploadCompleteDataHandler);
}
 
//Con está función se generan los tipos de archivos que estarán disponibles para seleccionar desde el navegador
function getTypes():Array {
   var allTypes:Array = new Array(getImageTypeFilter(), getTextTypeFilter());
   return allTypes;
}
 
//Tipos de imágenes admitidos, tanto para pc como para mac
function getImageTypeFilter():FileFilter {
   return new FileFilter("Images (*.jpg, *.jpeg, *.gif, *.png)","*.jpg;*.jpeg;*.gif;*.png");
}
 
//Tipos de archivos de texto admitidos, para pc y mac
function getTextTypeFilter():FileFilter {
   return new FileFilter("Text Files (*.txt, *.rtf)","*.txt;*.rtf");
}
 
 
//Se distribuye cuando se cancela la descarga desde el navegador de archivos. 
function cancelHandler(event:Event):void {
   info.appendText("\n" + "Subida cancelada.");
}
 
//Se distribuye cuando se finaliza la descarga o la carga
function completeHandler(event:Event):void {
   info.appendText("\n" + "Subida completada.");
}
 
//Se reciben datos del servidor tras completar la carga
function uploadCompleteDataHandler(event:Event):void {
   info.appendText("\n" + "Subida confirmada por el servidor.");
}
 
//Se produce cuando falla la carga y hay un código http de error. 
//Por ejemplo si no se encuentra el PHP, se generará un error 404.
function httpStatusHandler(event:HTTPStatusEvent):void {
   info.appendText("\n" + "Se ha producido el siguiente error: " + event.status);
}
 
//Se produce cuando falla la carga o descarga
function ioErrorHandler(event:IOErrorEvent):void {
   info.appendText("\n" + event.text);
}
 
//Se inicia la carga o descarga
function openHandler(event:Event):void {
   info.appendText("\nComienza la subida");
}
 
//Se distribuye periodicamente durante la carga o la descarga, mostrando el progreso de la misma. 
function progressHandler(event:ProgressEvent):void {
   var file:FileReference = FileReference(event.target);
   info.appendText("\n" + event.bytesLoaded + " bytes de " + event.bytesTotal + " bytes subidos.");
}
 
//Se distribuye al intentar descargar o cargar un archivo de un servidor fuera del entorno de seguridad de la película
function securityErrorHandler(event:SecurityErrorEvent):void {
   info.appendText("\nEl servidor no permitió la carga del archivo.");
}
 
//Se distribuye al elegir el archivo para carga o descarga desde el navegador de archivos.
function selectHandler(event:Event):void {
   info.text = "";
   var archivo:FileReference = FileReference(event.target);
   info.appendText("\n" + "Archivo elegido: " + archivo.name + "\n" + "Tamaño = " + archivo.size + " bytes.");
   if(archivo.size > 20000){
      info.appendText("\nNo se pueden subir archivos de más de 20 KB.");
   }else{
      archivo.upload(uploadURL);
   }
}
 
examinar.addEventListener(MouseEvent.CLICK,Examinar);


Si no me equivoco es para cargar una foto a otro servidor, mi principal problema es que el php al que llama no lo proporcionaban y no se en realidad que deberia contener ese php alguien me podria hehcar una mano plis?

Gracias de antemano.

Por Atomsk

350 de clabLevel

3 tutoriales

 

firefox
Citar            
MensajeEscrito el 22 Oct 2008 05:00 pm
No veo que se le cambie el nombre con que sube por defecto (Filedata) o sea que cualquier PHP que funcione con un uploader de AS2 debería funcionar con este, por ejemplo el simplísimo que hay aquí: http://www.flash-db.com/Tutorials/upload/

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 22 Oct 2008 05:14 pm
Gracias solisarg:
Modifique la linea

Código :

uploadURL.url = "/upload.php";

y obiamente puse el archibo upload.php de el ejemplo en el mismo directorio que la pelicula.
El flash me abre el "examinar" elijo el archivo el .jpg pero no lo sube ni crea el dir. Es como si no pasara por el php.
Me falla algo mas?

Un saludo.

PD. lo estoy probando en local con un servidor apache y php 5.

Por Atomsk

350 de clabLevel

3 tutoriales

 

firefox
Citar            
MensajeEscrito el 22 Oct 2008 05:30 pm
Postea como quedo tu PHP

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 23 Oct 2008 08:05 am
:roll: Ahora tengo que hacerlo en as2 por exigencias del guion :roll: gracias igualmente el link de ese loader en as2 es justo lo quer necesito ahora.
Gracias y un saludo,

Atomsk

Por Atomsk

350 de clabLevel

3 tutoriales

 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.