Foros del Web » Creando para Internet » Flash y Actionscript »

Enviando imagen al servidor

Estas en el tema de Enviando imagen al servidor en el foro de Flash y Actionscript en Foros del Web. Hola, tengo un problema que no sé cómo solucionarlo por mucho que lo intento. Quiero que el cliente envíe mediante un formulario una imagen seleccionada ...
  #1 (permalink)  
Antiguo 07/07/2010, 12:29
 
Fecha de Ingreso: junio-2010
Mensajes: 51
Antigüedad: 13 años, 11 meses
Puntos: 0
Enviando imagen al servidor

Hola, tengo un problema que no sé cómo solucionarlo por mucho que lo intento.

Quiero que el cliente envíe mediante un formulario una imagen seleccionada por él al servidor. El script funciona correctamente: carga la imagen, la redimensiona para que pueda visulizarla previamente, pero al enviarla mediante JPGEncoder no envía los datos (píxels). No voy a poner todo el código porque sería muy largo, pero pondré lo más importante a ver si alguien puede darme alguna pista.

Código ActionScript:
Ver original
  1. function ImageLoaded(event:Event):void {
  2.     txtrprueba="Se ha cargado la imagen! ";
  3.     bitmap = Bitmap(event.target.content);
  4.     bitmap.smoothing = true;
  5.     addChild(bitmap) ;
  6.     if ( bitmap.width > MAX_WIDTH || bitmap.height > MAX_HEIGHT ) {
  7.         resizeBitmap ( bitmap ) ;
  8.     }
  9.     bitmap.x=42;
  10.     bitmap.y=91;
  11.     var jpgSource:BitmapData = new BitmapData (bitmap.width, bitmap.height);
  12.     jpgSource.draw(bitmap);
  13.  
  14.     var jpgEncoder:JPGEncoder = new JPGEncoder(80);
  15.     byteArray = jpgEncoder.encode(jpgSource);
  16. }
  17.  
  18. function envia(event:Event){
  19.     txtprueba.text="Se ha pulsado";
  20.     var variables = new URLVariables();
  21.     variables.nombre="Benjamin";
  22.     variables.fileName=txtarchivo.text;
  23.     variables.MAX_FILE_SIZE=1000000;
  24.     variables.file = byteArray;
  25.     var request:URLRequest = new URLRequest();
  26.     request.requestHeaders.push(new URLRequestHeader("application","x-www-form-urlencoded"));
  27.     request.requestHeaders.push(new URLRequestHeader("multipart","form-data"));
  28.     request.url = "http://localhost/pruebas/bytearray.asp";
  29.     request.method = URLRequestMethod.POST;
  30.     request.data = variables;   try {
  31.         navigateToURL(request,"_self");
  32.     }
  33.     catch (error:Error) {
  34.         trace("Unable to load URL");
  35.     }
  36.     function completeHandler(event:Event):void {
  37.         //trace(event.target.data.welcomeMessage);
  38.         txtprueba.text="El envío se ha completado.";
  39.     }
  40. }


En la página de recepción del envío aparecen todas las variables que se indican, pero en la variable file aparece ÿØÿà, que es la firma de cabecera de una imagen jpg. Se supone que luego vendrían los datos codificados por el JPGEncoder, pero no aparecen :( Agradeceré cualquier información que podais aportarme. Desde ya, gracias por vuestro interés y un saludo.

Etiquetas: servidores
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:51.