Foros del Web » Programando para Internet » PHP »

Bajar ficheros por ftp a mi pc

Estas en el tema de Bajar ficheros por ftp a mi pc en el foro de PHP en Foros del Web. Perdón por mi ignorancia ¿hay alguna forma de bajarme los ficheros alojados en mi servidor a mi pc utilizando el ftp de php? La idea ...
  #1 (permalink)  
Antiguo 20/11/2005, 12:18
 
Fecha de Ingreso: enero-2002
Mensajes: 74
Antigüedad: 22 años, 3 meses
Puntos: 0
Bajar ficheros por ftp a mi pc

Perdón por mi ignorancia
¿hay alguna forma de bajarme los ficheros alojados en mi servidor a mi pc utilizando el ftp de php? La idea es hacer una copia automática de una serie de ficheros, que tengo en un servidor ajeno alojados, en mi pc
Estoy haciendo pruebas mediante el uso de la función ftp_get pero lo mas que consigo es copiar un fichero en otro directorio dentro del servidor pero no que me haga un unload de esos ficheros a mi pc.
Es decir si utilizo ftp_get($conexion,"C:\nnnnn.txt","nnnnn.txt",FTP_B INARY))..
lo que hace es crearme el fichero "C:\nnnnn.txt" en el directorio del servidor donde ejecuto el script y yo lo que quiero es que me lo baje a mi disco duro.
Un saludo
  #2 (permalink)  
Antiguo 21/11/2005, 02:52
 
Fecha de Ingreso: mayo-2005
Ubicación: Muy lejos de aquí
Mensajes: 367
Antigüedad: 18 años, 11 meses
Puntos: 0
Funciones FTP en PHP
__________________
Saludos!
  #3 (permalink)  
Antiguo 21/11/2005, 03:57
 
Fecha de Ingreso: agosto-2005
Mensajes: 109
Antigüedad: 18 años, 7 meses
Puntos: 0
Por algún lado -hace poco- dejé en este foro el script que me hice para hacer exactamente eso. Búscalo en mi perfil, 'Encontrar todos los post' o algo así.

Un saludo.
  #4 (permalink)  
Antiguo 21/11/2005, 17:37
 
Fecha de Ingreso: enero-2002
Mensajes: 74
Antigüedad: 22 años, 3 meses
Puntos: 0
Hola Shockly
Muchas gracias por responder. Me imagino que te refieres a este mensaje:
-------------------------------
[QUOTE=Shockly]Buenas,

Hace poco se me planteó mover 'a mano' un site, de un server a otro... y fue un cognazo.

Total, que me he hecho un script, 'FTP -> localhost' que, manteniendo la estructura, permisos y fechas de los files de un directorio FTP origen, mueve ese directorio a una carpeta destino definida por el usuario y localizada en localhost.

Actualmente uso este script para mover sitios completos y para hacer de forma sencilla backups de attachments de foros, por ejemplo. Está probado en servers Windows y Linux.

Su estética es espartana, pero para este tipo de cosas lo que me interesa es que funcionen, no que se vean bonitas.

El script -que no puedo pegar aquí por ser demasiado largo- está aquí: http://www.elpombo.com/almacen/kerne...alhost.php.txt

y cuando se lanza, esto es lo que aparece... no creo que sea necesario explicar mucho más.

Un saludo.


P.D. Para que lo podáis probar he creado un espacio en Siteburg y metido allí un par de cosas irrelevantes, sólo para este menester. Eso quiere decir que los valores por defecto que presenta el script, son reales.

------------------------------
Bien, tengo un problema y es que no consigo acceder a esta página que indicas, me dice que no existe
http://www.elpombo.com/almacen/kerne...alhost.php.txt

Te agradecería que revisaras la dirección ya que por lo que comentas seguramente se trata de lo que estoy buscando.
Un saludo
Morta
  #5 (permalink)  
Antiguo 21/11/2005, 17:39
 
Fecha de Ingreso: enero-2002
Mensajes: 74
Antigüedad: 22 años, 3 meses
Puntos: 0
Muchas gracias lanceusp. Precisamente intenté hacerlo mediante las indicaciones de esa página y lo mas que conseguí fue crearlo en otra carpeta de mi servidor pero yo lo que quiero es bajarlo a mi pc. Quizá algo no haga bien o no lo entienda
Un saludo
Morta
  #6 (permalink)  
Antiguo 21/11/2005, 18:11
 
Fecha de Ingreso: agosto-2005
Mensajes: 109
Antigüedad: 18 años, 7 meses
Puntos: 0
Morta, lo tienes en http://www.elpombo.com/almacen/Kernel/ ... en la carpeta 'temporal'.

Un saludo.
  #7 (permalink)  
Antiguo 21/11/2005, 18:38
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Ojo con el detalle de ejecución del ejemplo de Shockly.

Se trata de que TU en tu PC donde quieres "bajarte" el archivo corras PHP .. ahí ejecutas PHP como si de un cliente de FTP cualquiera se tratase (cuteFTP .. etc) tu script PHP que corre en tu PC se conecta a tu servidor vía FTP .. se autentifica y te baja el archivo/archivos ...

La otra solución es que TU te instales un servidor FTP en tu PC y desde TU sitio remoto uses las mismas funciones de FTP para conectarte a tu PC (a tu servidor FTP que ahí correrá).

Pero, así .. automático bajar un archivo a cierto PC sin más .. sin autorización .. sin "servidor" instalado en ese PC no puedes hacerlo por esos motivos de seguridad.

Por otro lado hay que tener bien claro que es "FTP" y que implica .. FTP es un protocolo de transferencia de archivos .. depende de un "servidor" que haga eso mismo: servir los archivos, y de "clientes" que se pueden conectar a el para obtener esos archivos: aplicaciones windows como CuteFTP, o algo programado en PHP como puedes hacer con las funciones de FTP de PHP para usar al própio PHP como "cliente" de FTP.

Un saludo,
  #8 (permalink)  
Antiguo 21/11/2005, 18:56
 
Fecha de Ingreso: agosto-2005
Mensajes: 109
Antigüedad: 18 años, 7 meses
Puntos: 0
Cita:
Iniciado por Cluster
Ojo con el detalle de ejecución del ejemplo de Shockly.

Se trata de que TU en tu PC donde quieres "bajarte" el archivo corras PHP .. ahí ejecutas PHP como si de un cliente de FTP cualquiera se tratase
Naturalmente, así es... aunque una puntualización: "tu PC" puede tratarse de otro servidor, con lo que mover un sitio completo o hacer su backup, se convierte en trivial.

Un saludo.

  #9 (permalink)  
Antiguo 22/11/2005, 05:05
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Shockly

Sólo quería aclarar que tu usas a PHP como cliente FTP .. donde ejecutes "PHP" es lo de menos, ya sea en tu PC (lo que llamas "localhost") u otro servidor que corra PHP.


Un saludo,
  #10 (permalink)  
Antiguo 23/11/2005, 03:52
 
Fecha de Ingreso: enero-2002
Mensajes: 74
Antigüedad: 22 años, 3 meses
Puntos: 0
Cita:
Iniciado por Shockly
Morta, lo tienes en http://www.elpombo.com/almacen/Kernel/ ... en la carpeta 'temporal'.

Un saludo.
Muchas gracias Shockly. He podido probarlo pero creo que no es exactamente la idea que yo tenía. Además algo se me debe escapar, ya digo que no soy muy hábil con esto del php. Con la explicación de Cluster mas o menos me parece entender que debería de ejecutar el script en mi máquina teniendo un servidor tipo Apache instalado en ella o algo similar. La prueba que he hecho ha sido subiendo tu script a mi servidor y ejecutándolo allí con lo cual las carpetas se crean en el servidor y no en mi máquina. Es decir la copia se haría en el servidor.
En fin, mi idea era que de alguna forma automática, por ejemplo al acceder a una página se me hiciera una copia automática en mi máquina de una serie de ficheros. Vamos, como si entrara con un programa de ftp y me bajara directamente los ficheros que necesito a mi pc. El motivo es que tengo una página en la que los usuarios suben fotos que luego son mostradas en otra página. El problema que se me plantea es que hice un script que manipulaba las fotos hasta darlas un tamaño máximo para que no descuadren la página donde luego son mostradas. Este script funciona perfectamente cuando la imagen no es muy pesada o muy grande pero al pasar de un cierto limite, da un fallo de ejecución en el servidor supongo por falta de memoria o limite de tiempo. Lo que hago ahora es dejarles que suban al tamaño que quieran las fotos y yo de forma manual selecciono aquellas muy grandes, me las bajo a mi maquina, las redimensiono y las vuelvo a subir. La idea sería que con un simple script, se controlaran las imagenes que superan ciertas dimensiones (eso ya lo tengo hecho) y me las bajara a mi máquina sin tener que entrar yo en un programa de ftp y hacerlo manualmente. Menudo rollo acabo de lanzar...
Me parece raro que se pueda hacer un upload de un fichero a un servidor de una forma tan sencilla y para hacer un unload parezca imposible.

De cualquier forma muchísimas gracias a los dos.
Un saludo
Morta
  #11 (permalink)  
Antiguo 23/11/2005, 07:35
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
En fin, mi idea era que de alguna forma automática, por ejemplo al acceder a una página se me hiciera una copia automática en mi máquina de una serie de ficheros
Esto no es posible "sin más" ... Si tu tienes bien delimitado el problema: bajar un archivo a tu PC desde el servidor .. Instalate un servidor FTP en tu PC y usa tu script PHP en tu servidor remoto como cliente FTP conectandose a TU PC; justamente podrías usar así el ejemplo de Shockly, pero en sentido inverso .. es decir; lo instalas en tu servidor remoto y los datos de conexión del FTP lo apuntas a TU IP de tu conexión y usuario/password del usuario que crees en TU serviror FTP en tu PC.

Eso sería una forma -segura- de hacer trasnferencias de archivos. (En un servidor FTP tu configuras usuarios que tendrán acceso, donde quedaran los archivos, quotas para tamaño que puedan usar .. etc .. etc .. Por eso es un "servidor" .. por qué otorga privilegios según corresponda).

Cita:
Me parece raro que se pueda hacer un upload de un fichero a un servidor de una forma tan sencilla y para hacer un unload parezca imposible.
No es raro .. sólo ten presente que cuando tu haces un "upload" a un servidor de un archivo estás bajo control total de alguna aplicación .. desde el própio servidor que mira cosas como tamaños ... tipos de archivos .. hasta tu própia aplicación con restricciones, el sitio donde subes tus archivos y donde quedan está perfectamente delimitado.

Ahora .. si tu al entrar a X página se te crease sin TU PERMISO un directorio y ahí archivos .. ¿que pasaría? .. Ya la mayoría de "virus" aprovechan "bug/exploits" de navegadores para hacer eso de forma maliciosa. Recuerda que para lo que a tí pueda ser "sano" .. otro lo intetará hacer para fines maliciosos.

Cita:
Este script funciona perfectamente cuando la imagen no es muy pesada o muy grande pero al pasar de un cierto limite, da un fallo de ejecución en el servidor supongo por falta de memoria o limite de tiempo.
Y no puedes darle más tiempo de ejecución a tu script con:
set_time_limit()
www.php.net/set_time_limit

Si es problema de memoria . .ahí no podrás hacer nada directamente tu, tendrías que consultar con tu administrador de tu servicio de hosting? ...

Un saludo,
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 13:03.