Cara Membuat Buku Tamu Dengan PHP #1



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)
);

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>
<?php
require("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
<?php
function 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>
<?php
require("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.

Comments

  1. 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.

    ReplyDelete
  2. 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.

    ReplyDelete

Post a Comment

Popular Posts