Foros del Web » Programando para Internet » PHP »

ayuda con archivo

Estas en el tema de ayuda con archivo en el foro de PHP en Foros del Web. hola necesito aber que esta mal... quiero emplazar una palabra por otra enel archivo.php en este caso yo por remplazado pero no me sirve me ...
  #1 (permalink)  
Antiguo 07/02/2002, 14:26
 
Fecha de Ingreso: noviembre-2001
Mensajes: 108
Antigüedad: 16 años, 1 mes
Puntos: 2
ayuda con archivo

hola necesito aber que esta mal...
quiero emplazar una palabra por otra enel archivo.php en este caso yo por remplazado pero no me sirve me borra todo ayuda


$path="archivo.php";


$fp = fopen($path,"w");
while ($linea= fgets($fp,1024))
{
$texto="yo";
$linea = str_replace($texto,"<h3>remplazado</h3>",$linea);
$texto .= $linea;

echo "ok";
}


echo "no nada";


?>
  #2 (permalink)  
Antiguo 07/02/2002, 14:38
 
Fecha de Ingreso: enero-2002
Ubicación: Dentro del corralón
Mensajes: 287
Antigüedad: 15 años, 11 meses
Puntos: 0
Re: ayuda con archivo

ri_mauro:
Me parece que el problema está en el modo en que estás abriendo el archivo (modo w - solo escritura). Según lo que dice el manual, el modo de lectura / escritura es w+ ya que al abrirlo en modo w automáticamente trunca su tamaño a 0 con lo cual ya no tenés nada para leer.
Mas info en <a href='ir.asp?http://www.php.net/manual/en/function.fopen.php' target='_blank'>http://www.php.net/manual/en/function.fo...</a>.
Saludos.



Leonardo D'Angelo
Buenos Aires
Argentina
  #3 (permalink)  
Antiguo 07/02/2002, 15:36
 
Fecha de Ingreso: noviembre-2001
Mensajes: 108
Antigüedad: 16 años, 1 mes
Puntos: 2
Re: ayuda con archivo

no me pasa lo mismo me borra todo mire en el manual y no me cuadra ninguno sera que el codigo esta mal?
  #4 (permalink)  
Antiguo 08/02/2002, 23:48
 
Fecha de Ingreso: diciembre-2001
Mensajes: 26
Antigüedad: 16 años
Puntos: 0
Re: ayuda con archivo

Hola si, es verdad se borra todo y el archivo queda a 0, yo tengo el mismo problema,necesito pasar un dato a otra página ,pero nadie me lo aclaró de momento.
Un saludo
  #5 (permalink)  
Antiguo 09/02/2002, 00:08
 
Fecha de Ingreso: julio-2001
Ubicación: Internet
Mensajes: 1.690
Antigüedad: 16 años, 4 meses
Puntos: 1
Re: ayuda con archivo

Hola!,

Lo Que Pasa Es Que Al Abrir Los Archivos Con w O w+ Lo Que Hace Es Si No Existe El Archivo Crea Uno Nuevo, Y Si Existe Lo Borra Dejandolo Listo Para Escritura.

Entonces, Lo Que Tienes Que Hacer Es Pasar El archivo.php A Un Archivo Temporal(Lo llame archivoTemp.tmp ) Linea Por Linea y Reemplazando La Palabra En Cada Linea.

Luego Cojes Desde Ese Archivo Temporal Y Copias El Contenido Al archivo.php.

Codigo :

$fpX = fopen(&quot;archivoTemp.tmp &quot;,&quot;w&quot;);
fwrite($fpX, &quot;&quot;);
fclose($fpX);

$fpT = fopen(&quot;archivo.php &quot;,&quot;r&quot;);
while ($linea= fgets($fpT,1024))
{
$linea = str_replace(&quot;palabraAnterior &quot;,&quot;nuevaPalabra &quot;,$linea);
$fpE = fopen(&quot;archivoTemp.tmp &quot;,&quot;a&quot;);
write($fpE, &quot;$linea&quot;);
}

$fpL = fopen(&quot;archivo.php &quot;,&quot;w&quot;);
fwrite($fpL, &quot;&quot;);
fclose($fpL);

$fpS = fopen(&quot;archivoTemp.tmp &quot;,&quot;r&quot;);

while ($linea= fgets($fpS,1024))
{
$linea = $linea;
$fpZ = fopen(&quot;archivo.php &quot;,&quot;a&quot;);
fwrite($fpZ, &quot;$linea&quot;);
}

Este Codigo Puede Ser Optimizado, Eso Te Lo Dejo A Ti ;)

<FONT COLOR=gray SIZE=2><I>"Los Temas Mas Sencillos Son Aquellos De Los Que No Se Sabe Nada"</I></FONT>
  #6 (permalink)  
Antiguo 09/02/2002, 00:09
 
Fecha de Ingreso: julio-2001
Ubicación: Internet
Mensajes: 1.690
Antigüedad: 16 años, 4 meses
Puntos: 1
Re: ayuda con archivo

Hola!,

Se Me Olvidaba, Mas Informacion Sobre El Manejo De Archivos En:

<a href='ir.asp?http://www.desarrolloweb.com/articulos/411.php' target='_blank'>http://www.desarrolloweb.com/articulos/4...</a>
<a href='ir.asp?http://www.desarrolloweb.com/articulos/394.php' target='_blank'>http://www.desarrolloweb.com/articulos/3...</a>

<FONT COLOR=gray SIZE=2><I>"Los Temas Mas Sencillos Son Aquellos De Los Que No Se Sabe Nada"</I></FONT>
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 16:03.