Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/07/2009, 11:42
Senku
 
Fecha de Ingreso: abril-2009
Mensajes: 18
Antigüedad: 15 años
Puntos: 0
Libro de visitas PHP/TXT: un par de cuestiones

Hola a todos,

Acabo de terminar un sencillo libro de visitas en PHP con "base de datos" en TXT (vamos, ninguna base de datos xD) para mi web que, como no tengo ni idea de programación, ha salido con -mucho- esfuerzo gracias a un par de tutoriales que encontré por Internet. Funcionar, lo que es funcionar, funciona, pero hay un par de cosas que querría solucionar. En concreto, una cosa que querría solucionar y otra que quisiera añadir.

Lo que quiero solucionar es que, imagino que debido al uso del simple TXT, el resultado que se muestra en pantalla para cada comentario omite los saltos de línea, por lo que todo aparece en un mismo párrafo y queda un poco feo.

Lo que quiero añadir es una galería de smileys. Para esto he investigado un poco ya, pero con mis nulos conocimientos de PHP, mis intentos hasta ahora han sido fallidos. Sé que hay que usar una función de sustitución de caracteres para que un ":)" sea el .gif con el smiley correspondiente, pero no sé exactamente dónde debo colocar esa función.

Os pongo los códigos de los .php que uso:

Nota: El formulario para escribir los comentarios está en otra página diferente a donde se ven los comentarios ya escritos.

verlibro.php: -Esto es lo que pongo en la página donde quiero que se vean los comentarios. Ya no pongo el código HTML, es lo de siempre.

Código PHP:
<?php
    readfile
("data.txt");
?>
indice.php: Este es el formulario, con algunos divs para formateo mediante CSS.

Código PHP:
<div id="form">
    <
form method="post" action="libro.php">
    <
div id="izqform">
    <
label for="Name">Nombre:</label> <input type="text" id="Name" name="Name" />
    <
label for="Email">E-Mail:</label> <input type="text" id="Email" name="Email" />
    <
label for="Homepage">Web:</label> <input type="text" id="Homepage" name="Homepage" />
    </
div>
    <
div id="derform">
    <
label for="Comments">Comentarios:</label> <textarea id="Comments" name="Comments" class="input" rows="6" cols="20"></textarea>
    </
div>
    <
div id="botonform"><input type="submit" class="button" value="Enviar" /></div>
    </
form>
</
div
libro.php: Y este es el archivo donde está la programación PHP que hace algo con el formulario anterior, también con algunas etiquetas para formateo CSS.

Código PHP:
<?php
 
$name 
$_POST['Name'];     
$email $_POST['Email'];        
$homepage $_POST['Homepage'];
$comments $_POST['Comments'];
$timedate date("M d, Y (g:i a)"time() + 0000);
 
if (
$name == "" or $comments == "") {
    echo 
"<div class=\"fehlerreport\">Los campos Nombre, E-Mail y Comentarios deben contener alguna información.<br />¡Gracias!</div>";
} else {
    
$oldinfo file_get_contents("data.txt");
    
$guestbookdata fopen("data.txt""w+");
    
fwrite($guestbookdata"<div class=\"posteins\"><a class=\"linktext3\" href=\"mailto:{$email}\">{$name}</a> - <a class=\"linktext3\" href=\"{$homepage}\">{$homepage}</a> - <em>{$timedate}</em> </div>\n");
    
fwrite($guestbookdata"<div class=\"postzwei\"><strong>Comentarios:</strong><br /> $comments </div>\n \n");
    
fwrite($guestbookdata"$oldinfo");
    
fclose($guestbookdata);
    
readfile("data.txt");
}
?>
A ver si me podéis ayudar con ambas cuestiones.

Muchas gracias de antemano!