Buku tamu atau guestbook yang biasa kita kenal pas kondangan atau hajatan, ternyata berlaku juga di dunia maya. Fitur ini biasanya disertakan pada blog pribadi maupun Website personal. Tujuan utamanya adalah memberikan sebagai mediasi bagi para pengunjung untuk memberikan komentar dan tanggapan. Berikut kita pelajari cara membuatnya menggunakan pemrograman
 PHP & MySQL.1. Database
Hal pertama yang harus kita persiapkan adalah database. Fungsinya tidak lain tidak bukan adalah sebagai media untuk penyimpanan data. Sebagai contoh saya buat beberapa field yang biasanya terdapat dalam guestbook.
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 text,
PRIMARY KEY (id)
);
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 text,
PRIMARY KEY (id)
);
2. Form
Jika database telah selesai dibuat, sekarang kita akan membuat form awal untuk input data pengunjung. Dalam membuat form.php ini kita sesuaikan dengan field dari database, sehingga setiap data yang masuk ke dalam database tepat tujuan.
|     01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33  |       <html><head><title>Guestbook</title></head><body   bgcolor="#CCFF66"><h2   align=left>Welcome to My Guestbook</h2><a   href="gb1.php">Form Guestbook</a> | <a   href="gb3.php">View Guestbook</a><hr><form   action="gb2.php" method=POST><pre><table><tr><td>Name</td>   <td>:</td> <td><input type=text name=nama   size=20></td></tr><tr><td>E-Mail   <td>:</td> <td><input type=text name=email   size=30></td></tr><tr><td>Address   <td>:</td> <td><input type=text name=alamat   size=30></td></tr><tr><td>City   <td>:</td> <td><input type=text name=kota   size=25></td></tr><tr><td>Message   <td>:</td> <td><textarea name=pesan rows=5   cols=30></textarea></td></tr></table></pre><input   type=submit value="Send"><input     type=reset value="Reset"></form></body></html> |   
3. Proses
Ibarat 2 tempat yang terpisah oleh jurang, maka kita membutuhkan jembatan untuk untuk menyebrang. Kurang lebih seperti itulah analogi dari file proses.php, yaitu menghubungkan form.php dengan file untuk menampilkan data yang diambil dari database.
|     01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27  |       <html><head><title>Guestbook</title></head><body   bgcolor="#CCFF66"><h2   align=left>Welcome to My Guestbook</h2><a   href="gb1.php">Form Guestbook</a> | <a   href="gb3.php">View Guestbook</a><hr><?phprequire("conn.php");$link=open_connection();$tablename="guestbook";$posted=date("Y-m-d");$pesan=addslashes($pesan);$esql="INSERT   INTO guestbook VALUES('','$posted','{$_POST['nama']}','{$_POST['email']}','{$_POST['alamat']}','{$_POST['kota']}','{$_POST['pesan']}')";if   (!mysql_query ($esql)){echo("Invalid   Query!<br> Please   register again...<br>");exit;}mysql_close($link);echo("Thank   you for signing up Guestbook...<p>");?></body></html> |   
4. Koneksi
Fungsinya hampir sama dengan file proses.php, yaitu sebagai penghubung. Namun pada file conn.php fungsi utamanya adalah menghubungkan interface dengan database.
|     01 02 03 04 05 06 07 08 09 10 11  |       <?phpfunction   open_connection() {$host="localhost";$username="root";$password="";$databasename="guestbook";$link=mysql_connect($host,$username,$password)   or die   (mysql_error());mysql_select_db($databasename,$link);return   $link;}?> |   
5. Penampakan
Setelah melalui beberapa proses di atas, maka langkah terakhir adalah membuat file tampil.php untuk menampilkan data yang telah masuk ke dalam database.
|     01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33  |       <html><head><title>Guestbook</title></head><body   bgcolor="#CCFF66"><h2   align=left>Welcome to My Guestbook</h2><a   href="gb1.php">Form Guestbook</a> | <a   href="gb3.php">View Guestbook</a><br><?phprequire("conn.php");$link=open_connection();$sqlstr="SELECT   * FROM guestbook ORDER BY id DESC";$result   = mysql_query ($sqlstr) or   die(mysql_error());while   ($row = mysql_fetch_assoc($result)){$name=$row['name'];$posted=$row['posted'];$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);?></body></html> |   
6. Review
Logika guestbook ini sangatlah sederhana. File form.php merupakan halaman utama yang berfungsi sebagai interface bagi database. Data yang di input pada form.php akan diteruskan ke database sebelumnya akan diproses terlebih dahulu oleh proses.php. Di dalam file ini dibutuhkan file conn.php untuk dapat berhubungan dengan database, sebab data yang telah di input masuk ke dalam database. Setelah data yang diminta ditemukan, file tampil.php akan menampilkannya pada layar. 
0 komentar:
Posting Komentar