ManyCodes.com – codes & scripts Get free programming codes and tutorials!

13Feb/102

How to add a simple guest book to your site

So How to add a simple guest book to your site? The code below will help visitors to your site to read your guestbook entries and post a message of their own. Very simple setup, only requires you to change 4 settings. This code uses MySQL to store the entries.

<?php
/**
* Create the table in your MySQL database:
*
* CREATE TABLE guests (
*   id int(10) NOT NULL auto_increment,
*   name varchar(50) NOT NULL,
*   message varchar(255) NOT NULL,
*   date timestamp(14) NOT NULL,
*   PRIMARY KEY (id)
* )
*
* Change the database login settings to your own
*
* The script is now ready to run
*/
// Change these to your own database settings
$host = "localhost";
$user = "username";
$pass = "password";
$db = "database";

mysql_connect($host, $user, $pass) OR die ("Could not connect to the server.");
mysql_select_db($db) OR die("Could not connect to the database.");
$name = stripslashes($_POST['txtName']);
$message = stripslashes($_POST['txtMessage']);

if (!isset($_POST['txtName'])) {
$query = "SELECT id, name, message, DATE_FORMAT(date, '%D %M, %Y @ %H:%i') as newdate FROM guests ORDER BY id DESC";
$result = mysql_query($query);
while ($row = mysql_fetch_object($result)) {
?>

<p><strong><?php echo $row->message; ?></strong>

<br />Posted by <?php echo $row->name; ?> on <?php echo $row->newdate; ?></p>

<?php
     }
?>

<p>Post a message</p>

<form method="post" action="<?php echo $_SERVER['REQUEST_URI']; ?>">
<p><label for="txtName">Name:</label><br />
<input type="text" title="Enter your name" name="txtName" /></p>
<p><label for="txtMessage">Your message:</label><br />
<textarea title="Enter your message" name="txtMessage"></textarea></p>
<p><label title="Send your message">
<input type="submit" value="Send" /></label></p>
</form>

<?php
}
else {
// Adds the new entry to the database
$query = "INSERT INTO guests SET message='$message', name='$name', date=NOW()";
$result = mysql_query($query);

// Takes us back to the entries
$ref = $_SERVER['HTTP_REFERER'];
header ("Location: $ref");
}

?> 

The code above is referenced from http://www.totallyphp.co.uk

Tagged as: , , , , , , 2 Comments