Foros del Web » Programando para Internet » PHP »

Problemas con actualizar un fichero desde un servidor a otro via FTP

Estas en el tema de Problemas con actualizar un fichero desde un servidor a otro via FTP en el foro de PHP en Foros del Web. Buenas, Estoy intentando escribir en un FTP desde un servidor diferente. Servidor uno: http://www.s1.com Servidor dos: http://www.s2.com FTP servidor dos (el unico necesario) ftp://usuario%40s2.com:[email protected] (%40 ...
  #1 (permalink)  
Antiguo 06/08/2010, 03:55
 
Fecha de Ingreso: mayo-2009
Mensajes: 41
Antigüedad: 14 años, 10 meses
Puntos: 1
Problemas con actualizar un fichero desde un servidor a otro via FTP

Buenas,
Estoy intentando escribir en un FTP desde un servidor diferente.
Servidor uno: http://www.s1.com
Servidor dos: http://www.s2.com
FTP servidor dos (el unico necesario) ftp://usuario%40s2.com:[email protected] (%40 es la arroba ya que el usuario es del tipo [email protected])

tengo en el servidor dos una página web solo html
en el servidor uno tengo una página en php que se dedica a leer el contenido del servidor uno (via ftp, y funciona)
Código PHP:
Ver original
  1. $paginas =  "ftp://usuario%40s2.com:[email protected]/pagina.htm";
  2. $ficheroLectura = fopen($paginas, "r");
  3. $contenido = stream_get_contents($ficheroLectura);
  4. fclose($ficheroLectura);
  5. echo $contenido;

luego tengo un botoncito, que despues de hacer las ediciones oportunas, graba, pero aqui viene el problemón, no me lo hace:
Código PHP:
Ver original
  1. //INTRODUCIMOS DATOS
  2. $paginasEscritura =  "ftp://usuario%40s2.com:[email protected]/pagina.htm";
  3.             $fp = fopen($paginasEscritura,'w+');
  4.             flock($fp, LOCK_EX); // realiza un bloqueo exclusivo
  5.             //ftruncate($fp, 0); // truncar el archivo
  6.             $cosa = fwrite($fp, $_POST['datos']);
  7.             flock($fp, LOCK_UN); // libera el bloqueo
  8.             //$c = stream_context_create(array("ftp" => array("overwrite"=>true)));
  9.             //$cosa = file_put_contents($paginasEscritura, $_POST['datos'],0,$c) or die ("imposible");
  10.             echo "<br/>paginasEscritura: ".$paginasEscritura."<br/>\n";
  11.             echo "<br/>devuelveFILE_PUT: ".$cosa."<br/>\n";
  12.             echo "<br/>dump del fichero: ".var_dump($fp)."<br/>\n";
  13.             fclose($fp);

lo del truncate me salta esto:
[<a href='function.ftruncate'>function.ftruncate</a>]: Can't truncate this stream!

lo del fwrite y demas, no me salta error pero me dice que ha escrito 0 bytes

y si uso el file_put_contents es un poco más explícito y lo que dice directamente es que solo ha escrito 0 de X bytes debido a que pueda no haber espacio suficiente en disco (no muestro los errores tal cual, pero si quereis que los muestre lo hago).

Este script php se ejecuta con ajax, la lectura la hace perfecta, pero la escritura se atasca...

espero podais ayudarme, saludos!
  #2 (permalink)  
Antiguo 07/08/2010, 01:06
 
Fecha de Ingreso: agosto-2002
Ubicación: Colón - Entre Rios - Argentina
Mensajes: 647
Antigüedad: 21 años, 8 meses
Puntos: 8
Respuesta: Problemas con actualizar un fichero desde un servidor a otro via FTP

Hola, en vez de abrir el archivo con w+ y truncarlo a cero, directamente abrilo con w (o me pierdo de algo )

Sino podrias probar con funciones especificas para ftp:
http://ar.php.net/manual/es/function.ftp-put.php

Saludos!

Etiquetas: fichero, ftp, servidores
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 15:48.