El libro consta de 1 script,1 formulario,y la tabla... pero tambien pondré,para que sea mas util,el ingresar.php que es el archivo de login:
index.php :
Código:
<html> <head> <title>Libro de visitas</title> <link rel="STYLESHEET" type="text/css" href="estilo.css"> </head> <body> <br> <table align="center" width="550" cellspacing="2" cellpadding="8" border="0" bgcolor="#ffffff"> <tr> <td> <h1>Libro de visitas PHP</h1> <? //conecto con la base de datos $conn = mysql_connect("servidor","usuario","password"); mysql_select_db("nombre_bbdd",$conn); if (!$HTTP_POST_VARS) { //si no recibo nada por el formulario de firma del libro, muestro las firmas del libro //construyo la sentencia SQL $ssql = "SELECT * FROM librovisitas_php"; //se mostrarán las últimas fimas, aunque habrá un enlace en la parte de abajo que se podrá pulsar para ver más firmas if (isset($_GET["vermas"])) $ssql .= " where id_librovisitas_php<=" . $vermas; //ordeno la sentencia y limito el numero de resultados $ssql .= " ORDER BY id_librovisitas_php desc limit 11"; //tomo el juego de resultados $resultid = mysql_query($ssql,$conn); ?> Aquí puedes leer los mensajes de los visitantes y también puedes dejar el tuyo utilizando el formulario de abajo. <br> <br> <span class=fuente8><b>Muchas gracias por tu participación</b></span> <br> <br> <? //muestro los datos en un bucle $num_filas = 0; while (($damefila=mysql_fetch_object($resultid)) && ($num_filas<10)) { ?> <table align="center" width="100%" cellspacing="2" cellpadding="0" border="0"> <tr> <td valign="top" class=fuente8><b> <? //si el visitante no introdujo nombre muestro como nombre "Anónimo" if ($damefila->nombre == "-"){ echo "Anónimo"; }elseif ($damefila->email != "-") { echo '<a href="mailto:' . $damefila->email . '">' . $damefila->nombre . '</a>'; }else{ echo $damefila->nombre; } ?></b>:<br> </td></tr> <tr><td bgcolor=cccccc colspan="2"><img src="images/pixeltrans.gif" width=1 height=1 border="0"></td></tr> <td class=fuente8 valign="top"> <?echo strip_tags($damefila->comentario)?> <td valign="top" align="right" nowrap class=fuente8> Valoracion: <?echo $damefila->valoracion?> </td> </tr> </table> <br> <? $num_filas++; } //termina el bucle while //si quedan más valoraciones en el conjunto de resultados, muestro el enlace de "Ver más" if ($damefila) echo "<div align=center><b><a href=\"index.php?vermas=$damefila->id_librovisitas_php\">Ver más mensajes</a></b></div><br>"; //libero el conjunto de resultados mysql_free_result($resultid); //incluyo el formulario para firmar include ("formul_mensaje.html"); } else { //estoy recibiendo datos del fomulario de firmas //Formateamos un poco el formulario, por si acaso los datos son incorrectos //eliminamos las etiquetas HTML y PHP de las cadenas de texto $nombre = strip_tags($_POST["nombre"]); $email = strip_tags($_POST["email"]); $comentario = strip_tags($_POST["comentario"]); //Cortamos las cadenas demasiado largas $nombre=substr($nombre,0,150); $email=substr($email,0,80); //Comprobamos que el visitante se ha molestado en rellenar algo if (strlen($nombre)==0 and strlen($email)==0 and strlen($comentario)==0) { ?> <div align="center"><b>Gracias por el envío</b>.<br><br>Te agradeceríamos, no obstante y si no resulta mucho esfuerzo, que rellenases alguno de los campos para dejar constancia de tu visita.</div> <? }else{ //si alguno de los campos falta prefiero colocar un guión o "sin comentarios" if (!$nombre)$nombre="-"; if (!$email) $email="-"; if (!$comentario) $comentario="Sin comentarios"; //Generamos la ssql e insertamos el registro $ssql = "INSERT INTO librovisitas_php (nombre,email,valoracion,comentario) VALUES ('" . $nombre . "','" . $email . "'," . $_POST["valoracion"] . ",'" . $comentario . "')"; //echo $ssql . "<p>"; mysql_query($ssql,$conn); ?> <div align="center"><b>Muchas gracias por tu participación</b></div> <? } ?> <br> <br> <div align="center"><b><a href=".">Volver al libro de visitas</a></b></div> <? } mysql_close($conn); ?> </td> </tr> </table> <br> </body> </html>
Y aqui viene el formulario,formul_mensaje.html :
Código:
<form name=librovisitas action="index.php" method="post"> <table width="100%" cellspacing="0" cellpadding="0" border="0"> <tr> <td class=titcol> <b>Firma el Libro de Visitas</b></td> </tr> <tr> <td class=fuente8> Déjanos tu mensaje en el libro de visitas y danos tu opinión del sitio <br> <br> </td> </tr> <tr> <td> <table width="100%" cellspacing="0" cellpadding="0" border="0"> <tr> <td class=fuente8 align="center"> Nombre <br> <input type="Text" name="nombre" size="20" maxlength="150"> <br> <br> Email <br> <input type="Text" name="email" size="20" maxlength="100"> <br> <br> Valoración <br> <select name="valoracion"> <option value=1>Repelente <option value=2>Mal <option value=3 selected>Regular <option value=4>Bien <option value=5>Fantástica </select> </td> <td ALIGN=CENTER class=fuente8 valign="middle"> Comentarios: <br> <textarea name="comentario" cols="30" rows="7"></textarea> </td> </tr> <tr> <td colspan=2 align=center class=fuente8> <br> <input type="submit" value=" Enviar la firma al libro de visitas "> </td> </tr> </table> </td> </tr> </table> </form>
CREATE TABLE librovisitas_php (
id_librovisitas_php int(11) unsigned NOT NULL auto_increment,
nombre varchar(150) NOT NULL,
email varchar(100) NOT NULL,
valoracion tinyint(4),
comentario text,
PRIMARY KEY (id_librovisitas_php)
);
ahora les muestro el ingresar.php:
<?php
session_start();
print("<body bgcolor=#009900 text=#FFFFFF link=#FFFFFF>");
require_once("conexion.php");
$Query = mysql_query("SELECT * FROM usuarios WHERE username='".addslashes(strip_tags($_POST['User']))."' && user_password ='".addslashes(strip_tags($_POST['Password']))."'");
$Q_num = mysql_num_rows($Query);
if($Q_num == 1){
$data = mysql_fetch_array($Query);
$_SESSION['username'] = strip_tags($_POST['User']);
$_SESSION['Auth'] = "YES" ;
$_SESSION["codigoUsuario"] = $data["codigo"];
echo "<script>window.location='default.php';</script>";
exit;
} else {
$_SESSION['Auth'] = "NO" ;
echo("Usuario / Clave no son válidos, intente de nuevo...");
}
?>
Gracias... Espero que me puedan ayudar