Di tutorial Menyimpan Data ke Database & Manampilkan Data dengan PHP ini akan dibahas bagaimana Membuat koneksi ke database MySQL, menyimpan data ke database, Membaca data dari database & menampilkan data ke user. Tutorial ini membutuhkan pengetahuan dasar MySQL anda. Jika anda sama sekali belum memiliki pengetahuan dasar MySQL silahkan kunjungi website www.MySQL.com untuk mempelajari MySQL terlebih dahulu. Karena pada tutorial ini tidak akan dibahas mengenai MySQL secara mendalam.
Buatlah sebuah database dengan nama db_contact_us, kemudian buat sebuah tabel dengan nama tb_contact_us, dengan struktur sebagai berikut:
Field | Tipe Data |
---|---|
nama | varchar(50) |
varchar(50) | |
komentar | text |
Setelah selesai langkah selanjutnya yang harus anda lakukan adalah melakukan koneksi ke database. Untuk melakukan koneksi di PHP adalah menggunakan PDO, pdo(dsn, db_user, db_pass) yang mempunyai 3 parameter, yaitu : dsn adalah Data Source Name, yang berisi informasi nama server atau host tempat database disimpan, dan nama database yang akan digunakan, jika database anda berada pada komputer anda sendiri anda akan mengisi parameter ini dengan mysql:host=localhost;dbname=db_contact_us, db_user adalah user dari database MySQL, dan db_pass password dari user database MySQL. Contoh di bawah adalah contoh untuk melakukan koneksi database db_contact_us, dimana user database MySQL dikomputer saya adalah root dan passwordnya adalah root:
$pdo = new PDO("mysql:host=localhost;dbname=db_contact_us", "root", "root");
Langkah berikutnya adalah membuat form HTML untuk user menginputkan komentarnya. Untuk lebih jelas buatlah contoh berikut ini.
Buatlah document HTML baru dengan text editor anda serta buat HTML form seperti berikut:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Contact US</title>
</head>
<body>
<form id="form1" name="form1" method="post" action="save_contact.php">
<p>Nama :
<input name="nama" type="text" id="nama" />
</p>
<p>
Email :
<input name="email" type="text" id="email" />
</p>
<p>Komentar :
<textarea name="komentar" id="komentar"></textarea>
</p>
<p>
<input type="submit" name="Submit" value="Simpan" />
</p>
</form>
</body>
</html>
Simpan HTML document tersebut dengan nama contact_form.html dan letakkan pada direktori web server anda.
Buat script PHP untuk menyimpan data yang dikirim dari contact_form.html. Mulai dengan membuat inisialisasi document HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Contact Us</title>
</head>
<body>
membuat script PHP untuk koneksi ke database
<?php
//melakukan koneksi ke database
$pdo = new PDO("mysql:host=localhost;dbname=db_contact_us", "root", "root");
kemudian membuat variabel untuk menyimpan data yang dikirim
$nama=$_POST['nama'];
$email=$_POST['email'];
$komentar=$_POST['komentar'];
selanjunya menyimpan data ke tabel, untuk menyimpan data ke tabel gunakan function PDO::prepare(query) yang memiliki sebuah parameter yaitu query = Query yang digunakan untuk menyimpan data (INSERT).
//membuat Query untuk menyimpan data
$sql="INSERT INTO tb_contact_us (nama, email, komentar)
values (:nama, :email,:komentar)";
$pdo->prepare($sql);
//menyimpan data ke database
$pdo->execute(array(
'nama' => $nama,
'email' => $email,
'komentar' => $komentar,
));
selanjutnya memberi tahu user bahwa data telah tersimpan.
echo "<h2>Data Telah Disimpan</h2>";
?>
</body>
</html>
jika dituliskan secara lengkap sebagai berikut:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Contact Us</title>
</head>
<body>
<?php
//melakukan koneksi ke database
$pdo = new PDO("mysql:host=localhost;dbname=db_contact_us", "root", "root");
//membuat variabel untuk
//menyimpan data yang dikirim
$nama=$_POST['nama'];
$email=$_POST['email'];
$komentar=$_POST['komentar'];
//membuat Query untuk menyimpan data
$sql="INSERT INTO tb_contact_us (nama, email, komentar)
values (:nama, :email,:komentar)";
$pdo->prepare($sql);
//menyimpan data ke database
$pdo->execute(array(
'nama' => $nama,
'email' => $email,
'komentar' => $komentar,
));
echo "<h2>Data Telah Disimpan</h2>";
?>
</body>
</html>
Sekarang simpan dengan nama save_contact.php dan letakkan pada direktori web server anda. Kemudian lihat hasilnya di web browser anda. Jika anda telah melakukannya dengan benar maka hasilnya akan seperti berikut:
Setelah bisa menyimpan data ke database sekarang anda akan belajar untuk membaca data dari database dan menampilkannya ke user. Untuk membaca data dari database anda harus melakukkan koneksi terlebih dahulu ke database, baru kemudian membaca data menggunakan fungsiPDO::prepare() dan PDOStatement::fetch(). Untuk lebih jelas lakukanlah contoh berikut ini.
Buat sebuah document baru dengan text editor anda, dan mulai membuat inisialisasi document HTML.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Membaca Data</title>
</head>
<body>
membuat koneksi ke database
<?php
$pdo = new PDO("mysql:host=localhost;dbname=db_contact_us", "root", "root");
membuat query SELECT dan membaca data
//membuat query select
$sql="select * from tb_contact_us";
//membaca data
$hasil=$pdo->prepare($sql);
$hasil->execute()
kemudian menampilkan data ke user dengan fungsi PDOStatement::fetch()
while($row=$hasil->fetch()){
//menampilkan field nama
echo "Nama : ".$row['nama'];
//menampilkan field email
echo "<br>Email : ".$row['email'];
//menampilkan field komentar
echo "<br>Komentar ; ".$row['komentar'];
echo "<hr>";
}
?>
code diatas akan membaca seluruh record yang ada pada tabel, selama masih ada record berikutnya akan terus dilakukan perulangan. Kode secara lengkap adalah sebagai berikut:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Membaca Data</title>
</head>
<body>
<?php
//membuat koneksi ke database
$pdo = new PDO("mysql:host=localhost;dbname=db_contact_us", "root", "root");
//membuat query select
$sql="select * from tb_contact_us";
//membaca data
$hasil=$pdo->prepare($sql);
$hasil->execute()
//menampilkan data
while($row=$hasil->fetch()){
//menampilkan field nama
echo "Nama : ".$row['nama'];
//menampilkan field email
echo "<br>Email : ".$row['email'];
//menampilkan field komentar
echo "<br>Komentar ; ".$row['komentar'];
echo "<hr>";
}
?>
</body>
</html>
Simpan dengan nama read_data.php dan letakkan di direktori web server anda. Kemudian lihat hasilnya dengan web browser anda. Hasilnya akan seperti berikut:
jika anda ingin mengetahui lebih dalam fungsi-fungsi yang digunakan pada tutorial ini atau pun fungsi-fungsi PHP yang lain silahkan kunjungi http://www.php.net
Di tutorial Menyimpan Data ke Database & Manampilkan Data dengan PHP anda telah belajar bagaimana membuat koneksi ke database MySQL, menyimpan data ke database, Membaca data dari database & menampilkan data ke pengguna
Tutorial Lanjutan: Forum : User Registration System