PHP-MySQL, aplikasi buku tamu

20-April-2008 at 12:40 am 13 comments

Setelah sekian lama gak posting, sekarang saatnya posting lagi…

Kita akan membahas koneksi database mysql dengan PHP,
langkah pertamanya adalah Anda membuat database yang digunakan untuk menyimpan data.

sekarang bukalah: http://localhost/phpmyadmin/ di browser Anda.

Akan muncul tampilan pertama dari phpmyadmin,
phpmyadmin sendiri adalah tool untuk memudahkan administrasi database kita. Kemudian buatlah database baru, misalnya nama databasenya: latihan

Untuk kasus latihan kita, maka akan kita buat aplikasi buku tamu, maka dari itu buatlah tabel: bukutamu di dalam database latihan tadi, field2 nya adalah sebagai berikut:

id : int : autoincrement : primary
nama : varchar(32)
pesan: tinytext
tanggal : date

field id gunanya untuk memberikan primary key pada setiap record
field nama untuk menyimpan nama, menggunakan string dengan maksimal 32 character
field pesan untuk isi pesan yang ditinggalkan
field tanggal untuk mencatat tanggal berapa pesan itu ditinggalkan

Sekarang saya jelaskan aplikasi buku tamunya, aplikasi ini terdiri dari 3 page, yaitu:
1. index.php : untuk form bukutamu, sekaligus ada link yang menuju lihat.php
2. isi.php : file pemroses dari form di halaman index
3. lihat.php : halaman untuk melihat isi pesan yang sudah diisikan

Ingat, yang saya berikan ini adalah contoh yang sangat sederhana, tidak memperhitungkan keindahan, dan keamanan/verifikasi data

Source untuk index.php adalah sebagai berikut:

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”&gt;
<html xmlns=”http://www.w3.org/1999/xhtml”&gt;
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″ />
<title>Untitled Document</title>
</head>

<body>
Buku tamu – <a href=”lihat.php”>lihat isi buku tamu</a><br />
<br />
Isilah buku tamu kami<br />
<br />
<br />
<form id=”form1″ name=”form1″ method=”post” action=”isi.php”>
nama
<input type=”text” name=”nama” id=”nama” />
<br />
<br />
pesan
<textarea name=”pesan” id=”pesan” cols=”45″ rows=”5″></textarea>
<br />
<br />
<input type=”submit” name=”Submit” id=”Submit” value=”Submit” />
</form>
</body>

</html>

Nah, halaman index memang hanya halaman html biasa saja, yang perlu dicermati adalah bagian form nya, form diatas menggunakan property action=”isi.php” artinya yang kita isikan di dalam form tersebut akan dilemparkan ke file isi.php begitu button Submit ditekan.
isi dari form tersebut akan dilemparkan dalam sebuah variabel yang akan diterima di isi.php sebagai:
$_POST[‘nama’] dan $_POST[‘pesan’]


Inilah script di isi.php:

<?php
$nama = $_POST[‘nama’];
$pesan = $_POST[‘pesan’];
$conn = mysql_connect(“localhost”,”root”,””);
if (!$conn) {
echo “Could not connect to db”;
exit(1);
}
$db = mysql_select_db(“latihan”,$conn);

$sqlText = “insert into bukutamu(nama, pesan,tanggal) values(‘$nama’,’$pesan’,NOW(”))”;
mysql_query($sqlText);
header(“location:index.php”);
exit;
?>

Sedikit penjelasan dari script diatas adalah sebagai berikut:}

$nama = $_POST[‘nama’];
$pesan = $_POST[‘pesan’];
Kita sedang membuat variabel, $nama diisi dengan $_POST[‘nama’] atau yang diisikan di form dengan id:nama begitu juga dengan variabel $pesan.

$conn = mysql_connect(“localhost”,”root”,””);
if (!$conn) {
echo “Could not connect to db”;
exit(1);
}
membuat koneksi ke database mysql dengan server: localhost, username: root dan password kosong atau tanpa password, ini adalah default dari wamp server, jika di mysql Anda telah Anda rubah password dan username nya, maka gunakan username dan password Anda

$db = mysql_select_db(“latihan”,$conn);
Kita memilih database: latihan sebagai tujuan script kita

$sqlText = “insert into bukutamu(nama, pesan,tanggal) values(‘$nama’,’$pesan’,NOW(”))”;
mysql_query($sqlText);
Ini adalah sql biasa, gunanya untuk memasukkan data kita, kita tidak perlu memasukkan id karena telah kita set autoincrement pada saat create table tadi, dan tanggal kita gunakan fungsi NOW(”) yang artinya adalah tanggal sekarang

header(“location:index.php”);
exit;
menyuruh page kita redirect ke halaman index.php lagi, setelah data kita masukkan

Bagian terakhir adalah melihat isi buku tamu kita, ini dia script lihat.php:

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”&gt;
<html xmlns=”http://www.w3.org/1999/xhtml”&gt;
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″ />
<title>Untitled Document</title>
</head>

<body>
Isi buku tamu<br />
<br />
<?php
$conn = mysql_connect(“localhost”,”root”,””);
if (!$conn) {
echo “Could not connect to db”;
exit(1);
}
$db = mysql_select_db(“latihan”,$conn);

$sqlText = “select * from bukutamu”;
$result = mysql_query($sqlText);
while($row=mysql_fetch_object($result))
{
?>
<strong>Nama</strong>: <?php echo $row->nama;?><br />
<strong>Pesan</strong>: <?php echo $row->pesan;?><br />
<br />
<?php } ?>
</body>
</html>

yang perlu dikomentari adalah:
$sqlText = “select * from bukutamu”;
$result = mysql_query($sqlText);
while($row=mysql_fetch_object($result))
{
?>
<strong>Nama</strong>: <?php echo $row->nama;?><br />
<strong>Pesan</strong>: <?php echo $row->pesan;?><br />
<br />
<?php } ?>

Artinya setelah hasil select dari tabel kita dapatkan dalam variabel $result, maka data tersebut di-fetch tiap record/row, dan akan diulang terus sampai selesai, makanya kita pakai while loop disitu. Setiap record akan menulis nama dan pesannya.

Gampang sekali kan?
Nah… selamat mencoba (^_^)

Terimakasih
Catatan: Menurut saya cukup sekian saja dasar-dasar PHP yang saya berikan, untuk selanjutnya akan saya isi blog ini dengan materi yang sangat menarik, yaitu: ajax.
Di PHP masih ada 1 lagi yang sangat penting, tapi tidak saya berikan disini, Anda harus mencari sendiri, yaitu tentang: Session handling, happy searching 😀

Advertisements

Entry filed under: PHP Programming. Tags: , , , , , .

PHP: Form handle HTML First

13 Comments Add your own

  • 1. RTFM  |  4-July-2008 at 1:25 pm

    Di PHP masih ada 1 lagi yang sangat penting, tapi tidak saya berikan disini, Anda harus mencari sendiri, yaitu tentang: Session handling, happy searching

    Ngasih tutor jangan setengah-tengah lah….

    Reply
  • 2. ewing  |  9-July-2008 at 7:53 pm

    makasi ya mas aku capek cari yang dapat sorce yang salah sekarang aku dapat.kali lagi makasi…………

    Reply
  • 3. ewing  |  9-July-2008 at 7:54 pm

    mas lain kali aku nanya tolong di bls ya.tanksss..

    Reply
  • 4. antok  |  7-September-2008 at 9:57 pm

    bos, gmn kabarnya? msh ingat saya nggak, dulu bareng di tembalang baru II no 100.

    Reply
  • 5. Eva  |  23-September-2008 at 9:11 am

    yang masih ingin eva ketahui adalah bagaimana jika ingin menghapus databasenya.
    klu boleh dibuat lebih complete lagi…
    thx…

    Reply
  • 6. nicky  |  24-November-2008 at 3:50 pm

    lumayan buat belajar

    Reply
  • 7. Firdinan M. Fuad  |  25-November-2008 at 2:33 pm

    Website yang bagus. Syukur bisa lebih dinamis untuk pengembangan ilmu scripting. Saya ikut senang dengan perkembangan ini. Barangkali ada keinginan untuk menerjemahkan website dalam bahasa Inggris? Atau ada proyek penulisan dan penerjemahan buku profil investasi daerah. Kalau ya, saya siap ambil bagian. Insya Allah. Silakan berkunjung ke: http://www.ib-center.com atau hubungi langsung di http://www.reselindo.com/afiliasi/contact.php

    Reply
  • 8. yusuf widiyanto  |  4-January-2009 at 5:51 pm

    gung….. cah karangmojo….
    aku kancamu sma…… call me 08128282304
    yoseph

    Reply
  • 9. pung  |  7-January-2009 at 11:52 am

    kl yg dah bisa mah gampang tp kl yg belum bisa mah lieur alias pusing lah

    Reply
  • 10. jwertnsfd  |  2-April-2009 at 12:48 am

    apa apaan ini

    Reply
  • 11. cahcomputer  |  28-June-2009 at 9:55 am

    thanks untuk infonya…

    Reply
  • 12. rizal  |  25-May-2010 at 2:15 pm

    Jadi Aplikasi buku tamu itu hanya pesan yang diberikan ke pemilik web atau admin saja ???

    Reply
  • 13. POORPIL  |  27-May-2017 at 12:11 pm

    I can see that you are are genuinely passionate about it! I happen trying to develop my own website and youve stopped us with certain good information.
    Atomic Redster S9

    Reply

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Trackback this post  |  Subscribe to the comments via RSS Feed


Blog Stats

  • 4,865 hits
April 2008
M T W T F S S
« Mar   May »
 123456
78910111213
14151617181920
21222324252627
282930  

%d bloggers like this: