Foros del Web » Programando para Internet » PHP »

Imposibilidad de bajar un archivo a mi Disco Duro

Estas en el tema de Imposibilidad de bajar un archivo a mi Disco Duro en el foro de PHP en Foros del Web. Seniores: Quisiera saber como podria bajar un archivo que esta en mi propio dominio.../www.midominio.com/archivoabajar.txt a mi c:\... Ya probe al crear todo el archivoabajar.txt y ...
  #1 (permalink)  
Antiguo 21/07/2004, 10:54
 
Fecha de Ingreso: julio-2004
Mensajes: 3
Antigüedad: 13 años, 4 meses
Puntos: 0
Desacuerdo Imposibilidad de bajar un archivo a mi Disco Duro

Seniores:
Quisiera saber como podria bajar un archivo que esta en mi propio dominio.../www.midominio.com/archivoabajar.txt a mi c:\...

Ya probe al crear todo el archivoabajar.txt y no funciono


Tambien lo probe con el copy
$archi = "c:\file2.txt";
if(copy("/.../www.midominio.com/archivoabajar.txt", $archi))
{
//The copy works but does not end up here...
echo "Copy worked";
}
else
{
//...It ends up here
echo "file.txt is in dirdest but ended up here";
}

y tambien via ftp
$ftp_server = "192.168.10.1";
$ftp_user_name = "user";
$ftp_user_pass = "pass";
// set up a connection or die
$conn_id = ftp_connect($ftp_server) or die("Couldn't connect to $ftp_server");
//echo "$conn_id";
if ($login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass)) {
echo "Logged on to ".$ftp_server."<br>User: ".$ftp_user_name."<br>Pass: ".$ftp_user_pass."";
}else{
echo "Can't logon as User: ".$ftp_user_name."<br>Pass: ".$ftp_user_pass."";
exit();
}
$local_file = "C:\\file2.txt";
$server_file = "/var/www/html/contador.txt";

$ftpstream = "c:\"
ftp_get($ftpstream, $local_file, $server_file, FTP_BINARY);

En todos los casos me graba en la misma carpeta donde ejecuto y en el caso 2 y 3 me graba la ruta entera de mi posicion local ("c:\file2.txt") como nombre del archivo
  #2 (permalink)  
Antiguo 21/07/2004, 11:24
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Aclaremos un poco los conceptos.

No puedes bajar un archivo de X servidor a X cliente SIN permisos de este directamente por HTTP.

Ahora .. "soluciones":
1) Preparar el archivo para que el navegador (cliente) lo reciba como archivo a descargar. Cosa que tendrá que solicitar permiso y la hubicación definitiva en el PC del cliente (tu PC) en última instancia.

Eso lo haces con cabeceras HTTP donde indicas el tipo de datos que se van a enviar (según el formato MIME de tu archivo) y lees el archivo del servidor desde su ruta absoluta dada vía PHP para entregarlo al buffer de salida.

Sería algo tipo:

bajar.php
<?
header ("cabeceras http");
readfile("ruta/archivo.tal");
?>

Ejemplos tienes en:
www.php.net/header

Así veras en tu navegador (cuando pidas tu bajar.php ...) la ventanita típica de "archivo a descargar" ..

2) Si quieres el proceso completamente automático. Tendrás que instalar un servidor FTP en tu PC (cliente) y usar a PHP como clíente de FTP con las funciones ftp_xxxx(). Pero, recuerda que la conexión al "FTP" será la de tu PC que tendría que tener instalado un servidor FTP y una cuenta habilitada para su uso.

Un saludo,
  #3 (permalink)  
Antiguo 21/07/2004, 14:56
 
Fecha de Ingreso: julio-2004
Mensajes: 3
Antigüedad: 13 años, 4 meses
Puntos: 0
El tema viene asi...

Lo que necesito es poder bajar cada 5 segundos un archivito Txt con unos datos que llamare desde postgres y voy a ir cargando constantemente en una maquina externa a mi red. La idea que tengo es la de poder tener abierta constantemente una URL y que esta haga el trabajo de ir refrescando el archivo por medio del refresh....!
  #4 (permalink)  
Antiguo 21/07/2004, 15:12
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Pues ya te expliqué como está el tema ...

Instala un servidor FTP en esa máquina que va a generar ese .txt y dejalo accesible por esa cuenta FTP que vas a crear.

Desde tu servidor remoto PHP .. conectas a ese PC (por FTP con esa cuenta) y lees ese archivo para procesarlo a tu PostgreSQL o donde lo requieras.

De otra forma .. el archivo siempre será solicitado "donde quieres guardarlo" de forma manual.

Un saludo,
  #5 (permalink)  
Antiguo 21/07/2004, 15:25
 
Fecha de Ingreso: julio-2004
Mensajes: 3
Antigüedad: 13 años, 4 meses
Puntos: 0
Gracias Cluster.....solo queria dejar mejor la idea!!

Ya estoy buscando la aplicacion FTP

!
  #6 (permalink)  
Antiguo 26/09/2005, 17:31
 
Fecha de Ingreso: septiembre-2004
Mensajes: 66
Antigüedad: 13 años, 2 meses
Puntos: 0
no necesariamente tienes que instalar la aplicacion ftp lo puedes hacer mediante un script yo lo hice en asp estoy implementando algo parecido en php te lo pasare cuando lo termine.
si tienes razon se hace mediante un refresh vas por buen camino
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 14:49.