• File Koneksi
• Form Input data
• Proses input
• Tampil Data
• Form Edit
• Proses Edit
• Proses Delete
• Session
• Exercise
• Soal
Pada bab-bab sebelumnya Anda melakukan pengolahan database melalui MySQL Comment Line Client atau phpMyAdmin. Pada bab ini Anda akan mempelajari bagaimana cara mengkoneksikan file PHP dengan database MySQL. Anda akan mebuat koneksi ke database, melakukan input data, edit data, delete data, tampil data, dan membuat Query melalui file PHP. Sebelum Anda mempraktekkan materi yang akan dibahas, Anda terlebih dahulu membuat database beserta elemen di dalamnnya. Ikuti instruksi di bawah ini :
1. Buatlah database dengan nama db_Tonline. ! 2. Buatlah table dengan nama tb_bktamu !
Fi Field eld Tipe Data Panjang Keterangan
nm_penunjung varchar 35
E-mail varchar 15
Telp varchar 16
web varchar 50
Tabel 7.1 Tabel tb_nktamu
File koneksi berfungsi untuk menhubungkan antara PHP dan database MySQL. File komeksi ini biasanya berisikan autentifikasi user. Berikut ini adalah langkah-langkah membuat file koneksi.
Praktek 30
Bukalah Dreamweaver, lalu pilih PHP.
File Koneksi
Ketikan sintaks berikut ini.
Baris 2 : Mendefinisikan nilai $hostmysql=”localhost”, sebagai penghubung ke localhost.
Baris 3 : Mendefinisikan nilai $username=”root”, digunakan sebagai autentifikasi pengguna.
Baris 4 : Mendefinisikan nilai $password=”123456”, digunakan sebagai autentifikasi kata sandi.
Baris 5 : Mendefinisikan nilai $database=”db_Tonline”. sebagai pennghubung database.
Baris 7 : Mendefinisikan nilai $dconn=mysql_connect(“$hostm ysql”,”$username”,”$password”). mysql_connect ber- fungsi untuk pengecekan kode di php dengan data lo- calhost, user, dan kata sandl.
Baris 8 : JIka tidak sama dengan $conn akan gagal koneksi. Baris 9 : mysql_select_db berfungsi untuk pengecekan data- base dan localhost. Jika pengecekan gagal koneksi antara file php dan database MySQL tidak terhubung. Masuk ke direktori F:\host, lalu buat folder baru, kemudian ganti nama folder menjadi guestbook, simpan File PHP tersebut dengan nama config.php.
Bukalah Web Browser, lalu masuk ke Localhost, kemudian klik folder guestbook atau langsung saja ketikan http://localhost/ guestbook/.
02
03
04
1 2 3 4 5 6 7 8 9 10 <?php $hostmysql = “localhost”; $username = “root”; $password = “123456”; $database =”db_Tonline”; $conn = mysql_connect(“$hostmysql”,”$username”,”$password”); if (!$conn) die (“Gagal Melakukan Koneksi”);mysql_select_db($database,$conn) or die (“Gagal Melakukan Koneksi”); ?>
Klik config.php, tamplan config.php dapat Anda lihat pada gambar di halaman berikut.
Gambar 7.1 Tsmpilan config.php
Tips
Jka tampilan config.php terdapat error sintaks, periksa kembali file Anda
Pada praktek kali ini akan membuat form input data buku tamu.
Gambar 7.2 Form input buku tamu
05
Praktek 31
Bukalah Dreamweaver, lalu pilih PHP. Ketikan sintaks berikut ini.
Baris 1 : Include file config.php atau menyisipkan file config.
php
Baris 4-6 : Style CSS
Baris 10 : SIntaks awal membuat form dengan atribut form yaitu, menggunakan metode post dan action (meng- gunakan) file prosesinput.php.
01
02
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 <?php include(“config.php”);?> <html><title><?php echo “Form Input”;?></title> <style type=”text/css”>
.style3 {color: 0; font-weight: bold; } </style>
<head> </head> <body>
<form name=”form1” method=”post” action=”prosesinput.php”> <table width=”602” height=”284” border=”0” align=”center”> <tr>
<td colspan=”2”><span class=”style1”></span>
<h2 align=”center” class=”style1”><strong>Form Buku Tamu </strong></h2></td>
</tr> <tr>
<td width=”173”><span class=”style3”>Nama Pengunjung </span></td>
<td width=”419”><input name=”nm_penunjung” type=”text” id=”nm_penunjung”></td>
</tr> <tr>
<td><span class=”style3”>Alamat Email</span></td> <td><input name=”Email” type=”text” id=”Email”></td> </tr>
<tr>
<td><span class=”style3”>Nomor Telepon</span></td> <td><input name=”Telp” type=”text” id=”Telp”></td> </tr>
Baris 11 : Sintaks awal membuat tabel. Baris 12 : Sintaks membuat kolom. Baris 13 : Sintaks membuat baris. Baris 14 : Pengaturan format font.
Baris 18 : Sintaks membuat textfield dengan tipe text dan nama nm_penunjung (nama field di database).
Baris 22 : Sintaks membuat textfield dengan tipe text dan nama Email (nama field di database).
Baris 26 : Sintaks membuat textfield dengan tipe text dan nama Telp (nama field di database).
Baris 30 : Sintaks membuat textfield dengan tipe text dan nama web (nama field di database).
Baris 37 : Sintaks membuat button dengan tipe submit. Baris 41 : Sintaks Penutup tabel.
Baris 42 : Sintaks Penutup form.
Simpan ke direktori F:\host\ guestbook, beri nama file PHP terse-but dengan nama forminput.php.
Bukalah Web Browser, lalu masuk ke Localhost, kemudian klik folder guestbook atau langsung saja ketikan http://localhost/ guestbook/.
Klik forminput.php, tamplan forminput.php dapat Anda lihat pada gambar 7.2
03
04
05
31 32 33 34 35 36 37 38 39 40 41 42 43 44 <tr> <td><span class=”style3”>Web</span></td> <td><input name=”web” type=”text” id=”web”></td> </tr><tr>
<td><span class=”style1”></span></td>
<td><input name=”button” type=”submit” class=”style3” id=”button” value=”Submit”> </td> </tr> </table> </form> </body> </html>
Form yang Anda buat belum bisa dijalankan karena file proses input data belum Anda buat. Pada praktek kali ini, Anda akan membuat file proses input.
Praktek 32
Bukalah Dreamweaver, lalu pilih PHP. Ketikan sintaks berikut ini.
01
02
Proses input
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 <?php include(“config.php”); $nm_penunjung=$_POST[‘nm_penunjung’]; $Email=$_POST[‘Email’]; $Telp=$_POST[‘Telp’]; $web=$_POST[‘web’];if($nm_penunjung!=”” && $Email!=”” && $Telp!=”” && $web!=””) {
$query=”INSERT INTO tb_bktamu(nm_penunjung,Email,Telp,web) VALUES(‘$nm_penunjung’,’$Email’,’$Telp’,’$web’);”;
mysql_query($query) or die(“Gagal menyimpan karena :”.mysql_error()); $a=”berhasil disimpan”;?>
<script >alert(‘<?= $a?>’)</script>
<? echo ‘<script type=”text/javascript”> window.location = “tampildata.php” </script>’; } else {$i=”isi data dengan benar”;?>
<script >
alert(‘<?= $i?>’) </script> <?php
echo ‘<script type=”text/javascript”>
window.location = “forminput.php” </script>’; } ?>
Baris 4 : Mendefinisikan nilai $nm_penunjung =$_POST[‘nm_ penunjung’] ;
Baris 5 : Mendefinisikan nilai $Email=$_POST[‘Email’] Baris 6 : Mendefinisikan nilai $Telp=$_POST[‘Telp’] Baris 7 : Mendefinisikan nilai $web=$_POST[‘web’]
Baris 11-12 : Mendefinisikan nilai $query sama dengan sintaks SQL input ke database MySQL.
Baris 14-15 : Pengecekan sintaks SQL.
Baris 17 : Sintaks Javascripts yang berfungsi sebagai validasi data berhasil di simpan.
Baris 18-19 : Sintaks Javascripts mengarahkan link ke tampildata. php (belum dibuat)
Baris 22-24 : Sintaks Javascripts yang berfungsi sebagai validasi data gagal di simpan.
Baris 26-27 : Sintaks Javascripts mengarahkan link ke forminput.
php.
Simpan ke direktori F:\host\ guestbook, beri nama file PHP terse-but dengan nama forminput.php.
Bukalah Web Browser, lalu masuk ke Localhost, kemudian klik folder guestbook atau langsung saja ketikan http://localhost/ guestbook/.
Untuk melihat hasilnya, Klik forminput.php, tamplan forminput. php dapat Anda lihat pada gambar berikut.
Gambar 7.3 Validasi data kosong.
Menyimpan dalam keadaan data tidak di isi.
03
04
05
Gambar 7.4 Form berhasil disimpan
Data-data yang ada di dalam database bisa Anda tampilkan di PHP dalam bentuk tabel. Dimana data tersebut bisa dilihat, diubah, bahkan dihapus. Berikut ini langkah-langkah membuat file PHP Tampil Data.
Gambar 7.5 Fitur Tampil Data. Praktek 33
Bukalah Dreamweaver, lalu pilih PHP. Ketikan sintaks berikut ini.
Berhasil menyimpan data
Tampil Data
01
02
1 2 3 4 5 6 7 8 <?php include(“config.php”);?> <html><title><?php echo “Tampil Data PHP”;?></title> <head>
</head> <body>
Baris 8 : Sintaks membuat tabel.
Baris 18 : Mendefinisikan nilai $query= mysql_query(“select * from tb_bktamu”), mysql_query untuk menampung sintaks SQL.
Baris 20 : Mendefinisikan nilai $no = 1
Baris 21 : Menggunakan perulangan while untuk mengulang nilai $data. $data berisikan nilai array dari $query Baris 23 : Mencetak $no.
Baris 24 : Mencetak variabel array $data dengan nilai field nm_
pengunjung 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 <tr> <td width=”57”>Nomor</td> <td width=”133”>Nama</td> <td width=”152”>Email</td> <td width=”241”>Telepon</td> <td colspan=”2”>website</td> </tr> <tr> <?php
$query = mysql_query(“select * from tb_bktamu”); $no = 1;
while ($data = mysql_fetch_array($query)) { ?>
<td><?php echo $no; ?></td>
<td><?php echo $data[‘nm_penunjung’]; ?></td> <td><?php echo $data[‘Email’]; ?></td> <td><?php echo $data[‘Telp’]; ?></td>
<td width=”241”><?php echo $data[‘web’]; ?></td>
<td width=”147”><a href=”formedit.php?nm_penunjung=<?php echo $data[‘nm_penunjung’]; ?>”>Edit</a>
| | <a href=”proseshapus.php?nm_penunjung=<?php echo $data[‘nm_penunjung’]; ?>”>Hapus</a></td> </tr>
<?php $no++;} ?> </table>
<table width=”1011” height=”27” border=”1”> <tr> <td><a href=”forminput.php”>Input</a></td> </tr> </table> </body> </html>
Baris 25 : Mencetak variabel array $data dengan nilai field Email Baris 26 : Mencetak variabel array $data dengan nilai field Telp Baris 27 : Mencetak variabel array $data dengan nilai field web Baris 28-29 : Membuat link edit berdsarkan field nm_pengunjung dan menuju ke formedit.php (belum dibuat)
Baris 30-31 : Membuat link hapus berdasarkan field nm_pengun jung dan menuju ke prosesdelete.php (belum dibuat) Baris 34 : Nilai $no bertambah 1
Baris 39 : Membuat link input menuju ke forminput.php (belum
dibuat)
Simpan ke direktori F:\host\ guestbook, beri nama file PHP terse but dengan nama tampildata.php.
Bukalah Web Browser, lalu masuk ke Localhost, kemudian klik folder guestbook atau langsung saja ketikan http://localhost/ guestbook/.
Untuk melihat hasilnya, Klik tampildata.php, tamplan forminput. php dapat Anda lihat pada gambar berikut.
Gambar 7.6 Fitur Tampil Data.
Pada praktek kali ini Anda akan membuat form edit data. Berikut ini lang-kah membuat form edit data.
03
04
05
Link ke form input data
Link ke form edit data
Link menghapus data
Praktek 34
Bukalah Dreamweaver, lalu pilih PHP. Ketikan sintaks berikut ini.
Baris 2 : Mendefinisikan nilai $nm_penunjung= $_GET[‘nm_pe nunjung’];.
Baris 3-4 : Mendefinisikan nilai $edit= mysql_query(“SELECT * FROM tb_bktamu WHERE nm_penunjung=’$nm_pe nunjung’”).
Baris 5 : Mendefinisikan nilai $data= Menampung data Sedit
01
02
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 <?php include(“config.php”); $nm_penunjung=$_GET[‘nm_penunjung’];$edit=mysql_query(“SELECT * FROM tb_bktamu WHERE nm_penunjung=’$nm_penunjung’”);
$data=mysql_fetch_array($edit); ?>
<html>
<title><?php echo “Form Edit”;?></title> <head>
</head> <body>
<form name=”form1” method=”post” action=”prosesedit.php” > <table width=”602” height=”284” border=”0” align=”center”> <tr>
<td colspan=”2”><h2 align=”center”><strong> Form Buku Tamu</strong></h2></td> </tr>
<tr>
<td width=”172”><strong>Nama Pengunjung</strong></td> <td width=”414”><input type=”text” name=”nm_penunjung” id=”nm_penunjung” value=”<?php echo $data[‘nm_penunjung’];?>” /> </td>
</tr> <tr>
<td><strong>Alamat Email</strong></td> <td><input type=”text” name=”Email” id=”Email” value=”<?php echo $data[‘Email’];?>” ></td> </tr>
<tr>
dengan tipe array.
Baris 12 : SIntaks awal membuat form dengan atribut form yaitu, menggunakan metode post dan action (meng- gunakan) file prosesedit.php.
Baris 21-22 : Sintaks membuat textfield dengan tipe text, nama nm_penunjung (nama field di database), dan mempun yai nilai=array $data dengan nilai field nm_penunjung. Baris 26-27 : Sintaks membuat textfield dengan tipe text, nama Email (nama field di database), dan mempunyai nilai= array $data dengan nilai field Email.
Baris 33-34 : Sintaks membuat textfield dengan tipe text, nama web (nama field di database), dan mempunyai nilai= array $data dengan nilai field web.
Simpan ke direktori F:\host\ guestbook, beri nama file PHP terse but dengan nama formedit.php.
Bukalah Web Browser, lalu masuk ke Localhost, kemudian klik folder guestbook atau langsung saja ketikan http://localhost/ guestbook/.
03
04
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47<td><input type=”text” name=”Telp” id=”Telp” value=”<?php echo $data[‘Telp’];?>”></td> </tr>
<tr>
<td><strong>Web</strong></td>
<td><input type=”text” name=”web” id=”web” value=”<?php echo $data[‘web’];?>”></td> </tr>
<tr>
<td> </td>
<td><input type=”submit” name=”button” id=”button” value=”Submit”></td> </tr> </table> </form> </body> </html>
Untuk melihat hasilnya, Klik formedit.php, tamplan formedit.php dapat Anda lihat pada gambar di bawah ini.
Gambar 7.7 Tampilan form edit.
Form edit yang Anda buat belum bisa dijalankan karena file proses edit data belum Anda buat. Pada praktek selanjutnya, Anda akan membuat file proses edit.
Praktek 35
Bukalah Dreamweaver, lalu pilih PHP. Ketikan sintaks berikut ini.
Proses Edit
05
01
02
1 2 3 4 5 6 7 8 9 <?php include(“config.php”); $nm_penunjung=$_POST[‘nm_penunjung’]; $Email=$_POST[‘Email’]; $Telp=$_POST[‘Telp’]; $web=$_POST[‘web’];Baris 4 : Mendefinisikan nilai $nm_penunjung =$_POST[‘nm_ penunjung’] ;
Baris 5 : Mendefinisikan nilai $Email=$_POST[‘Email’] Baris 5 : Mendefinisikan nilai $Telp=$_POST[‘Telp’] Baris 6 : Mendefinisikan nilai $web=$_POST[‘web’]
Baris 10-11 : Mendefinisikan nilai $query sama dengan sintaks SQL update ke database MySQL.
Baris 13-14 : Pengecekan sintaks SQL.
Baris 18 : Sintaks Javascripts yang berfungsi sebagai validasi data berhasil di ubah.
Baris 20-21 : Sintaks Javascripts mengarahkan link ke tampildata.
php.
Baris 25 : Sintaks Javascripts yang berfungsi sebagai validasi data gagal di ubah.
Baris 28-29 : Sintaks Javascripts mengarahkan link ke formedit.php.
Simpan ke direktori F:\host\ guestbook, beri nama file PHP terse-but dengan nama prosesedit.php.
03
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29$query=”UPDATE tb_bktamu set Email=’$Email’,Telp=’$Telp’, web=’$web’ where nm_penunjung=’$nm_penunjung’;”;
mysql_query($query) or die(“Gagal menyimpan karena :” .mysql_error());
$a=”berhasil di ubah”;?>
<script >alert(‘<?= $a?>’)</script>
<? echo ‘<script type=”text/javascript”>
window.location = “tampildata.php” </script>’; } else {$i=”isi data dengan benar”;?>
<script >alert(‘<?= $i?>’)</script>
<?php
echo ‘<script type=”text/javascript”>
Bukalah Web Browser, lalu masuk ke Localhost, kemudian klik folder guestbook atau langsung saja ketikan http://localhost/ guestbook/.
Untuk melihat hasilnya, Klik tampildata.php, kemudian klik edit maka akan tampil formedit.php.
Gambar 7.8 Tampilan tampildata.php.
Pada halaman tampildata.php terdapat link delete akan tetapi link terse-but belum bisa berjalan dikarenakan proses delete belum dibuat. Berikut ini langkah membuat proses delete.
Gambar 7.9 Tampilan tampildata.php. Praktek 36
Bukalah Dreamweaver, lalu pilih PHP. Ketikan sintaks berikut ini.
Proses Delete
01
02
04
05
Link ke form edit data
Link menghapus data
Baris 3 : Mendefinisikan nilai $nm_penunjung =$_POST[‘nm_ penunjung’] ;
Baris 4-5 : Mendefinisikan nilai $query sama dengan sintaks SQL hapus ke database MySQL.
Baris 7 : Sintaks Javascripts yang berfungsi sebagai validasi data berhasil di hapus.
Baris 8-9 : Sintaks Javascripts mengarahkan link ke tampildata.
php.
Baris 12 : Sintaks Javascripts yang berfungsi sebagai validasi data gagal di ubah.
Simpan ke direktori F:\host\ guestbook, beri nama file PHP terse-but dengan nama proseshapus.php.
Bukalah Web Browser, lalu masuk ke Localhost, kemudian klik folder guestbook atau langsung saja ketikan http://localhost/ guestbook/.
Untuk melihat hasilnya, Klik tampildata.php, kemudian klik Hapus maka data akan terhapus.
03
04
05
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 <?php include “config.php”; $nm_penunjung= $_GET[‘nm_penunjung’]; $sql = mysql_query(“delete from tb_bktamuwhere nm_penunjung = ‘$nm_penunjung’”); if ($sql){
echo “<script>alert(‘Data Berhasil dihapus ! ! !’)</script>”; echo ‘<script type=”text/javascript”>
window.location = “tampildata.php” </script>’; }
else {
echo “<script>alert(‘Data gagal dihapus ! ! !’)</script>”;
echo “<meta http-equiv=’refresh’ content=’1; url=tampildata.php’>”; }
Gambar 7.10 Tampilan tampildata.php.
Session adalah fasilitas yang digunakan untuk menyimpan data sementara selama website masih di akses. Session biasanya juga digunakan untuk membuat atau membatasi akses terhadap pengguna website.
Berikut ini beberapa fungsi dari session.
1. session_start(), untuk menciptakan session, karena session tidak tercipta otomatis.
2. session_id(), untuk menuliskan ID session.
3. session_register(var), mendeklarasikan session. Var adalah vari-able yang didaftarkan.
4. session_unset(), untuk menghapus semua data session. 5. session_destroy(), untuk mengakhiri session.
Sebelum Anda mencoba session Anda harus menambah tabel pengguna di database. db_tonline.
Fi Field eld Tipe Data Panjang Keterangan
username varchar 32 username
pass varchar 32 password
Tabel 7.2 Tabel pengguna
Setalah selesai membuat tabel pengguna, kemudian input data penggu-na dengan userpenggu-name sama dengan admin dan password sama dengan 123456. Pada praktek pada kali ini Anda akan membuat empat file PHP, yaitu halaman login, proses login, proses logout, dan halaman aman. login menggunakan Session.
Session
Link menghapus data
Praktek 37
Bukalah Dreamweaver, lalu pilih PHP. Ketikan sintaks berikut ini.
Simpan ke direktori F:\host\ guestbook, beri nama file PHP terse-but dengan nama login.php.
Bukalah Web Browser, lalu masuk ke Localhost, kemudian klik folder guestbook atau langsung saja ketikan http://localhost/ guestbook/.
Untuk melihat hasilnya, Klik login.php. Tampilan login.php dapat Anda lihat pada halaman selanjutnya.
Halaman Login
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 <?php include “config.php”; ?><form method=”POST” action=”proses_login.php”> <table border=”0”>
<tr>
<td>Masukkan Username </td>
<td><input name=”username” type=”text”></td> </tr>
<tr>
<td>Masukkan Password </td>
<td><input name=”pass” type=”password”></td> </tr>
<tr>
<td> </td>
<td><input type=”submit” name=”Submit” value=”Submit”></td> </tr> </table> </form>
01
02
03
04
05
Gambar 7.11 Tampilan login.php.
Praktek 38
Bukalah Dreamweaver, lalu pilih PHP. Ketikan sintaks pada halaman berikut.
Baris 2 : Mulai menggunakan session.
Baris 5 : Menggunakan Kriptografi untuk merubah bentuk
password.
Proses Login (Masuk)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 <?php session_start(); include(“config.php”); $username=$_POST[‘username’]; $pass=$_POST[‘pass’]; $pwd=md5($pass);
$check=mysql_query(“SELECT * FROM pengguna WHERE username=’$username’ && pass=’$pass’”); if(mysql_num_rows($check)==1){
$_SESSION[‘username’] = $username; echo “<script>alert(‘Welcome to admin’); window.location.href=’home.php’;</script>”; }else{
echo “<script>alert(‘Username atau Password yang anda isi salah!’); window.history.go(-1);</script>”; exit();}
?>
01
02
Baris 9 : Jika pada saat pengecekan terdapat 1 data user yang
sesuai.
Baris 10 : Mendefinisikan nilai $_SESSION[‘username’] = $user name. Menyimpan data sementara $user di session. Baris 11-12 : Penggunaan javascript sebagai validasi login berhasil dan link ke home.php (belum dibuat).
Baris 14-15 : Penggunaan javascript sebagai validasi login gagal dan kembali lagi ke login.php
Simpan ke direktori F:\host\ guestbook, beri nama file PHP terse-but dengan nama proses_login.php.
Praktek 39
Bukalah Dreamweaver, lalu pilih PHP. Ketikan sintaks pada halaman berikut.
Baris 2 : Mulai menggunakan session.
Baris 2 : Menghapus data username yang ada di session Baris 2 : Menghapus data pass yang ada di session