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

problema con loadMovie en upload

Estas en el tema de problema con loadMovie en upload en el foro de Flash y Actionscript en Foros del Web. Hola gente como andan tanto tiempo? Estoy con un problemita que no puedo solucionar... La idea es que desde flash por medio de filereference levantar ...
  #1 (permalink)  
Antiguo 22/06/2009, 12:00
 
Fecha de Ingreso: septiembre-2008
Mensajes: 14
Antigüedad: 18 años, 1 mes
Puntos: 0
problema con loadMovie en upload

Hola gente como andan tanto tiempo?

Estoy con un problemita que no puedo solucionar...

La idea es que desde flash por medio de filereference levantar una imagen del disco rigido y poderla visualizar en el flash antes de cargarla definitivamente en el servidor. ¿Se entiende?
Intente con lo siguiente

Código :

listener.onSelect = function(file:FileReference):Void {
a.loadMovie("c:/"+file.name);
// a.loadMovie("file:///c:/"+file.name);
}


Pero no funciona... (bah funciona desde el entorno del flash, pero no desde internet)

La solucion q se me ocurre es cargar la imagen al servidor en una carpeta temporaria, levantar la imagen y luego cuando confirme mover la imagen al directorio real, pero no es una solucion muy eficiente que digamos...

Necesito hacer esto, porque antes de cargar la imagen el usuario la debe trababar (crear un menu por ensima de ella) y si por ejemplo anula la carga de datos (este flash esta junto con un formulario en html) no quiero q la imagen quede en el servidor al dope...

Espero q me puedan hechar una mano con esto, grandes maestros...

Un saludo y gracias de antemano

Última edición por nixon182; 22/06/2009 a las 12:09 Razón: mejor titulo
  #2 (permalink)  
Antiguo 22/06/2009, 16:12
 
Fecha de Ingreso: agosto-2008
Mensajes: 109
Antigüedad: 18 años, 1 mes
Puntos: 3
Respuesta: problema con loadMovie en upload

Si es una imagen fija y siempre es la misma, ponela en el ftp. Si cada usuario de la pagina va a buscar su propia imagen de cualquier parte del disco rigido, necesitas usar un lenguaje de servidor atras de flash, a menos que te pases a AS 3 y uses el flash player 10 que cambiaron la clase file reference.
  #3 (permalink)  
Antiguo 23/06/2009, 07:08
 
Fecha de Ingreso: septiembre-2008
Mensajes: 14
Antigüedad: 18 años, 1 mes
Puntos: 0
Respuesta: problema con loadMovie en upload

Uuuu buenisimo, no sabia que en as3 si se podia, tenes algun ejemplo o te animas a pasarme algun enlace que hable del tema please, gracias!
  #4 (permalink)  
Antiguo 23/06/2009, 16:08
 
Fecha de Ingreso: agosto-2008
Mensajes: 109
Antigüedad: 18 años, 1 mes
Puntos: 3
Respuesta: problema con loadMovie en upload

Bueno ya que no puedo dejar archivos adjuntos te dejo la clase aca, tu archivo AS se tiene que llamar CargarImagenes y en el fla lo unico que necesitas tener es un boton (componente) en la biblioteca.

Código PHP:
// Created by Personagorda para Foros del Web.
package 
{
    
import fl.controls.Button;
    
    
import flash.display.Bitmap;
    
import flash.display.Loader;
    
import flash.display.MovieClip;
    
    
import flash.net.FileFilter;
    
import flash.net.FileReference;
    
    
import flash.text.TextField;
    
import flash.text.TextFieldType;
        
    
import flash.events.MouseEvent;
    
import flash.events.Event;
    
    public class  
CargarImagenes extends MovieClip
    
{   
    
        private static const 
MAX_WIDTH    : Number = 640;
        private static const 
MAX_HEIGHT    : Number = 350;
        
        private var 
fileRef: FileReference;
        private var 
fileFilter: FileFilter;
        private var 
loader: Loader;
        private var 
bitmap: Bitmap;
        private var 
browseBtn: Button;
        private var 
browseTxt: TextField;
        private var 
removeBtn: Button;


        
        public function 
CargarImagenes ( )
        {
            
iniciar ( ) ;
            
        }
        
        private function 
iniciar ( ) : void
        
{    
        
//Personalizas el escenario.
            
            
browseTxt = new TextField ( ) ;
            
browseTxt.type = TextFieldType.INPUT;
            
browseTxt.x = 0;
            
browseTxt.y = 0;
            
browseTxt.height = 21;
            
browseTxt.width = 100;
            
browseTxt.border = true;
            
browseTxt.background = true;
            
browseTxt.textColor = 0x000000;
            
addChild ( browseTxt ) ;
        
            
browseBtn = new Button ( ) ;
            
browseBtn.label = "Browse";
            
browseBtn.name = "browse";
            
browseBtn.x = 148;
            
browseBtn.y = 0;
            
browseBtn.useHandCursor = true;
            
browseBtn.addEventListener ( MouseEvent.CLICK, handleMouseEvent ) ;
            
addChild ( browseBtn ) ;
            
            
removeBtn = new Button ();
            
removeBtn.label = "Remove Image";
            
removeBtn.name = "Remove Image";
            
removeBtn.x = 250;
            
removeBtn.y = 0;
            
removeBtn.useHandCursor = true;
            
removeBtn.addEventListener( MouseEvent.CLICK, removeIMG );
            
addChild ( removeBtn )
            
            
fileFilter = new FileFilter ( "Image", "*.jpg;*.gif;*.png;" ) ;    

            

            
        }
        
        private function 
removeIMG (evt:MouseEvent):void 
        
{
            
removeChild ( bitmap );
            
browseTxt.text = "";
        }
        
        
        private function 
handleMouseEvent ( evt : MouseEvent ) : void
        
{
            switch ( 
String ( evt.target.name ))
            {
                case 
"browse" :                
                    
fileRef = new FileReference ( ) ;
                    
fileRef.browse ( [fileFilter] ) ;
                    
fileRef.addEventListener ( Event.SELECT,         onImageSelect) ;
                    
trace ( "Browse" ) ;
                break;
            }
        }

        private function 
onImageSelect ( evt : Event ) : void
        
{
            
fileRef.load ( ) ;
            
fileRef.addEventListener ( Event.COMPLETE, onDataLoaded  ) ;
            
browseTxt.text = String ( evt.target.name ) ;
        }

        private function 
onDataLoaded ( evt : Event ) : void
        
{
            var 
tempFileRef : FileReference = FileReference ( evt.target ) ;
            
loader = new Loader ( ) ;
            
loader.contentLoaderInfo.addEventListener ( Event.COMPLETE, onImageLoaded ) ;
            
loader.loadBytes ( tempFileRef.data ) ;
        }
        
        private function 
onImageLoaded ( evt : Event ) : void
        
{
            
bitmap = Bitmap ( evt.target.content ) ;
            
bitmap.smoothing = true;
            
bitmap.x = 0;
            
bitmap.y = 100;
            
addChild ( bitmap ) ;
                        
            
//Ajustas la medida si es necesario.
            
if ( bitmap.width > MAX_WIDTH || bitmap.height > MAX_HEIGHT ) {
                
resizeBitmap ( bitmap ) ;
            }
            
        }
        
        private function 
resizeBitmap( target : Bitmap ) : void
        
{
            if ( 
target.height > target.width ) {
                
target.width = MAX_WIDTH;
                
target.scaleY = target.scaleX;
            } else if ( 
target.width >= target.height ) {
                
target.height = MAX_HEIGHT;
                
target.scaleX = target.scaleY;
            }

        }


    }
    
} 
  #5 (permalink)  
Antiguo 24/06/2009, 12:30
 
Fecha de Ingreso: septiembre-2008
Mensajes: 14
Antigüedad: 18 años, 1 mes
Puntos: 0
De acuerdo Respuesta: problema con loadMovie en upload

Loco sos un genio!!

Muchisimas gracias!! no te haces una idea de cuanto tiempo estuve buscando esto, gracias de nuevo, saludos!!
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 11:32.