Foros del Web » Programando para Internet » PHP »

Como leo un archivo... carpeta ftp

Estas en el tema de Como leo un archivo... carpeta ftp en el foro de PHP en Foros del Web. Hola, Si alguien me pudiera ayudar a solucionar esto, de ante mano les agradezco sus comentarios. Como puedo leer un archivo por php que tengo ...
  #1 (permalink)  
Antiguo 25/02/2010, 19:14
 
Fecha de Ingreso: febrero-2010
Mensajes: 57
Antigüedad: 14 años, 8 meses
Puntos: 1
Pregunta Como leo un archivo... carpeta ftp

Hola,

Si alguien me pudiera ayudar a solucionar esto, de ante mano les agradezco sus comentarios.

Como puedo leer un archivo por php que tengo en una carpeta ftp para después mostrarse el nombre al usuario y a su vez este pueda descargarlo por su navegador?????????

Estoy usando este código y se q me falta mucho, pero no se como continuar:


Código PHP:
Ver original
  1. <?php
  2. $name = $_SESSION['nombre'];
  3. echo "$name" . "<br />";
  4. $type = $_SESSION['tipo'];
  5. echo "$type" . "<br />";
  6. $carpeta_temp = "carga_ftp_tmp/".$name;
  7.  
  8. //Conexión al sitio FTP
  9.  $servidor_ftp = "127.0.0.1";
  10.  $conexion_id = ftp_connect($servidor_ftp);
  11.  $ftp_usuario = "marcela";
  12.  $ftp_clave = "cemsmgr75";
  13.  
  14. //Copiando el archivo al sitio FTP
  15.  $archivo_bajar = $name;
  16.  $resultado_login = ftp_login($conexion_id, $ftp_usuario, $ftp_clave);
  17.  
  18.  //echo "Contectado y logeado al sitio FTP... " . "<br />";
  19.   if ((!$conexion_id) || (!$resultado_login))
  20.      {
  21.        echo "La conexion ha fallado! al conectar con $servidor_ftp para usuario $ftp_usuario" . "<br />";
  22.        exit;
  23.      }
  24.     else
  25.     {
  26.      ftp_pasv ($conexion_id, true);
  27.      $download = ftp_get($conexion_id, $carpeta_temp, $archivo_bajar, FTP_BINARY);
  28.      if (!$download)
  29.       {
  30.         echo "Ha ocurrido un error al descargar el archivo" . "<br />";
  31.       }
  32.       else
  33.        {
  34.          echo "Copia de $nombre_bajar desde el server FTP al equipo del usuario" . "<br />";
  35.        }
  36.     }
  37.   ftp_close($conexion_id);
  38. ?>


Gracias por sus respuestas.

Marsh_Spider
  #2 (permalink)  
Antiguo 25/02/2010, 19:33
Avatar de camsworksinc  
Fecha de Ingreso: julio-2008
Ubicación: Queretaro
Mensajes: 261
Antigüedad: 16 años, 4 meses
Puntos: 11
Respuesta: Como leo un archivo... carpeta ftp

Ahora si se ve mejor tu codigo! Pudiste resolver el problema de tu post anterior? porque es similar no?
Lo que entiendo es que quieres mandarle un archivo al navegador del usuario para que lo descargue, y dicho archivo esta en un servidor FTP.
¿Es asi?
__________________
¡Malditas computadoras que siempre hacen lo que les DIGO que hagan, no lo que QUIERO que hagan!
  #3 (permalink)  
Antiguo 25/02/2010, 23:18
 
Fecha de Ingreso: febrero-2010
Mensajes: 57
Antigüedad: 14 años, 8 meses
Puntos: 1
Respuesta: Como leo un archivo... carpeta ftp

Asi es, eso es precidamente lo que quiero, hacer descargar un archivo que se encuentra en un sitio ftp, por medio del navegador del usuario .... pero nose como hacerle, ni por donde buscarle, si pudieran darme algún tip, bienvenido y gracias.

Marsh_Spider
  #4 (permalink)  
Antiguo 25/02/2010, 23:22
Avatar de camsworksinc  
Fecha de Ingreso: julio-2008
Ubicación: Queretaro
Mensajes: 261
Antigüedad: 16 años, 4 meses
Puntos: 11
Respuesta: Como leo un archivo... carpeta ftp

En el post pasado, era lo mismo que querias, e ibas por buen camino. Es decir, lograbas bajar el archivo de FTP a una variable, y luego intentabas enviarlo al usuario mediante los headers. ¿Pudiste hacer que funcionara, o que sucedio?
__________________
¡Malditas computadoras que siempre hacen lo que les DIGO que hagan, no lo que QUIERO que hagan!
  #5 (permalink)  
Antiguo 26/02/2010, 14:18
 
Fecha de Ingreso: febrero-2010
Mensajes: 57
Antigüedad: 14 años, 8 meses
Puntos: 1
Exclamación Respuesta: Como leo un archivo... carpeta ftp

Si, pero le quité los headers, para probar y ver que hacia la función ftp_get y ahora no me lo descargar, pero si me lo deja vacio, es decir, que cuando lo subo mediante el ftp_put, me lo coloca muy bien en la carpeta, lo puedo visualizar y todo, pero cuando lo quiere obtener con la otra función ftp_get, no lo presenta y ni descarga nada.

Esto ultimo supongo que es xq no tiene los header, pero con esto puedo comprobar que no me lo estan descargando mal los headers, sino el ftp_get y que necesito obtener su contenido o hacer algo antes para interpretar el ftp_get o su contenido....... bueno, eso pienso.

Como ven??

Marsh_Sipider
  #6 (permalink)  
Antiguo 26/02/2010, 15:52
Avatar de camsworksinc  
Fecha de Ingreso: julio-2008
Ubicación: Queretaro
Mensajes: 261
Antigüedad: 16 años, 4 meses
Puntos: 11
Respuesta: Como leo un archivo... carpeta ftp

Para enviar un archivo al navegador utilizando HTTP, se usan los headers. Sin ellos, el navegador no sabe que le estan enviando algo, y por tanto, no descarga nada.
Si bien entiendo, lo primero que quisiste hacer es traer un archivo del servidor FTP, y verificar si el archivo se descargo correctamente.
Para verificar esto, el codigo que escribiste arriba parece correcto. Una vez que se ejecute el script, puedes ver manualmente si el archivo cuyo nombre defines en la variable $carpeta_temp se descargo en el servidor. Esto lo puedes hacer mediante un cliente FTP al servidor donde se descargo el archivo, o llamandolo directamente poniendo su URL en el navegador.
Una vez que hayas verificado que se descargo, entonces ahora si vuelves a poner los headers para que te envie el archivo al navegador. Lo unico que hay que tener cuidado, es de seleccionar correctamente el tipo MIME del archivo, para que el navegador lo reconozca bien.

Suerte!
__________________
¡Malditas computadoras que siempre hacen lo que les DIGO que hagan, no lo que QUIERO que hagan!
  #7 (permalink)  
Antiguo 26/02/2010, 15:56
 
Fecha de Ingreso: febrero-2010
Mensajes: 57
Antigüedad: 14 años, 8 meses
Puntos: 1
De acuerdo Respuesta: Como leo un archivo... carpeta ftp

Muchisimas gracias camsworksinc; creo q estoy exponiendo mal mi problema.
Lo analizare mejor y preguntaré hasta tener bien definida mi problemática.

Marsh_Spider

Etiquetas: ftp, carpetas
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 21:12.