URL. PEN JELASAN SCRI PT

URL. PEN JELASAN SCRI PT

Pada file m em ber.php ini kit a m em ilik i dua proses yait u proses view unt uk m enam pilkan daft ar m em ber. Dan proses hapus unt uk m enghapus m em ber. Pada proses view kit a m elakukan query t erlebih dahulu unt uk m endapat kan daft ar m em ber yait u dengan perint ah

$hasil = mysql_query("SELECT * FROM member ORDER BY nama");

Pada query SQL diat as kit a akan m endaft ar m em ber yang ada urut berdasarkan nam a m ereka secara ascending. Kem udian kit a m em buat header/ kepala dari t abel. Agar t idak ikut diulang dalam looping m aka kit a let akkan header t abel ini diluar kode looping while. Unt uk m enam pilkan sem ua daft ar m em ber kit a gunakan looping while sepert i berikut

while ($data = mysql_fetch_array($hasil))

Blok kode yang ada pada looping while akan dieksekusi sebanyak j um lah baris yang dikem balikan oleh query SQL diat as sebelum nya. Kit a m em buat variabel $hapus yang isinya adalah link proses hapus dan usernam e yang isinya adalah usernam e yang akan dihapus. Kit a Blok kode yang ada pada looping while akan dieksekusi sebanyak j um lah baris yang dikem balikan oleh query SQL diat as sebelum nya. Kit a m em buat variabel $hapus yang isinya adalah link proses hapus dan usernam e yang isinya adalah usernam e yang akan dihapus. Kit a

Gam bar 3.16: Daft ar m em ber pada cont rol panel

Karena kit a t ahu j um lah kolom at au field pada t abel m em ber adalah 7. Maka kit a gunakan looping for unt uk m em persingkat kode. Jadi isi dari $data nant inya adalah $data[0], $data[1] sam pai $data[6]. $data[0] adalah kolom usernam e, $data[1] adalah kolom password dan set erusnya. Set elah looping for kit a t am bahkan sat u kolom yang isinya adalah link hapus.

Case yang ke dua yait u hapus. Pada case ini kit a m engam bil dat a yait u usernam e dari URL unt uk m enent ukan record yang akan dihapus. Kit a j uga m enfilt er unt uk dat a yang kit a am bil m enggunakan filter_str($_GET['username']). Langkah berikut nya t ent u adalah m elakukan query penghapusan sepert i berikut

$hasil = mysql_query("DELETE FROM member WHERE username='$user'");

Kit a m enghandel hasil dari query ini m enggunakan if (!$hasil). Jika ada kesalahan at au nilainya false t am pilkan pesan gagal selain it u t am pilkan pesan berhasil.

Ham pir sam a dengan file m em ber.php file berik ut ini j uga m em iliki dua proses yait u view unt uk m elihat daft ar buku t am u dan hapus unt uk m enghapus ent ry buku t am u. Langsung saj a klik File - N e w - PH P lalu salin kode berikut ini

Script dari file bu k u t a m u .php

<? php // mulai session session_start (); include ( 'fungsi.php' ); konek_db (); // koneksikan ke MySQL server

$proses = $_GET [ 'proses' ]; if ( $proses == '' )

$proses = 'view' ; // cegah cross site scripting $proses = filter_str ( $proses );

//cek user apakah sudah login atau belum if (! cek_session ( 'admin' ))

echo 'Anda belum login. Silahkan <a href="index.php">Login</a> dulu' ; else { switch ( $proses )

{ case 'view' : $hasil = mysql_query ( "SELECT * FROM bukutamu ORDER BY id_bt DESC" ); // tampilkan semua bukutamu echo '<h3>Daftar Buku Tamu</h3><hr>' ; while ( $data = mysql_fetch_array ( $hasil )) { echo 'Nama: ' . $data [ 'nama' ]. '<br>' . 'Email: ' . $data [ 'email' ]. '<br>' . 'Isi: ' . $data [ 'komentar' ]. '<br>' . '<a href="bukutamu.php?proses=hapus&id=' . $data [ 'id_bt' ]. '">Hapus</a> ' . '<hr>' ;

} echo '<p><a href="index.php">Halaman utama</a></p>' ; break ; // akhir dari proses view

case 'hapus' : // dapatkan id untuk bukutamu yang akan dihapus $id = $_GET [ 'id' ]; // lakukan query DELETE $hasil = mysql_query ( "DELETE FROM bukutamu WHERE id_bt=' $id '" ); if (! $hasil )

echo 'Error: tidak dapat menghapus data dari database' ; else echo 'Data berhasil dihapus. <a href="bukutamu.php">Lihat</a>' ;

break ; // akhir dari proses hapus } // akhir dari switch } // akhir dari else

mysql_close (); // tutup koneksi ?>

Sim pan pada direkt ori Pr oye k - Ba b3 dengan nam a buk ut a m u .php. Out put dari file ini akan t erlihat sepert i yang dit unj ukkan gam bar 3.17.