Perl en Español

  1. Home
  2. Tutoriales
  3. Foro
  4. Artículos
  5. Donativos
  6. Publicidad
 

Archivos WORD

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Intermedio
Mensaje Jue Dic 29, 2005 6:21 am
Lor
Perlero Nuevo
Perlero Nuevo
Registrado: 28 Abr 2005
Mensajes: 99
Ubicación: Argentina, Santa FE
Archivos WORD Responder citando

Agradeceria si me pudiesen indicar como hacer lo siguiente:

El objetivo es que un usuario genere un archivo Word , y lo suba al servidor, Cuando quiera actualizarlo lo baje , trabaje y vuelva a repetir la operacion de subirlo.
He visto tutoriales de upload de archivos tipo texto y download pero yo necesito trabajar especificamente con archivos word.


Muchas gracias Very Happy
Mensaje Jue Dic 29, 2005 6:57 am
monoswim
Vive para Perl en Español
Vive para Perl en Español
Registrado: 18 Nov 2003
Mensajes: 716
Ubicación: Buenos Aires
Responder citando

Hola Lor, Efectivamente con el upload de archivos podés hacer que tus usuarios suban cualquier tipo de archivo, y luego con PERL verificas que el nombre sea .doc o .DOC y listo, ya solo subirán archivos de word...

Y para bajarlos puedes redireccionarlos a ese archivo, o mejor (para que siempre aparezca el cartel de download y no lo abra el IE) cambiarle la cabecera del content-tipe y colocarle la de un archivo .zip así seguro te dará la opción de bajada, y bajará el .doc...

Saludos
Mensaje Jue Dic 29, 2005 10:19 pm
kidd
Creador de Perl en Español
Creador de Perl en Español
Registrado: 15 Oct 2003
Mensajes: 1389
Ubicación: México
Responder citando

Hola:

Recomiendo que heches un vistazo a los siguientes tutoriales:
http://perlenespanol.baboonsoftware.com/archives-tut/000082.html
http://perlenespanol.baboonsoftware.com/archives-tut/000069.html


SALUDOS
Mensaje Vie Dic 30, 2005 3:42 am
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 4128
Ubicación: Valladolid, España
Responder citando

Estando en windows... yo le crearía una "carpeta de red", que es el protocolo WebDAV. O le enseñaría a usar el ftp, que es casi lo mismo.
Mensaje Jue Feb 09, 2006 12:36 pm
xBrYaNx
Perlero Nuevo
Perlero Nuevo
Registrado: 07 Feb 2006
Mensajes: 5
Responder citando

Claro seria lo mas logico pero yo lo necesito descargar mediante http ya que el puerto 21 y otros mas se encuentran bloqueados y no tengo acceso al firewall.

Saludos
Mensaje Jue Feb 09, 2006 1:45 pm
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 4128
Ubicación: Valladolid, España
Responder citando

Pues eso... sí sólo le funciona el puerto 80, se puede hacer con una simple carpeta de red, con el protocolo WebDav. Vamos, no quiero meter la pata, pero creo que ese protocolo no necesita más que ese puerto. Hablo de memoria porque hace casi tres años que no lo he vuelto a tocar...
He arrancado el XP, he ido a "Mis sitios de red" y he agregado un nuevo sitio. Como dirección he puesto "http://www.pucela.net/dav". Al intentar conectar, esto sale en el registro del apache:
Código:
==> /var/log/apache2/pucela.net-access.log <==
172.26.0.201 - - [09/Feb/2006:20:24:14 +0100] "PROPFIND /dav HTTP/1.1" 301 234 "-" "Microsoft-WebDAV-MiniRedir/5.1.2600"
172.26.0.201 - - [09/Feb/2006:20:24:14 +0100] "PROPFIND /dav/ HTTP/1.1" 405 1018 "-" "Microsoft-WebDAV-MiniRedir/5.1.2600"
172.26.0.201 - - [09/Feb/2006:20:24:16 +0100] "PROPFIND /dav HTTP/1.1" 301 234 "-" "Microsoft-WebDAV-MiniRedir/5.1.2600"
172.26.0.201 - - [09/Feb/2006:20:24:16 +0100] "PROPFIND /dav/ HTTP/1.1" 405 1018 "-" "Microsoft-WebDAV-MiniRedir/5.1.2600"
172.26.0.201 - - [09/Feb/2006:20:24:16 +0100] "OPTIONS / HTTP/1.1" 200 - "-" "Microsoft-WebDAV-MiniRedir/5.1.2600"
172.26.0.201 - - [09/Feb/2006:20:24:17 +0100] "PROPFIND /dav HTTP/1.1" 301 234 "-" "Microsoft-WebDAV-MiniRedir/5.1.2600"
172.26.0.201 - - [09/Feb/2006:20:24:17 +0100] "PROPFIND /dav/ HTTP/1.1" 405 1018 "-" "Microsoft-WebDAV-MiniRedir/5.1.2600"
Vamos, que si estuviera cargado el módulo mod_dav del apache, se conectaría sin problemas (después de configurarlo, claro), y el usuario vería en su ordenador una carpeta de ficheros exáctamente igual que las que tiene en el disco duro.
Desde Linux, con el Konqueror en KDE también lo hace, poniendo como dirección "webdav://www.pucela.net/dav/".
Mensaje Sab Feb 11, 2006 12:23 am
xBrYaNx
Perlero Nuevo
Perlero Nuevo
Registrado: 07 Feb 2006
Mensajes: 5
Responder citando

Amigo, excelente dato. No use nada de WebDav solo entre a conecciones de red y agrege la carpeta web, y tengo un ftp por el puerto 80 Very Happy

Bueno en si te explico a lo que yo quiero llegar. Deseo que mi script de perl se dirija a una carpeta web coja un archivo y lo lleve a una carpeta local para su almacenamiento, este archivo esta en constante actualizacion durante el tiempo que la web esta en actividad, y si es posible que lo borre para que la web vuelva a generar el archivo solo con la informacion actualizada.

La maquina no tiene activos mas que el puerto 80, el 1521 y otros pero no ftp, cpanel, ni nada de eso.

Espero que me puedas ayudar, ya que soy nuevo en todo esto.

Muchas gracias.
Mensaje Sab Feb 11, 2006 6:51 am
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 4128
Ubicación: Valladolid, España
Responder citando

bryan escribió:
Amigo, excelente dato. No use nada de WebDav solo entre a conecciones de red y agregue la carpeta web, y tengo un ftp por el puerto 80 Very Happy
Ya... es como si pusieras ftp://usuario:contraseña@maquina:80/directorio/fichero.doc.
bryan escribió:
Bueno en si te explico a lo que yo quiero llegar. Deseo que mi script de perl se dirija a una carpeta web coja un archivo y lo lleve a una carpeta local para su almacenamiento,
Esto es facil de hacer con lo ya comentado arriba.
bryan escribió:
este archivo esta en constante actualizacion durante el tiempo que la web esta en actividad,
Un momento. ¿Donde se está actualizando? ¿En el lado del cliente o en el lado del servidor?. Según lo que pones más arriba, quieres que el fichero se baje, lo edite el usuario y, cuando termine, que lo vuelva a subir al web, ¿no?
bryan escribió:
y si es posible que lo borre para que la web vuelva a generar el archivo solo con la informacion actualizada.
Humm... hay varias soluciones... Una de ellas es que cuando el usuario termine de editar el fichero, ejecute OTRO script que se encargue de subir el fichero al web. La otra solución es un poco dura... consiste en tener una tarea programada que se ejecute cada pocos minutos, por ejemplo, cada 5 minutos. En esos momentos, puede ver la fecha de modificación del fichero. Si tiene más de 5 minutos de antigüedad, significa que el usuario ha terminado de trabajar con él. Entonces lo sube y lo borra. Aquí hay un problema si el usuario en alguna ocasión se ha alejado del ordenador y deja el fichero a medio editar... si pasan más de 5 minutos podría haber un problema (según el sistema operativo utilizado y el programa de edición).
Se podría hacer algo así (en pseudocódigo):
Código:
La tarea programada se ejecuta cada 5 min.
La tarea es un programa que se coloca en el directorio del fichero.
Se lee la antigüedad (de modificación) del fichero.
Si la antigüedad es de menos de 5 min, creamos un fichero bandera llamado "hay_que_subirlo" (si no existe) y terminamos
Si la antigüedad es superior y "hay_que_subirlo", entonces nos conectamos al web, subimos el fichero y lo borramos junto con el fichero bandera.

El procedimiento para subir el fichero a la web puede ser: conectarse a una página que tiene un formulario con una caja de texto que admite el nombre de un fichero para ser transmitido por http, ergo, es una simple llamada a un cgi. O quizás más cómodo sería saber si puedes colocar un servidor ftp en un puerto (por ejemplo el 2121) en el lado del servidor y entonces subes el fichero por ese método. Los dos tutoriales que kidd te ha indicado son una buena pista para hacer esto. En el primero se habla de cómo recoger el fichero (upload), pero tu desde el cliente debes hacer lo contrario: una petición POST codificada como "multipart/form-data".
bryan escribió:
Espero que me puedas ayudar, ya que soy nuevo en todo esto.
Entonces es mejor que pongas este hilo en el foro de Básico, ya que quizás recibas más ayuda... Suerte!

Ultima edición por explorer el Sab Feb 11, 2006 10:10 am, editado 1 vez
Mensaje Sab Feb 11, 2006 9:47 am
xBrYaNx
Perlero Nuevo
Perlero Nuevo
Registrado: 07 Feb 2006
Mensajes: 5
Responder citando

Excelente! ahora lo intentare y comentare que tal me fue.

Muchas gracias Very Happy
Publicar nuevo tema   Responder al tema    Foros de discusión -> Intermedio Todas las horas son GMT - 6 Horas
Página 1 de 1



Powered by phpBB © 2001, 2005 phpBB Group