Foros del Web » Programando para Internet » PHP »

codigo modificar archivos .txt

Estas en el tema de codigo modificar archivos .txt en el foro de PHP en Foros del Web. Buenas,sabeis el codigo para modificar un archivo de texto con PHP ? osea en un form aparezca lo que tiene el archivo y al poner ...
  #1 (permalink)  
Antiguo 22/03/2005, 15:02
 
Fecha de Ingreso: febrero-2005
Mensajes: 143
Antigüedad: 12 años, 10 meses
Puntos: 0
codigo modificar archivos .txt

Buenas,sabeis el codigo para modificar un archivo de texto con PHP ? osea en un form aparezca lo que tiene el archivo y al poner algo o quitarlo se guarde.
  #2 (permalink)  
Antiguo 22/03/2005, 15:07
Avatar de Seppo  
Fecha de Ingreso: marzo-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.284
Antigüedad: 12 años, 9 meses
Puntos: 17
en http://www.desarrolloweb.com/articulos/893.php tenés un contador que se guarda en un .txt, creo q sirve de ejemplo
Código PHP:
<?
$archivo 
"contador.txt";
$contador 0;

$fp fopen($archivo,"r");
$contador fgets($fp26);
fclose($fp);

++
$contador;

$fp fopen($archivo,"w+");
fwrite($fp$contador26);
fclose($fp);

echo 
"Esta página ha sido visitada $contador veces";
?>
  #3 (permalink)  
Antiguo 22/03/2005, 15:30
 
Fecha de Ingreso: febrero-2005
Mensajes: 143
Antigüedad: 12 años, 10 meses
Puntos: 0
mmm no se no me aclaro pero el form donde lo action?
  #4 (permalink)  
Antiguo 22/03/2005, 17:45
 
Fecha de Ingreso: diciembre-2003
Ubicación: Córdoba, Argentina
Mensajes: 249
Antigüedad: 14 años
Puntos: 0
Supongamos que tomas los datos con la variable contador que te dio seppo.

lo único que tienes que hacer dentro del formulario poner:

Código:
<form method="post" action="archivo_que_guarda_info.php">
    Contador: <input type="text" name="contador" value="<?php echo $contador; ?>" /><br />
    <input type="submit" value="Modificar" />
</form>
El otro archivo recibiría la información. Y hace:

$fp = fopen($archivo,"w+");
fwrite($fp, $_POST['contador'], 26);
fclose($fp);
__________________
Crónicas de un Programador es un sitio que registra lo que ocurre cada día en la vida de un desarrollador. Aquí, intentaremos contar nuestras experiencias diarias, errores, aciertos y técnicas, que pueden llegar a serles de utilidad.
  #5 (permalink)  
Antiguo 22/03/2005, 19:12
 
Fecha de Ingreso: febrero-2005
Mensajes: 143
Antigüedad: 12 años, 10 meses
Puntos: 0
Lo e puesto asi

<?php
$archivo="rated/Sioux.txt";
$fp = fopen($archivo,"w+");
fwrite($fp, $_POST['contador'], 26);
fclose($fp);
?>
<form method="post" action="city2.php">
Contador: <input type="text" name="contador" value="<?php echo $contador; ?>" /><br />
<input type="submit" value="Modificar" />
</form>

Y no va por que?
  #6 (permalink)  
Antiguo 22/03/2005, 19:18
Avatar de SiR.CARAJ0DIDA  
Fecha de Ingreso: junio-2004
Ubicación: Acá
Mensajes: 1.166
Antigüedad: 13 años, 5 meses
Puntos: 4
pero porq no mejor guardas la variable contador? no es mas facil??

fwrite($fp, "\$contador = \"".$_POST['contador'], ."\";");

ahora solo tienes q incluir el archivo donde guardaste contador y listo, tienes la variable:

include($archivo)

"Esta pagina fue visitada <?=$contador?> veces."
  #7 (permalink)  
Antiguo 22/03/2005, 19:22
 
Fecha de Ingreso: febrero-2005
Mensajes: 143
Antigüedad: 12 años, 10 meses
Puntos: 0
aver k no kiero hacer un contador @@

lo que quiero es modificar archivo de txt desde un formulario entiendes?
  #8 (permalink)  
Antiguo 22/03/2005, 20:25
Avatar de SiR.CARAJ0DIDA  
Fecha de Ingreso: junio-2004
Ubicación: Acá
Mensajes: 1.166
Antigüedad: 13 años, 5 meses
Puntos: 4
hace lo que te dije... guardas lo que necesites en una variable, luego la incluis en el formulario, por ejemplo, si es texto en un textarea, y despues actualizas..
  #9 (permalink)  
Antiguo 22/03/2005, 21:05
Avatar de Gerald  
Fecha de Ingreso: julio-2003
Mensajes: 1.356
Antigüedad: 14 años, 5 meses
Puntos: 2
Puedes usar SQL lite, creo que es mas optimo para lo que tu pides, o trabajar con base de datos.
Creeme no es dificil, trabajar con php y mysql es buena combinacion
__________________
Solo por Hoy: Trataré de fortalecer mi mente. Estudiaré y aprenderé algo útil
Hoteldipity
Arte Caracol
  #10 (permalink)  
Antiguo 23/03/2005, 09:23
 
Fecha de Ingreso: febrero-2005
Mensajes: 143
Antigüedad: 12 años, 10 meses
Puntos: 0
no puedo hacerlo en BD..

Aver ahora mismo lo k tengo es un archivo city2.php

<?php
$archivo="./rated/Sioux.txt";
$fp = fopen($archivo,"w+");
fwrite($fp, $_POST['contador'], 26);
fclose($fp);
$contador=$fp;
?>
<form method="post" action="city2.php">
Miembros:
<textarea name="contador" cols="100" rows="40">&lt;?php echo ''.$contador.''; ?&gt;</textarea>
<br />
<input type="submit" value="Modificar" />
</form>

y si pongo algo si k lo modifica pero no logro k en el texarea aparezca ..
  #11 (permalink)  
Antiguo 23/03/2005, 09:36
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
Para leer necesitas fread()...
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #12 (permalink)  
Antiguo 23/03/2005, 09:46
Avatar de Seppo  
Fecha de Ingreso: marzo-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.284
Antigüedad: 12 años, 9 meses
Puntos: 17
Probá con lo siguiente
Código PHP:
<?php
$archivo
="./rated/Sioux.txt";
$fp fopen($archivo,"w+");
fwrite($fp$_POST['contador'], 26);
fclose($fp);
?>
<form method="post" action="city2.php">
Miembros:
<textarea name="contador" cols="100" rows="40"><?php echo ''.$_POST['contador'].''?></textarea>
<br />
<input type="submit" value="Modificar" />
</form>
  #13 (permalink)  
Antiguo 23/03/2005, 09:56
 
Fecha de Ingreso: febrero-2005
Mensajes: 143
Antigüedad: 12 años, 10 meses
Puntos: 0
nada asi tpc va..
  #14 (permalink)  
Antiguo 23/03/2005, 10:04
 
Fecha de Ingreso: febrero-2005
Mensajes: 143
Antigüedad: 12 años, 10 meses
Puntos: 0
mirar ahora e hecho esto:

<?php

$archivo="./rated/Sioux.txt";
$gestor = fopen($archivo, "r");
$contenido = fread($gestor, filesize($archivo));
fclose($gestor);

$fp = fopen($archivo,"w+");
fwrite($fp, $_POST['contenido'], 26);
fclose($fp);
?>
<form method="post" action="city2.php">
Miembros:
<textarea name="contador" cols="100" rows="40"><?php echo ''.$contenido.''; ?></textarea>
<br />
<input type="submit" value="Modificar" />
</form>


y ya me muestra el archivo en el textarea pero al dar a modificar me borra todo si modifico algo me borra todo el .txt
  #15 (permalink)  
Antiguo 23/03/2005, 10:14
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
¿qué hacemos??

Qué estamos haciendo?? un contador de clicks??
... busca... Extraido de php.net. Solo agregado el textarea y los comentarios:
Código PHP:
<?php
$cont
=fopen('cont.txt','r'); // ABRIMOS PARA LEER
$incr=fgets($cont); // tomamos el valor

fclose($cont); // cerramos
if(isset($_POST['suma'])) { // vemos si se mando el formulario (... tema aparte)
$cont=fopen('cont.txt','w'); // abrimos de nuevo pero ahora para escribir
$incr++; // lo incrementamos
fwrite($cont,$incr); // escribimos
fclose($cont); // cerramos
// recuerda que el valor esta en $incr.. eso debemos de imprimir en tu textarea
}
?>
<form method="post" action="<?=$_SERVER['PHP_SELF'?>">
Miembros:
  <textarea name="contador" cols="10" rows="3"><?=$incr ?>
  </textarea>
  <br />
<input type="submit" value="Modificar" name="suma"/>
</form>
Todo de php.net... quizá yo lo hubira echo diferente... pero bueno..

NOTA: Si te daz cuenta núnca crea el archivo.. hazlo tu manualmente con un 0 guardado en él... (porque lee y aumenta.. debe de leer algo)
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #16 (permalink)  
Antiguo 23/03/2005, 11:06
 
Fecha de Ingreso: febrero-2005
Mensajes: 143
Antigüedad: 12 años, 10 meses
Puntos: 0
aver k no estoy haciendo eso... en una lista en .txt tengo miembros de un clan,y lo k kiero es modificarla desde una web
  #17 (permalink)  
Antiguo 23/03/2005, 11:34
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
Necesitarás más que esto... Quizá esto te ayude:
http://www.forosdelweb.com/f18/sistema-opinion-problema-280667/

Suerte!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #18 (permalink)  
Antiguo 23/03/2005, 12:11
 
Fecha de Ingreso: febrero-2005
Mensajes: 143
Antigüedad: 12 años, 10 meses
Puntos: 0
na tio no me aclaro :(
  #19 (permalink)  
Antiguo 23/03/2005, 12:57
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
... Bueno.. te lo puse porque verás que lo ví recientemente y me pareció bueno... Solo queria que... .. Ahora tomas un valor, lo afectas y lo actualizas... solo trabajas con un valor .. y nó guardas más... el lins es para que vieras cómo recuperar y "adjuntar" nuevos valores... como divide primero por lineas y luego por carácteres (///) para generar arreglos... Pero bueno... la parte medular es el PHP que esta en el centro.. olvidate de lo demás... lo que esta comentado... ponle atención.. pero bueno.. si solo te confuncí disculpa.. Busca en el foro, hay muchos casos de esto.. que encuentres uno mejor.. Suerte!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #20 (permalink)  
Antiguo 23/03/2005, 13:16
 
Fecha de Ingreso: febrero-2005
Mensajes: 143
Antigüedad: 12 años, 10 meses
Puntos: 0
mira he hecho 2 archivos.

Agregarm.php

Código PHP:
<?php 
$archivo
="../rated/Sioux.txt"
$gestor fopen($archivo"r");
$contenido fread($gestorfilesize($archivo));
fclose($gestor);
?>
<form method="post" action="../city2.php"> 
Miembros: 
<textarea name="contador" cols="100" rows="40"><?php echo ''.$contenido.''?></textarea> 
<br /> 
<input type="submit" value="Modificar" /> 
</form>
city2.php

Código PHP:
<?php 
$archivo
="./rated/Sioux.txt"
$fp fopen($archivo,"w+"); 
fwrite($fp$contenido26); 
fclose($fp); 
?>

Pero cuando doy a modificar se me borra el txt en vez de actualizarmelo por que?
  #21 (permalink)  
Antiguo 23/03/2005, 13:26
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
porque en city2.php le dices que te guarde $contenido... perdón.. ¿dónde le recogiste valor a esa variable???
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #22 (permalink)  
Antiguo 23/03/2005, 13:27
 
Fecha de Ingreso: febrero-2005
Mensajes: 143
Antigüedad: 12 años, 10 meses
Puntos: 0
a ver lo que se tiene que guardar es lo que este aqui <textarea name="contador" cols="100" rows="40"><?php echo ''.$contenido.''; ?>

...

como lo hago?
  #23 (permalink)  
Antiguo 23/03/2005, 13:34
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
... eso es básico... y lu encuentras en las FAQ.. o una simple busqueda.
en city2.php pon esto:
Código PHP:
<?php
$archivo
="./rated/Sioux.txt";
$fp fopen($archivo,"w+");
fwrite($fp$_POST['contador']);
fclose($fp);
?>
Suerte! ... avizame si sigue el error...
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"

Última edición por jam1138; 23/03/2005 a las 13:38
  #24 (permalink)  
Antiguo 23/03/2005, 13:41
 
Fecha de Ingreso: febrero-2005
Mensajes: 143
Antigüedad: 12 años, 10 meses
Puntos: 0
el problema sigue... no se porque me borra el txt.. :S
  #25 (permalink)  
Antiguo 23/03/2005, 15:18
 
Fecha de Ingreso: febrero-2005
Mensajes: 143
Antigüedad: 12 años, 10 meses
Puntos: 0
nada tios necesito eso cuanto antes y na no se como hacerlo :(
  #26 (permalink)  
Antiguo 23/03/2005, 22:49
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
¿?.. SIGUE??? .. te borra el archivo ó su contenido???...
he probado el código de tu primer archivo y mandando a lo que te puse como segundo archivo y me funciona... tienes un Textare.. escribes lo que quieras y lo modifica...
.. si te borra el archivo esta muuuuuuuuy raro.
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #27 (permalink)  
Antiguo 24/03/2005, 06:56
 
Fecha de Ingreso: febrero-2005
Mensajes: 143
Antigüedad: 12 años, 10 meses
Puntos: 0
A ver me borra el contenido... si pongo por ejemplo HOLA y lo doy si lo guarda,pero si lo k ay dentro lo modifico y le doy me lo borra... porke???????????
  #28 (permalink)  
Antiguo 24/03/2005, 14:44
 
Fecha de Ingreso: febrero-2005
Mensajes: 143
Antigüedad: 12 años, 10 meses
Puntos: 0
:S llevo 2 dias intentando acer algo k seguro es facilisimo.. joer nadie sabe? ...
  #29 (permalink)  
Antiguo 24/03/2005, 23:55
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
volvemos... Te lo borra ó te lo REEMPLAZA???... Creo esto ya lo mencioné:
Cita:
Iniciado por jam1138
tienes un Textarea.. escribes lo que quieras y lo modifica...
Cita:
Iniciado por jam1138
Ahora tomas un valor, lo afectas y lo actualizas... solo trabajas con un valor .. y nó guardas más... el link es para que vieras cómo recuperar y "adjuntar" nuevos valores... como divide primero por lineas y luego por carácteres (///) para generar arreglos...
... Espero que sea esa la confución... que te reemplaze lo que ya tenias y no que de verdad te lo borre... no deberia de hacer esto más que borraras el contenido del textarea y enviaras dicha información.. ahí sí habria un problema...

Bueno... si es esta la confución... tú en un principio hablabas de un contador... para crear un contador debemos de tomar un valor y modificarlo en uno y actualizar (reemplazar)... ya lo expliqué...

Si quieres ir agregando datos debes de cambiar el modo en que abres el archivo... para eso ve la doumentación oficial:
http://mx.php.net/manual/es/function.fopen.php

Pero bueno... por ahí entendí que esto lo quieres para guardar datos.. lo cuál es posible... pero... no sabias ni como recoger un dato de un formulario, lo cuál me indica que tus conocimientos son muy básicos... Así que te recomiendo que te vayas con calma... leete unos tutoriales.. vaz a necesitar manejar arreglos...

Consulta las FAQ... No te creo que lleves tanto tiempo sin poder resolver tu duda.. Busca en el foro!, el manejo de archivos es algo muy común y encontrarás muchos casos, aprende de ellos... por ejemplo esta el link que te pasé... velo... trata de entenderlo.. ve qué funciones ocupa y si no las conoces consultalas en www.php.net ... medios hay muchos, usalos...

Claro... si no quieres liarte y solo encontrar algo que te sirva también tienes la opción de buscarlo... www.hotscripts.com por ejemplo.

Ánimo y la mejor de las suertes.
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #30 (permalink)  
Antiguo 11/04/2005, 21:51
 
Fecha de Ingreso: abril-2005
Mensajes: 5
Antigüedad: 12 años, 8 meses
Puntos: 0
esta seria una forma espero te ayude

viejon ahi ta la solucion a lo que buscabas mi buen. (bueno ami me sirvio verdad) espero que tambien les ayude
Código:
<?php 
$archivo ="textito.txt"; // nombre del archivo
$fichero=fopen($archivo,'r'); // abro de lectura
$cadena = fgets($fichero, 4096); // aqui checo que contiene
list($var, $cont)=split('=',$cadena); // aqui corto las palabras y convierto variables
fclose($fichero); //cerrar fichero

if(isset($HTTP_POST_VARS['info'])) { // si viene de la forma hacer esto
$varia= "&textito=";// creo una de las variables a ingresar
$ble = $HTTP_POST_VARS['info'];// esta es la variable que viene del area de texto
$fichero=fopen($archivo,'w');// abro el archivo para grabar
fwrite($fichero, "$varia$ble\n");// grabo mis variables
fclose($fichero); //cierro el archivo
echo" modificado correctamente";// envio un mensaje de que todo fue bien
exit;// detengo el script para que no me muestre de nuevo la forma 
} 
?> 
// de aqui pa abajo ps nomas es la forma HTML que despliega la variable que deseo modificar
<form method="post" action="<?=$_SERVER['PHP_SELF'] ?>"> 
Contenido: 
  <textarea name="info" cols="20" rows="2"><?=$cont ?> 
  </textarea> 
  <br /> 
<input type="submit" value="Modificar"> 
</form>
hay que recordar que esto lo hice para poder modificar un txt que es llamado por un flash y que contiene una variable a desplegar en una pelicula

te pongo tambien un ejemplo del contenito que tiene mi archivo textito.txt
Código:
&textito=rene rios es un weyon
Espero que sea de ayuda

Última edición por jam1138; 11/06/2008 a las 19:32
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 18:09.