miércoles, 12 de noviembre de 2008

Simple Libro de Visitas con MySQL y PHP


PHP es una de las tecnologías mas fáciles de usar a la hora de realizar aplicaciones web, es uno de los lenguajes mas fáciles de aprender y lo recomiendo 100% si queremos empezar en este mundo tan versátil de desarrollo web.

En este caso vamos a realizar un libro de visitas donde los usuarios podrán dejar mensajes en tu página web de manera muy secilla, y los mensajes sera guardados en una Base de Datos MySQL para futuras consultas.

Lo primero que debemos hacer es crear una base de datos en nuestro manejador de base de datos, por ejemplo, PHPMyAdmin. Entramos a en manejador y creamos una base de datos llamada "FirmasVisitas", recuerden saber bien el usuario y login que debeun usar para conectarse a la bd, si lo desconocen prueben siempre co el usuario "root" y clave "" (vacia), esos usuarios por defecto normalmente funcionan.

Una vez creada la BD lo que debemos hacer es crear la tabla "firma" en la base de datos, la tabla va a almacenar los mensajes que pongan los usuarios, utilizando el siguinte script en lenguaje SQL:


Código


CREATE TABLE `firmar` (
`firma_ID` int(11) NOT NULL auto_increment,
`usuario` varchar(25) collate latin1_general_ci NOT NULL,
`firma` text collate latin1_general_ci NOT NULL,
PRIMARY KEY (`firma_ID`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=2;

Una vez creada la BD y la tabla que va a almacenar la información procedemos a crear la pagina web que va a permitir al usuario escribir un mensaje apra que sea guardado en la base de datos y luego exibirlo al público, el codigo del archivo es el siguiente:

Debemos conectarnos a la BD al mometo de cargar la página para traer los mensajes ya escritos, Para eso a la base de datos escribimos:

Código
/* conexion ****************/
// conectamos al servidor MySQL
$link = mysql_connect('localhost', 'miUsuario', 'miClave');
if(!$link)
{
die("Error al intentar conectar: ".mysql_error());
}

// seleccionamos la base de datos
$db_link = mysql_select_db('miBaseDeDatos', $link);
if(!$db_link)
{
die('Error al intentar seleccionar la base de datos'. mysql_error());
}
/* fin conexion ************/
Luego debemos enviar el formulario y procesarlo para guardar los datos en la base de datos, en ese mismo momento consultamos los mensajes de la base de datos (que ya deberían incluir el nuevo mensaje recien colocado) y los mandamos a imprimir por pantalla en la página web:

Código
/* prosesamiento de los datos */
// verificamos si ha sido enviado el formulario
if(isset($_POST['enviar']) && $_POST['enviar'] == 'Enviar'){
// verificamos que el formulario
// no venga vacio
if(!empty($_POST['usuario']) && !empty($_POST['firma'])){
// creamos las variables a usar en la consulta
// y le asignamos sus valores
$usuario = htmlentities(trim($_POST['usuario']));
$firma = htmlentities(trim($_POST['firma']));
// la consulta INSERT
$sqlInsert = mysql_query("INSERT INTO firmar (usuario, firma)
VALUES ('$usuario', '$firma')", $link)
or die(mysql_error());
}else{
echo "Debe llenar todos los campos";
}
}
/* fin del proseso de datos */
/* mostrando los registros (firmas) */
$sqlQuery = mysql_query("SELECT * FROM firmar", $link)
or die(mysql_error());
$totalFirmas = mysql_num_rows($sqlQuery);
// verificamos si hay
// alguna firma registrada,
// de lo contrario enviamos un mensaje
if($totalFirmas == 0){
echo "Nadie se ha animado a firmar este libro :(";
}
// si hay firmas registradas
// las mostramos
else{
while($row = mysql_fetch_array($sqlQuery)){
echo "<p><b>$row[usuario]</b> dijo:<br />". nl2br($row['firma']) ."</p><hr />";
}
}
Con esto hemos concluido el libro de visitas, que fácil ¿verdad?, bueno todo con PHP es asi, acostumbrense a esta maravilla de lenguaje para hacer paginas web.

Aqui les dejo el código fuente de la aplicación para que lo descarguen. Recuerden que para correrlo tienen que crear la base de datos y modificar el código de conexión con su usuario, servidor y clave.

4 comentarios:

  1. muy bueno! y muy util. ya se donde aplicarlo en mi pagina

    ResponderEliminar
  2. te hago una consulta si pudieses responderme. Quiero utilizar este libro de visitas para comentar videos que publico en mi web.

    Pero mi idea seria que cada video tenga su libro de visitas independiente. Como logro esto?

    Intente creando una nueva tabla en la misma base de datos.
    luego modifique donde decia tabla "comentar" por el nuevo nombre de la tabla.
    pero no pasa nada. No funciona.

    si pudieses quitarme esta gran duda te lo agradeseria!

    ResponderEliminar
  3. Hay una manera de que usted puede hacer más dinero ahora con una tarjeta de cajero automático en blanco, así que si necesita uno no dude en ponerse en contacto con el hacker en este correo electrónico: phantomghostatmhacker101@yahoo.com él también es bueno en otros tipos de hacking.

    ResponderEliminar