Foros del Web » Programando para Internet » Javascript »

upload con javascript

Estas en el tema de upload con javascript en el foro de Javascript en Foros del Web. hola maestros necesito saber si con javascript se puede hacer el formulario de upload , osea este en html. <form enctype="multipart/form-data" action="subir1.php" method="post"> <input type="hidden" ...
  #1 (permalink)  
Antiguo 31/03/2004, 06:35
Avatar de mveraa  
Fecha de Ingreso: diciembre-2002
Ubicación: santiago-chilito
Mensajes: 1.931
Antigüedad: 21 años, 4 meses
Puntos: 2
Pregunta upload con javascript

hola maestros necesito saber si con javascript se puede hacer el formulario de upload , osea este en html.

<form enctype="multipart/form-data" action="subir1.php" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="150000" >
Send this file: <input name="userfile" type="file" >
<input type="submit" value="Send File" >
</form>

bueno lo que necesito saber si con javascript puede tener mas control sobre la ventana que sirve para buscar el archivo y poder lograr lo siguiente:

-filtrar datos (solo busque por ej. jpg)
-indicarle la carpeta exacta donde esta el archivo.
-indicar el peso del archivo antes del envio . etc...


muchas gracias....
  #2 (permalink)  
Antiguo 31/03/2004, 15:09
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola mveraa:

Yo también estoy trabajando ese tema, y lo que puedes hacer con javascript es bastante poco ...

Me parece que sobre la ventana no se puede hacer nada, pero después de seleccionar el fichero algo se puede hacer.

Puedes saber la extensión que tiene, por ejemplo... a mi me interesa que sean ficheros gif o jpg o png y el chequeo lo hago con expresiones regulares...

vale = /(\.jpg|\.gif|\.png)$/i;
if (vale.test(document.forms["imagen"].archivo.value)) {
...

Tal vez se puede hacer mejor, pero por ahora parece que funciona bien.

El peso no se puede saber pero sí las dimensiones cargando la imagen y consultando sus atributos width y height. Aunque veo que usas php, y con ese lenguaje puedes saber el peso

En este mensaje: http://www.forosdelweb.com/s2dbd5238...msg127775.html
Hay muy buena información... yo me estoy basando en él.

Si quieres ver como llevo yo el tema puedes verlo aquí: http://www.pepemolina.com/archivos_bd/index.html

Saludos
  #3 (permalink)  
Antiguo 31/03/2004, 18:42
Avatar de sindestino  
Fecha de Ingreso: noviembre-2003
Ubicación: xxxx xxxx
Mensajes: 270
Antigüedad: 20 años, 6 meses
Puntos: 0
el problema de pesar el archivo con una tecnología de servidor (PHP, ASP) es que para hacerlo primero hay que subirlo (no sirve de nada si lo queremos pesar para ver si supera lo máximo que estamos dispuestos a recibir).
Una forma de pesar una imágen antes de subirla es mostrarla en un IMG (asignándole a la propiedad src el value del input type ="file") y luego al presionar un cierto botón de "Enviar Foto" se podría verificar la propiedad fileSize (del IMG) que devuelve el peso de la imágen en bytes. La contra es que solo sirve para imágenes y hay que mostrarlas en la pantalla (aunque con un poco de imaginación ésto último no es estrictamente cierto).
Otra forma de acceder a las propiedades de un archivo en el cliente es con ActiveX, pero dichos comandos disparan una advertencia de seguridad en todos los browsers.

Hasta ahí llegó lo que se sobre el tema, les mando un saludo
  #4 (permalink)  
Antiguo 01/04/2004, 02:51
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola otra vez,

sindestino: fileSize funciona bien en explorer pero con Mozilla no lo reconoce...

Me fijé en w3.org y parece que no es estándar.
Lo que se puede hacer es averiguar las dimensiones (width y height) de la imagen cargada con javascript.

Saludos
  #5 (permalink)  
Antiguo 01/04/2004, 06:07
Avatar de mveraa  
Fecha de Ingreso: diciembre-2002
Ubicación: santiago-chilito
Mensajes: 1.931
Antigüedad: 21 años, 4 meses
Puntos: 2
muchas gracias por la orientacion...........
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 02:09.