Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: cundre en 12 Noviembre 2010, 10:26 am



Título: fopen + http error
Publicado por: cundre en 12 Noviembre 2010, 10:26 am
hola Estoy intentando Escribir en un txt por medio de fopen usando http
y me tira este error tanto en localhost como via web server gratuito con txt permiso lectura y escritura.

Warning: fopen(http://dominio/fopen/xxx.txt) [function.fopen]: failed to open stream: HTTP wrapper does not support writeable connections in /var/www/fopen/fopen.php on line xx.


<?php
//$DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];

echo 'Modifiar TXT ONLINE';

$login = 'japones22';
$passwd = 'japon2002';
//abrir archvo http
$fp = fopen("http://www.adominio//xxx.txt", "r+", TRUE);

fwrite($fp, $login."\t");
fwrite($fp, $passwd."\n");


//cierro archivo
fclose($fp);

?>

Me pueden decir a que es debido
en mi php.ini
tengo activado en on allow_url_fopen

Un saludo.


Título: Re: fopen + http error
Publicado por: #!drvy en 12 Noviembre 2010, 15:36 pm
Supongo que estas intentando modificar un archivo en otro servidor no ?
En tal caso el error te dice que no soporta modificaciones externas. Osease, únicamente puedes leer el archivo pero no modificar lo.
Aparte el r+ es unicamente lectura. Para modificacion usa a+.

Si el archivo que intentas modificar esta situado en el mismo servidor donde usas el php script indica la ruta hacia el archivo sin usar el dominio ( fopen('carpeta1/carpeta2/archivo.txt','a+'); ). Si al archivo esta en un servidor externo puedes hacer un archivo adicional que coleccione la información mediante GET o POST y que lo escriba. O usar FTP.




Saludos


Título: Re: fopen + http error
Publicado por: cundre en 12 Noviembre 2010, 17:40 pm
ok gracias por la aclaracion

en local

$fp = fopen("/var/www/fopen/xxx.txt", "a+");

Me Tira: Resource id #3

Aunque Me interesaba hacerlo funcionar con http pero nada ni en local ni via http

$fp = fopen("http://dominio.com/xxx.txt", "a+");

Respecto a r+ si no estpy equivocado abre el archivo para lectura y escritura empezando por el
principio del archivo.

en fin ni con a+ ni ab ni r+

Un saludo





Título: Re: fopen + http error
Publicado por: #!drvy en 13 Noviembre 2010, 01:58 am
Cierto lo de r+ es escritura y lectura, fallo mio xD.

La escritura en servidores externos creo que no es posible. Vamos pensadolo imaginate que asi como esta el script cambiar un archivo en un servidor externo seria un fallo brutal en cuanto a seguridad.

Mirate el metodo FTP.
http://php.net/manual/es/book.ftp.php

O simplemente pon el archivo ese en el otro servidor y guarda las variables mediante GET o POST.




Saludos