Comunidad de diseño web y desarrollo en internet online

duda en filereference

Citar            
MensajeEscrito el 01 Mar 2010 05:35 pm
ok segui el tuto de tmeister muy bueno de fielreference todo entendible, todo claro, pero tengo una duda, si yo no quisiera utilizar el browse, es decir, tener un listado de archivos dentro de un componente list y al darle click alguno de los archivos, la ruta que cargue dentro de la caja de texto suba ese archivo en especifico, estuve tratando de hacer eso

tengo mi componente list y una caja de texto dinamica, al darle yo click a algun archivo de listado, me pone la ruta completa del archivo en el campo de texto, y todo bien, intente implementar el codig de tmeister de fielreference, para subir el archivo seleccionado pero no pude, solo quisiera me dieran una idea de como hacerlo,me refiero a la teoria no necesario codigo, muchas gracias

Por palmeros

46 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 03 Mar 2010 02:03 pm
Pon el code que usas, no conozco el tuto de TMeister

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 04 Mar 2010 01:15 am
ok gracias jorge solo pondre el codigo necesario, gracias por la ayuda

Código ActionScript :

//como ejemplo meto mis rutas en el componente list ya que todas las rutas las saca de un xml, 
//pero no pongo codigo innecesario

lista.addItem({data:"C:\\Documents and Settings\\wol\\Mis documentos\\Mis imágenes\\tom.jpg"});
lista.addItem({data:"C:\\Documents and Settings\\wol\\Mis documentos\\Mis imágenes\\katy.jpg"});

// este codigo es cuando se cambia o se selecciona las correspondientes rutas, ponga lo que se seleciono
//en el campo de texto
var cambio:Object = new Object();
cambio.change = function(eventos:Object) {
    listado= eventos.target.selectedIndex;
txtarchivo.text=lista.getItemAt(listado).data
      
}

// el listener
lista.addEventListener("change", cambio);



var listUpload:Object = new Object(); 
var fileUpload:FileReference = new FileReference();
fileUpload.addListener(listUpload);

// este codigo es para abrir el explorer para ver los archivos a seleccionar
btbrowse.onRelease = function() {
   fileUpload.browse(arrTypes);
}

// este es para enviar el archivo a un php que envia los archivos a una carpeta en web
btenviar.onRelease = function() {
   fileUpload.upload("upload.php?action=upload");
}

//este es para que al seleccionar el archivo te de el nombre del archivo
listUpload.onSelect = function(file) {
   txtarchivo.text = file.name;
}

// este es para saber que tanto lleva subido
listUpload.onProgress = function(file, bytesLoaded, bytesTotal):Void {
   txtestado.text = "Subiendo archivo " + Math.round(bytesLoaded*100/bytesTotal) + "%";
}

// este es para cuando se termina de subir el archivo
listUpload.onComplete = function(file:FileReference):Void {
    txtestado.text = "Archivo subido correctamente";
}




                                


se que el truco esta en el:

Código ActionScript :

var listUpload:Object = new Object();  
var fileUpload:FileReference = new FileReference(); 
fileUpload.addListener(listUpload); 


quite la opcion de btbrowse y fileUpload.browse(arrTypes); y lo puse de la siguiente manera

Código ActionScript :

txtarchivo.onChanged = function(){
this.fileUpload
}


lo que intento hacer es que la ruta que este en la caja de texto se suba el archivo
pero no me funciona y no se me ocurre otra manera de hacerlo, espero me puedas asesorar alr especto, gracias

Por palmeros

46 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 04 Mar 2010 03:46 pm
Entiendo, eso no se puede. No es algo que puedas resolver técnicamente, sino una decisión de los ingenieros del Flash player para evitar que alguien sople los archivos de tu máquina ... imagina que en vez de

lista.addItem({label:"Archivo 1", data:"C:\\Documents and Settings\\wol\\Mis documentos\\Mis imágenes\\tom.jpg"});

haga

lista.addItem({label:"Archivo 1", data:"C:\\WINDOWS\\system32\\passw"});

la única forma de obtener referencia a un archivo local es que el usuario lo seleccione

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 04 Mar 2010 07:57 pm
ok, pues ni modo, como alternativa, existe algun metodo para que al darle clcik al browse, se abra en una carpeta en especifico?, es decir programar que siempre se abra la carpeta pruebitas y de ahi seleccione los archivos? es posible eso?

Por palmeros

46 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 04 Mar 2010 09:06 pm
Si estás haciendo una aplicación web, el sandbox del Flash Player es muy estricto en esto y no permite ningún tipo de control sobre el filesystem. Si estás haciendo una aplicación local, entonces a lo mejor puedes utilizar AIR o un proyector armado con Zinc para acceder al FileSystem

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 09 Abr 2010 05:31 pm
hola, perdon por la tradanza,pero anduve hospitalizado y ya no segui trabajando en este proyecto pero ya lo retome, gracias jorge :)

ok, es para escritorio, estuve viendo con el mdm y trate de hacer lo siguiente


Código ActionScript :

import flash.net.FileReference;

var listUpload:Object = new Object(); 
var fileUpload:FileReference = new FileReference();
fileUpload.addListener(listUpload);


btbrowse.onRelease = function() {
   
   mdm.Dialogs.BrowseFile.defaultDirectory = "C:\\flex4";
   var myFiles:Array = mdm.Dialogs.BrowseFile.show();
   var objTypes:Object = new Object();
objTypes.description = "Images (*.jpg, *.jpeg, *.gif, *.png)";
objTypes.extension = "*.jpg; *.jpeg; *.gif; *.png";

myFiles.push(objTypes);

   
   fileUpload.browse(myFiles);
}


si me pone la carpeta por default, y todo, pero al seleccionar el archivo, no me pone el nombre del archivo en el campo te texto y no envia nada, que podria estar mal,

Por ipalmeros

45 de clabLevel



 

firefox
Citar            
MensajeEscrito el 09 Abr 2010 06:17 pm
No veo donde estás intentando mostrar el nombre ... ¡es todo el código o tienes lo del post anterior para el Filereference?

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 12 Abr 2010 02:58 pm
si perdon este es el codigo completo


Código ActionScript :

import flash.net.FileReference; 
 
var listUpload:Object = new Object();  
var fileUpload:FileReference = new FileReference(); 
fileUpload.addListener(listUpload); 
 
 
btbrowse.onRelease = function() { 
    
   mdm.Dialogs.BrowseFile.defaultDirectory = "C:\\flex4"; 
   var myFiles:Array = mdm.Dialogs.BrowseFile.show(); 
   var objTypes:Object = new Object(); 
objTypes.description = "Images (*.jpg, *.jpeg, *.gif, *.png)"; 
objTypes.extension = "*.jpg; *.jpeg; *.gif; *.png"; 
 
myFiles.push(objTypes); 
 
    
   fileUpload.browse(myFiles); 
}
btenviar.onRelease = function() {
   fileUpload.upload("upload.php?action=upload");
   
}

listUpload.onSelect = function(file) {
   txtarchivo.text = file.name;
}
listUpload.onProgress = function(file, bytesLoaded, bytesTotal):Void {
   txtestado.text = "Subiendo archivo " + Math.round(bytesLoaded*100/bytesTotal) + "%";
}
listUpload.onComplete = function(file:FileReference):Void {
    txtestado.text = "Archivo subido correctamente";
}



gracias de nuevo jorge

Por palmeros

46 de clabLevel



Genero:Masculino  

firefox

 

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