Escribir en archivos .TXT Hola, de nuevo aca montando la siguiente leccion, esta trataremos de abrir, escribir y cerrar un archivo .txt (archivo de texto). Esto es muy util como para los libros de visitas, dejar comentarios y cosas por el estilo.
El archivo .TXT lo utilizamos como BASE DE DATOS en vez de mysql, es mucho mas sencillo pero menos util... bien comenzemos con un sencillo y explicado ejemplo:
bien primero creo el archivo de texto que sera mi base de datos y lo dejo en blanco, yo lo llamare:
texto.txt...
ahora, creo el formulario que envia los datos para escribirlos a el archivo de texto, yo lo llame:
ejericio-de-texto.php
<html>
<head>
<title>Escribir en doc, de texto</title>
</head>
<body>
<form action="ejercicio-de-texto2.php">
Nombre
<input type="text" name="nombre">
E-mail
<input type="text" name="mail">
<input type="submit" value="Enviar">
</form>
</body>
</html>
Como ya vimos antes, creamos dos simples input de texto, uno con tu nombre y otro con tu e mail, y el boton enviar...
ahora aqui lo interesante, crear el archivo para escribir en el texto, yo lo llamé:
ejercicio-de-texto2.php
<html>
<head>
<title>Page title</title>
</head>
<body>
<?
$abrir = fopen("texto.txt","a") or die('no se puede abrir el archivo de texto');
fwrite($abrir,$_REQUEST['nombre']);
fwrite($abrir,'\n');
fwrite($abrir,$_REQUEST['mail']);
fwrite($abrir,'\n');
fclose($abrir);
?>
El archivo se guardó correctamente, da clic
[url="texto.txt"]aquí[/url] para ver el contenido de
el archivo de texto.
</body>
</html>
Estudiemos el codigo detenidamente....
:arrow: abrimos la etiqueta php con <?
:arrow: Creamos una variable llamada "abrir", a esta le damos el valor de "fopen" la funcion de "fopen" es:
Abrir un archivo de cualquier tipo recuerda que esto es muy util se escribe asi:
fopen(archivo para abrir, letra);
:arrow: a fopen, le ordenamos que abra texto.txt ponemos una coma "," para separar y la letra "a", bueno y para que rayos quiero la letra "a" a contunuacion lo explico:
letras:
a - sirve para crear un archivo o si no existe y si existe sirve para escribir datos al final de el archivo
r - solamente abre el archivo en modo lectura ( para que el usuario vea lo que se escribio)
w - crea el archivo pero si el archivo ya existe borra lo que hay dentro de el
en este caso nos sirve la letra a
:arrow: se pone entre comillas y se cierra el parentesis )
:arrow: Escribimos "OR DIE" esto quiere decir, si no se puede abrir el archivo que vamos a hacer?! pues esta funcion nos ayuda a eso, or die(texto o explicacion);
esta funcion la aplicamos por si no se abre o no se escribe dentro del archivo, entre el parentesis ponemos el texto que queramos que aparezca,
:arrow: cerramos la linea con ); para separar
:arrow: Aplicamos la funcino "fwrite"
fwrite(archivo, texto a escribir)
:arrow: fwrite escribe en un archivo algun texto, en este caso pusimos la variable abrir que se encarga de abrir el texto o decir que no se pudo abrir, ponemos una coma para separar y luego ponemos lo que queramos escribir....
:arrow: $_REQUEST[''];
Es la respuesta de un formulario, en este caso pusimos
:arrow: $_REQUEST['nombre']; y tambien
:arrow: $_REQUEST['mail'];
Eso quiere decri que se sustituira $_REQUES[] por lo que el usuario escribio, request se ignifica respuesta, entonces enviara la respuesta del formulario... vamos bieen!!
falta poco
:arrow: \n para que sirve??
para saltar una linea, es decir cuando el usuario vea un comentario o algo en su web no se va a poner \n si no que se va a saltar una linea (es como
o
:arrow: fclose();
fclose(archivo a cerrar);
fclose cierra un archivo...
en este caso cerramos el archivo que esta en la variable $abrir asi
fclose($abrir);
y con esto terminamos...
EJECUTAR EL EJEMPLOnota: en vez de fwrite, podemos usar fputs que tienen casi la misma funcion solo que fwrite escribe y fputs mueve lo que escribiste del formulario :wink: