Foros del Web » Programando para Internet » PHP »

ayuda a modificar archivo de texto

Estas en el tema de ayuda a modificar archivo de texto en el foro de PHP en Foros del Web. como puedo modificar cierta linea nomas? para abrir el archivo tengo Código PHP:       $ar = fopen ( "archivo.txt" , "r" ) or die( "No se pudo abrir el archivo" );       while (! feof ...
  #1 (permalink)  
Antiguo 06/05/2010, 16:57
 
Fecha de Ingreso: mayo-2010
Mensajes: 25
Antigüedad: 14 años, 6 meses
Puntos: 1
ayuda a modificar archivo de texto

como puedo modificar cierta linea nomas?

para abrir el archivo tengo

Código PHP:
      $ar=fopen("archivo.txt","r") or die("No se pudo abrir el archivo");
      while (!
feof($ar)) {
        
$linea=fgets($ar);
        
$lineasalto=nl2br($linea);
        echo 
$lineasalto;
      }
      
fclose($ar); 
  #2 (permalink)  
Antiguo 06/05/2010, 17:00
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 20 años, 11 meses
Puntos: 89
Respuesta: ayuda a modificar archivo de texto

¿Pero como sabes que linea quieres modificar? Si sabes la ubicación de la línea, puedes usar fseek.
__________________
Nunca te olvidaré mi negra hermosa. Te extraño demasiado.
  #3 (permalink)  
Antiguo 06/05/2010, 17:02
 
Fecha de Ingreso: mayo-2010
Mensajes: 25
Antigüedad: 14 años, 6 meses
Puntos: 1
Respuesta: ayuda a modificar archivo de texto

es que es un sistema de tagboard simple que estoy haciendo para usarlo y aprender un pcoco de php pensaba agregarle un poco de ajax para darle dinamismo.. si sos el admin apareceria una cruz para elimnar el comentario y como todos los comentarios tienen la misma cantidad de lineas con un simple calculo me daria las lineas :O
  #4 (permalink)  
Antiguo 07/05/2010, 13:30
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 20 años, 11 meses
Puntos: 89
Respuesta: ayuda a modificar archivo de texto

Con fseek puedes mover el puntero del archivo. De esta manera puedes especificar desde que punto vas a escribir/leer en el archivo.

Tendrías que contar la cantidad de caracteres que hay antes de la línea que deseas leer, y ese número se lo pasas a fseek, para luego utilizar fgets.

Sería una buena manera al no saber la cantidad de caracteres, y tampoco la línea es siempre la misma, así que con ese método podrías obtener la línea que deseas.

Sería algo como esto :

Código PHP:
// Abrimos el fichero :
$file "archivo.txt";
$op fopen($file"r");

// Necesitas la cantidad de caracteres que hay antes de la línea a leer
$cant_chars X;

// Movemos el puntero a la línea deseada
// (creo que hay que sumarle uno, no estoy seguro)
fseek($op$cant_chars+1);

// Ahora retornas la línea, con fgets, el cual lee hasta que encuentre un fin de linea.
echo fgets($op);

fclose($op); 
PD : Si tu intención es modificar (reescribir) esa línea, y la cantidad de caracteres es mayor a la que había actualmente, podrías estar escribiendo sobre el texto que continua bajo la línea que modificaste. Así que habría que hacerlo de otra manera, donde obtengas el texto que se encuentra bajo aquella línea, y luego con fwrite, concatenar el texto bajo esa línea, a la línea. Un poco confuso, pero en la práctica no lo es .
__________________
Nunca te olvidaré mi negra hermosa. Te extraño demasiado.
  #5 (permalink)  
Antiguo 07/05/2010, 15:48
 
Fecha de Ingreso: mayo-2010
Mensajes: 25
Antigüedad: 14 años, 6 meses
Puntos: 1
Respuesta: ayuda a modificar archivo de texto

gracias voy aver como me sale

Etiquetas: modificar
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:09.