Checate este código y me dices.Saludos
Mejor lo pongo
LIBRO DE VISITASEste libro de visitas funciona en base a un archivo de texto, donde cada linea del archivo continene un registro, y a su vez cada línea contiene varios campos separados por el sigono "|" (pipeline). Este archivo tiene un aspecto coo el siguiente:
Walter|Esta es una prueba|06 de julio de 2005|
Claudia|Hoy esta lloviendo|07 de julio de 2005|
El script PHP abre este archivo, lee su contenido y lo almacena en un arreglo donde cada elemento del arreglo es una linea del archivo . Luego se recoore el arreglo y se trocea para separar los campos inlcuidos en cada linea mediante la función explode.
Veamos como podría ser código del archivo PHP que llamermos libro.php:
<?php
$archivo = file("libro.txt");
/* file lee el archivo y guarda el contenido en un arreglo, donde cada elemento del arreglo corresponde a una línea del archivo */
if (!$archivo) /* si no se puede abrir el archivo */
{
echo "<p>No se pudo abrir el archivo.</p>";
}
$filas=count($archivo);
/* la funcion count cuenta el número de elementos de un arreglo y lo guarda en la variable $filas. Esta varible nos servirá como variable de control para recorrer el arreglo $archivo */
for($i=0;$i<$filas;$i++)
{
$campo=explode("|",$archivo[$i]);
/* la funcion explode divide una cadena en base a un caracter elegido, en este caso | y lo guarda en el arreglo $campo
luego se va obteniendo cada campo equivalente a los elementos del arreglo */
$nombre = $campo[0];
$comentario = $campo[1];
$fecha = $campo[2];
/* finalmente se imprimen por pantalla los datos */
echo "\n<p>$comentario<br><font color='B500C2'>$nombre</font><br><font color='FF0000'>$fecha</font></p><br>";
}
?>
Ingreso de DatosPara los usuarios puedan ingresar sus cometarios requeriremos agregar un formulario al final de archivo libro.php y que conecte con script que sea capaz de escribir en el archivo de texto los datos ingresados a través del formulario.
<form action="agrega_comentario.php" method="get">
<p>
Tu Comentario:<br>
<TEXTAREA NAME="comentario" ROWS="8" COLS="60" WRAP="soft"></TEXTAREA></p>
<p>Tu nombre: <input type="text" name="nombre" size=40></p>
<p><input type="submit" value="agrega tu comentario">   <input type="reset" value="limpiar"></p>
</form>
Debemos ahora crear el Script que ingrese los datos en el archivo de texto (agrega_comentario.php):
<?php
$comentario=trim($texto); /* quita los espacios en blanco a los lados de la cadena de texto */
$nombre=trim($nombre);
/* COMILLAS Y OTROS */
/* se reemplazan las comillas y otros simbolos mediante la función eregi_replace que busca una cadena en otra, y l reemplaza por una tercera (ver Manejo de cadenas de Texto) */
$comentario=eregi_replace('\\\"',""",$texto);
$comentario=eregi_replace("\\\'","'",$texto);
$comentario=eregi_replace("<","<",$texto);
$comentario=eregi_replace(">",">",$texto);
/* reemplazo los saltos de carro por la etiqueta <br>, de lo contario al ingresar los datos en el archivo, se me generan saltos de carfro que provocan errores al leer el archivo */
$comentario=eregi_replace("<br>","<br>",$texto);
if($comentario=="") /* reclama si no se ha ingresado texto */
{
echo "<center><h2>¿No vas a escribir nada?</h2></center>";
exit();
}
if($nombre=="") /* reclama si no se ha ingresado nombre */
{
echo "<center><h2>¿Y tu nombre?</h2></center>";
exit();
}
?>
<?php
/* con esta funcion se formatea la fecha al castellano */
function calcula_fecha()
{
/* consultar la funcion date en www.php.net/manual/es/ */
$dia = date ("d"); /* obtiene el número del día del mes */
$me = date ("m"); /* obtiene el número del mes */
$agno = date ("Y"); /* obtiene el año con 4 cifras */
$mes=""; /* se inicia la variable $mes vacía */
/* mediante una serie de if se obtiene el mes en castellano, la funcion date puede obtener el nombre del mes, pero lo hace en inglés */
if($me=="01") $mes="enero";
if($me=="02") $mes="febrero";
if($me=="03") $mes="marzo";
if($me=="04") $mes="abril";
if($me=="05") $mes="mayo";
if($me=="06") $mes="junio";
if($me=="07") $mes="julio";
if($me=="08") $mes="agosto";
if($me=="09") $mes="septiembre";
if($me=="10") $mes="octubre";
if($me=="11") $mes="noviembre";
if($me=="12") $mes="diciembre";
/* se arma la cadena con la fecha */
$cadena = "$dia de ";
$cadena .= "$mes de ";
$cadena .= "$agno";
return $cadena; /* se devuelve la cadena con la fecha */
}
$fecha = calcula_fecha(); /* se guarda en el valor de la funcion calcula_fecha() en la variable $fecha */
?>
<?php
$datos .= "$nombre|$comentario|$fecha|\n";
?>
<?php
/* se genera un puntero que apunta al archivo libro en modalidad de agregar al final "a" */
$archivo = fopen("libro.txt", "a");
if (!$archivo) /* si no se puede abrir el archivo reclama */
{
echo "<center><h2>No se pudieron agregar los datos</h2></center>";
exit;
}
/* Se escriben los datos */
fputs($archivo, $datos); /* fputs, escribe una cadena en el puntero indicado ($archivo) */
fclose($archivo); /* se cierra el archivo */
?>