Kali ini kita akan membahas cara pembuatan guestbook (buku tamu). Langkah-langkah yang kita lakukan dalam pembuatan buku tamu ini adalah:Â
- Membuat table MySQL yang akan menyimpan isi buku tamu
- Membuat form pengisian buku tamu
- Membuat program untuk menerima masukan data dari form yang telah kita buat sebelumnya
- Membuat program untuk menampilkan isi buku tamu.
Membuat tableÂ
Struktur table untuk menyimpan buku tamu adalah sebagai berikut:
| Kolom/Field | Tipe data | Keterangan |
|-------------|------------------------------------------------------|------------------------------------------------------------------------------------------------------------|
| id | int(10) unsigned auto_increment not null primary key | angka dengan panjang maksimal 10, sebagai primary key, tidak boleh kosong, nilai secara otomatis bertambah |
| posted | date | tanggal |
| name | varchar(80) | teks dengan panjang maksimal 80 karakter |
| email | varchar(128) | teks dengan panjang maksimal 128 karakter |
| address | varchar(128) | teks dengan panjang maksimal 128 karakter |
| city | varchar(80) | teks dengan panjang maksimal 80 karakter |
| msg | longblob | teks panjang |
Adapun perintah MySQL untuk membuat table guestbook dengan struktur seperti diatas adalah:
CREATE TABLE guestbook (
id int(10) unsigned NOT NULL auto_increment, posted date NOT NULL, name varchar(80), email varchar(128), address varchar(128), city varchar(80), msg longblob, PRIMARY KEY (id)
);
Membuat form pengisian buku tamu
File bukutamu1.php
<html>
<head>
<title>
Guestbook
</title>
</head>
<body bgcolor="#99CCFF">
<font color="#000066" face=verdana>
<h3 align=left>
Signup Guestbook
</h3>
<form action="bukutamu2.php" method=POST>
<hr size=1 width=100% align=left>
<pre>
Name : <input type=text name=nama size=20>
E-Mail : <input type=text name=email size=30>
Address : <input type=text name=alamat size=30> City : <input type=text name=kota size=25> Message :
<textarea name=pesan rows=5 cols=30>
</textarea>
</pre>
<input type=submit value="Send"> <input type=reset value="Reset">
</form>
</font>
<font color="#000066" face=verdana size=2>
<a href="bukutamu3.php">View Guestbook</a>
</font>
</body>
</html>

Program untuk menerima masukan data dari form
File bukutamu2.php
<html>
<head>
<title>
Guestbook
</title>
</head>
<body bgcolor="#99CCFF">
<font color="#000066" face=verdana>
<h3 align=left>
Signup Guestbook
</h3>
<?php require("utama.php"); $link=open_connection();
$tablename="guestbook";
$tgl=date("Y-m-d");
$pesan=addslashes($pesan);
$sqlstr="INSERT INTO $tablename
VALUES('','$tgl','$nama','$email','$alamat','$kota','$pesan')"; if (!mysql_query ($sqlstr))
{
echo("Invalid Query!<br>Please register again...<br>"); exit;
}
mysql_close($link);
echo("Thank you for signing up Guestbook...<p>");
?>
</font>
<font color="#000066" face=verdana size=2>
<a href="bukutamu3.php">View Guestbook</a> <a href="bukutamu1.php">Sign Up</a>
</font>
</body>
</html>

Program untuk menampilkan isi buku tamu
File bukutamu3.php
<html>
<head>
<title>
Guestbook
</title>
</head>
<body bgcolor="#99CCFF">
<font color="#000066" face=verdana size=1>
<h3 align=left> View Guestbook
</h3>
<?php require("utama.php"); $link=open_connection();
$tablename="guestbook";
$sqlstr="SELECT * FROM $tablename ORDER BY id DESC"; $result = mysql_query ($sqlstr) or die ("Invalid query"); while ($row = mysql_fetch_object ($result))
{
$name=$row->name;
$posted=substr($row->posted,8,2)."-".substr($row->posted,5,2)."-".substr($row-
>posted,0,4);
$email=$row->email;
$address=$row->address;
$city=$row->city;
$msg=stripslashes($row->msg); echo("Posted : $posted<br>"); echo("Name : $name<br>");
echo("E-Mail : <a href=mailto:$email>$email</a><br>"); echo("Address : $address<br>"); echo("City : $city<br>"); echo("Message :<br>"); echo("$msg<br>");
echo("<hr size=1 width=100%>");
}
mysql_close($link);
?>
</font>
<font color="#000066" face=verdana size=2>
<a href="bukutamu1.php">Sign Up</a>
</font>
</body>
</html>
