Ver Mensaje Individual
  #7 (permalink)  
Antiguo 10/10/2006, 14:57
Avatar de Erikfrancisco
Erikfrancisco
 
Fecha de Ingreso: noviembre-2003
Ubicación: Estado de México
Mensajes: 503
Antigüedad: 20 años, 5 meses
Puntos: 4
Bueno pues las respuestas a tus preguntas están en este código y las puse como comentario:

Código PHP:
<?php 
$ruta 
'comentarios.txt';
if ( isset ( 
$_POST['submit'] ) ) 
{
   
$nombre $_POST['nombre'];
   
$email $_POST['email'];
   
$comentario $_POST['comentario'];

   
$nuevosdatos $nombre."^".$email."^".$comentario."\n"// utiliza algún carácter de separación no tan común yo utilice ^ pero puede ser el que se te antoje

   
$fp fopen($ruta'a'); // abrimos el archivo para adjuntar los nuevos datos
   
fwrite ($fp$nuevosdatos); // escribimos los datos
   
fclose ($fp); // cerramos el archivo
}
   @ 
$leearchivo file $ruta ); // leemos el archivo

if ( $leearchivo )
{
   
$cuantoscomentarios count $leearchivo );
   
$leearchivo array_reverse $leearchivo ); // esto servirá para mostrar los últimos comentarios
   
$meses = array ( '0''Enero''Febrero''Marzo''Abril''Mayo''Junio''Julio''Agosto''Septiembre''Octubre''Noviembre''Diciembre');

   if ( 
$cuantoscomentarios <= )
   {
      for ( 
$e 0$e $cuantoscomentarios$e++ )
      {
         
$partes explode "^"$leearchivo[$e] );

         echo 
"<table border=0 bgcolor=\"#DEDEDE\"><tr><td>";
         echo 
"<textarea name=\"comentarios\" style=\"width: 400px; height: 40px; border: 0; background-color:transparent; overflow: auto\" readonly>"// esto es lo que harías para poner el mensaje con un ancho fijo
         
$groserias = array ( 'pinche''cabron' ); // disculpa las groserias pero, recuerda que las pueden poner, aquí pon todas las que no quieras que aparezcan
         // esta función se encarga de remplazar las malas palabras que me parece que es lo que pediste sobre comentarios inconvenientes
         // una recomendación: pon todos tus comentarios en mayúsculas o en minúsculas para que esta función de resultados ya que no es lo mismo Cabron, cabron etc, esto lo haces
         // con las funciones strtoupper() o strtolower() respectivamente
         
echo str_replace $groserias'?@$#&'$partes[2] )."</textarea><br/>";
         echo 
"Lo dijo ".$partes[0]." ".date('j')." ".$meses[date('n')]." ".date('Y')." | ".date('g:i a')."</tr></td></table>"// aquí le agrege lo que pediste de la fecha
         
echo "<p>";
      }
   }
   else
   {
      for ( 
$i 0$i <= 2$i++ ) // aquí el <= 2 representa que sólo queremos mostrar 3 mensajes
      
{
         
$partes2 explode "^"$leearchivo[$i] );

         echo 
"<table border=0 bgcolor=\"#DEDEDE\"><tr><td>";
         echo 
"<textarea name=\"comentarios\" style=\"width: 400px; height: 40px; border: 0; background-color:transparent; overflow: auto\" readonly>";
         
$groserias = array ( 'pinche''cabron' );
         echo 
str_replace $groserias'?@$#&'$partes2[2] )."</textarea><br/>";
         echo 
"Lo dijo ".$partes2[0]." ".date('j')." ".$meses[date('n')]." ".date('Y')." | ".date('g:i a')."</tr></td></table>";
         echo 
"<p>";
      }
   }
}
?> 
<form name="form" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST"> 
Nombre:<br/><input type="text" name="nombre" size="32"><br/> 
Correo:<br/><input type="text" name="email" size="32"><br/> 
Comentario:<br/> 
<textarea name="comentario" cols="50" rows="12"></textarea><br/> 
<input type="submit" name="submit" value="Enviar"> 
</form>
Como podrás ver utilice un archivo de texto para guardar los mensajes aunque lo que te aconsejo si es que piensas recibir muchos mensajes es que utilices una base de datos pero creo que con este ejemplo bastará para aclarar tus dudas. Deberías estudiar más funciones de tratamiento de cadenas ya que te serán útiles, echale un vistazo al manual en línea:

http://www.php.net/manual/es/ref.strings.php

Hojala te sea de utilidad. Suerte