maka radiobutton Laki-laki terpilih (checked). Demikian pula 

bila jenis kelaminnya adalah Perempuan. Lantas.. bagaimana caranya mewujudkan hal 

ini? OK.. caranya adalah dengan memakai  konsep IF.  

 

Perhatikan bagian script dari edit.php di bawah ini: 

 

echo "<tr><td>Sex</td><td>:</td> 

          <td><input type='radio' name='sex' value='L'> Laki-Laki  

                   <input type='radio' name='sex' value='P'> Perempuan</td></tr>"; 

 

Nah… kita akan memodifikasi bagian script di atas menjadi seperti di bawah ini: 

 

echo "<tr><td>Sex</td><td>:</td><td>”; 

 

if ($data['sex'] == ”L”)   

        echo ”<input type='radio' name='sex' value='L' checked> Laki-Laki  

                  <input type='radio' name='sex' value='P'> Perempuan”; 

else if ($data['sex'] == ”P”) 

        echo ”<input type='radio' name='sex' value='L'> Laki-Laki  

                  <input type='radio' name='sex' value='P' checked> Perempuan”; 

 

echo "</td></tr>"; 

 

Konsep dari ide script modifikasi di atas adalah jika data jenis kelamin mahasiswa adalah 

laki-laki (L) maka komponen radiobutton laki-laki akan dichecked. Demikian pula jika 

perempuan. 

 

Setelah bagian script edit jenis kelamin diedit maka hasilnya adalah 

 

Basic PHP Tutorial  http://blog.rosihanari.net 

Disusun oleh : Rosihan Ari Yuana 170

 

 

Simpel bukan idenya? ☺ 

 

OK… next… kita perhatikan bagian edit tanggal lahir. Dalam tampilan script yang telah 

kita buat di atas, seharusnya tanggal lahir menyesuaikan data tanggal lahir awal 

sebelum diedit. 

 

Untuk mewujudkan hal ini, pada dasarnya konsep atau idenya sama dengan jenis 

kelamin di atas yaitu memakai  IF. Namun… yang menjadi masalah bagaimana 

caranya memecah tanggal supaya ketiga komponen combobox yang ada dapat 

membaca tanggal, bulan dan tahun. 

 

OK solusi untuk memecah tanggal, pernah kita bahas sebelumnya yaitu dengan 

memanfaatkan function explode(). 

 

Berikut ini script edit.php yang telah dimodifikasi untuk edit tanggal lahirnya 

 

edit.php 

 

<?php 

 

mysql_connect("localhost", "root", "root"); 

mysql_select_db("data"); 

 

$nim = $_GET['nim']; 

 

$query = "SELECT * FROM mhs WHERE nim = '$nim'"; 

$hasil = mysql_query($query); 

$data  = mysql_fetch_array($hasil); 

 

// memecah tanggal lahir ke dalam masing-masing unsur (tgl, bln, thn) 

 

$pecahTgl = explode("-", $data['tgllahir']); 

$tgl = $pecahTgl[2]; 

Basic PHP Tutorial  http://blog.rosihanari.net 

Disusun oleh : Rosihan Ari Yuana 171

$bln = $pecahTgl[1]; 

$thn = $pecahTgl[0]; 

 

echo "<form method='post' action='update.php'>"; 

echo "<table>"; 

echo "<tr><td>NIM</td><td>:</td> 

                <td><input type='text' name='nim' value='".$data['nim']."'></td></tr>"; 

echo "<tr><td>Nama Mahasiswa</td><td>:</td> 

                <td><input type='text' name='nama' value='".$data['nama']."'></td></tr>"; 

echo "<tr><td>Alamat</td><td>:</td> 

                <td><textarea name='alamat'>".$data['alamat']."</textarea></td></tr>"; 

echo "<tr><td>Sex</td><td>:</td> 

          <td><input type='radio' name='sex' value='L'> Laki-Laki  

                   <input type='radio' name='sex' value='P'> Perempuan</td></tr>"; 

echo "<tr><td>Tgl Lahir</td><td>:</td><td> 

          <select name='tgl'>"; 

for ($i=1; $i<=31; $i++) 

   if ($i == $tgl) echo "<option value='".$i."' selected>".$i."</option>"; 

   else echo "<option value='".$i."'>".$i."</option>"; 

}     

echo "</select> 

          <select name='bln'>"; 

for ($i=1; $i<=12; $i++) 

   if ($i == $bln) echo "<option value='".$i."' selected>".$i."</option>"; 

   else echo "<option value='".$i."'>".$i."</option>"; 

}     

echo "</select> 

      <select name='thn'>"; 

for ($i=1980; $i<=1997; $i++) 

   if ($i == $thn) echo "<option value='".$i."' selected>".$i."</option>"; 

   else echo "<option value='".$i."'>".$i."</option>"; 

}     

echo "</select> 

   </td></tr>"; 

echo "</table>"; 

echo "<input type='submit' name='submit' value='Submit'>"; 

echo "</form>"; 

 

?> 

 

Nah… mudah dan simpel bukan idenya? 

Basic PHP Tutorial  http://blog.rosihanari.net 

Disusun oleh : Rosihan Ari Yuana 172

 

Sekarang yang terakhir, kita buat script untuk updatenya. Tapi… eiiit… wait a minute.. 

bagaimana bila NIM mahasiswanya yang diubah? Lho.. emangnya ada apa? Mungkin di 

pikiran Anda konsepnya sama dengan update data yang lain. Iya sih… but… coba kita 

lihat pemisalannya. Jika data seorang mahasiswa sebelum diubah memiliki NIM 

‘M0001’. Kemudian data NIM nya diubah menjadi ‘M0002’. Bagaimana SQL nya? SQL 

nya adalah sebagai berikut: 

 

UPDATE mhs SET nim = ‘M0002’ WHERE nim = ‘M0001’;  

 

Dari SQL di atas, kita bisa melihat bahwa kita perlu NIM lama mahasiswa guna proses 

update ini . Nah… bila komponen textbox pada form edit untuk update NIM di atas 

kita ubah isinya, maka dengan kata lain kita akan kehilangan NIM yang lama. Nah… 

gimana tuh? 

 

OK… ide untuk menanggulangi hal ini  adalah kita buat komponen hidden input 

untuk menyimpan NIM yang lama (sebelum diedit). NIM lama ini nantinya kita gunakan 

sebagai acuan proses updatenya. 

 

Nah.. dengan demikian kita modifikasi kembali script edit.php yang telah kita buat 

sebelumnya. 

 

edit.php 

 

<?php 

 

mysql_connect("localhost", "root", "root"); 

mysql_select_db("data"); 

 

$nim = $_GET['nim']; 

 

$query = "SELECT * FROM mhs WHERE nim = '$nim'"; 

$hasil = mysql_query($query); 

$data  = mysql_fetch_array($hasil); 

 

$pecahTgl = explode("-", $data['tgllahir']); 

$tgl = $pecahTgl[2]; 

$bln = $pecahTgl[1]; 

$thn = $pecahTgl[0]; 

 

echo "<form method='post' action='update.php'>"; 

echo "<table>"; 

echo "<tr><td>NIM</td><td>:</td> 

                <td><input type='text' name='nimBaru' value='".$data['nim']."'></td></tr>"; 

Basic PHP Tutorial  http://blog.rosihanari.net 

Disusun oleh : Rosihan Ari Yuana 173

echo "<tr><td>Nama Mahasiswa</td><td>:</td> 

                <td><input type='text' name='nama' value='".$data['nama']."'></td></tr>"; 

echo "<tr><td>Alamat</td><td>:</td> 

                <td><textarea name='alamat'>".$data['alamat']."</textarea></td></tr>"; 

echo "<tr><td>Sex</td><td>:</td> 

          <td><input type='radio' name='sex' value='L'> Laki-Laki  

                   <input type='radio' name='sex' value='P'> Perempuan</td></tr>"; 

echo "<tr><td>Tgl Lahir</td><td>:</td><td> 

          <select name='tgl'>"; 

for ($i=1; $i<=31; $i++) 

   if ($i == $tgl) echo "<option value='".$i."' selected>".$i."</option>"; 

   else echo "<option value='".$i."'>".$i."</option>"; 

}     

echo "</select> 

          <select name='bln'>"; 

for ($i=1; $i<=12; $i++) 

   if ($i == $bln) echo "<option value='".$i."' selected>".$i."</option>"; 

   else echo "<option value='".$i."'>".$i."</option>"; 

}     

echo "</select> 

      <select name='thn'>"; 

for ($i=1980; $i<=1997; $i++) 

   if ($i == $thn) echo "<option value='".$i."' selected>".$i."</option>"; 

   else echo "<option value='".$i."'>".$i."</option>"; 

}     

echo "</select> 

   </td></tr>"; 

echo "</table>"; 

echo "<input type='hidden' name='nimLama' value='".$data[‘nim’]."'>"; 

echo "<input type='submit' name='submit' value='Submit'>"; 

echo "</form>"; 

 

?> 

 

Catatan: 

Letak komponen hidden input ini bisa diletakkan di sebarang tempat di dalam form, 

mengingat komponen ini tidak terlihat oleh mata ☺ 

 

Nah.. dengan demikian kita sekarang bisa konsentrasi ke script updatenya. Konsepnya 

hanyalah menjalankan query SQL UPDATE. 

 

Basic PHP Tutorial  http://blog.rosihanari.net 

Disusun oleh : Rosihan Ari Yuana 174

update.php 

 

<?php 

 

mysql_connect("localhost", "root", "root"); 

mysql_select_db("data"); 

 

$nimLama = $_POST['nimLama']; 

$nimBaru = $_POST['nimBaru']; 

$nama = $_POST['nama']; 

$alamat = $_POST['alamat']; 

$sex = $_POST['sex']; 

 

// menggabung unsur tgl dalam combobox menjadi satu dalam format yyyy-mm-dd 

 

$tgllahir = $_POST['thn']."-".$_POST['bln']."-".$_POST['tgl']; 

 

$query = "UPDATE mhs  

                 SET nim = '$nimBaru', nama = '$nama', alamat = '$alamat', sex = '$sex',  

                        tgllahir = '$tgllahir' 

                 WHERE nim = '$nimLama'"; 

$hasil = mysql_query($query); 

if ($hasil) echo "Data sudah diupdate";     

else echo "Data gagal diupdate"; 

?> 

 

OK deh selesai proses pembuatan script updatenya. 

 

 


Hapus Data dengan PHP - MySQL 

 

Pada modul terakhir ini, kita akan membahas bagaimana cara melakukan hapus data 

pada database MySQL dengan PHP. 

 

Konsep utama dari proses penghapusan data MySQL dengan PHP adalah menjalankan 

query SQL DELETE FROM … pada script PHP ini . 

 

Untuk lebih jelasnya konsep ini , kita langsung terapkan pada studi kasus. 

 

Sebagai studi kasus, kita ambil sampel seperti halnya pada Bab 19, yaitu tentang data 

mahasiswa. 

 

Misalkan kita memiliki tabel mahasiswa sebagai berikut: 

 

nim  varchar(5) primary key 

nama  varchar(30) 

alamat  text 

sex  varchar(1) 

tgllahir  date 

 

dan andaikan kita telah mempunyai data awal sebagai berikut 

 

NIM NAMA ALAMAT SEX TGLLAHIR 

M0001 A SOLO L 1979-10-20 

M0002 B JAKARTA L 1982-09-10 

M0003 C BANDUNG P 1980-11-07 

 

lalu  kita akan membuat script PHP untuk menghapus data mahasiswa, baik 

melalui POST maupun GET method. 

 

Studi Kasus 1 

 

Pada studi kasus pertama ini, kita akan membuat script hapus mahasiswa memakai  

POST method.  

 

Adapun skenarionya adalah sebagai berikut. User diminta memasukkan NIM mahasiswa 

yang akan dihapus melalui sebuah form. lalu  script akan menghapus data 

Basic PHP Tutorial  http://blog.rosihanari.net 

Disusun oleh : Rosihan Ari Yuana 178

mahasiswa sesuai NIM yang ingin dihapus tadi. Namun… bila NIM yang akan dihapus 

tidak ada dalam database, maka akan muncul pesan bahwa data ini  tidak ada. 

 

Berikut ini adalah tampilan script yang akan kita buat dalam studi kasus 1 ini 

 

 

 

Adapun scriptnya berbentuk seperti di bawah ini: 

 

hapus01.php 

 

<h1>Hapus Data Mahasiswa</h1> 

 

<!-- Form untuk memasukkan nim mahasiswa yang mau dihapus --> 

 

<form method="post" action="<?php $_SERVER['PHP_SELF'] ?>?proses=hapus"> 

Masukkan NIM <input type="text" name="nim"> 

<input type="submit" name="submit" value="Submit"> 

</form> 

 

<?php 

 

// koneksi ke mysql 

mysql_connect("localhost", "…", "…"); 

mysql_select_db("…"); 

 

if ($_GET['proses'] == "hapus") 

   // bagian ini akan dijalankan ketika proses SUBMIT dari form 

    

   $nim = $_POST['nim'];    // membaca NIM yang dimasukkan dalam form 

    

   // mengecek keberadaan data mahasiswa dengan NIM sesuai yang  

   // dimasukkan dalam form 

    

   $query = "SELECT count(*) as jum FROM mahasiswa WHERE nim = '$nim'"; 

Basic PHP Tutorial  http://blog.rosihanari.net 

Disusun oleh : Rosihan Ari Yuana 179

   $hasil = mysql_query($query); 

   $data  = mysql_fetch_array($hasil); 

    

   // jika jumlah mahasiswa ber NIM ini  tidak ada, maka muncul keterangan 

 

   if ($data['jum'] == 0) echo "<p>Data yang akan dihapus tidak ada</p>"; 

   else 

   { 

      // jika ada, maka lakukan penghapusan 

      $query = "DELETE FROM mahasiswa WHERE nim = '$nim'"; 

      $hasil = mysql_query($query); 

   } 

 

// menampilkan data semua mahasiswa 

 

$query = "SELECT * FROM mahasiswa"; 

$hasil = mysql_query($query); 

 

echo "<table border='1'>"; 

echo "<tr><th>NIM</th><th>Nama Mhs</th><th>Alamat</th><th>Sex</th><th>Tgl 

Lahir</th></tr>"; 

while ($data = mysql_fetch_array($hasil)) 

  echo "<tr><td>".$data['nim']."</td><td>".$data['nama']."</td> 

                     <td>".$data['alamat']."</td><td>".$data['sex']."</td> 

                     <td>".$data['tgllahir']."</td></tr>"; 

echo "</table>"; 

?> 

 

Studi Kasus 2 

 

Untuk studi kasus yang kedua ini, kita akan lakukan penghapusan data mahasiswa 

melalui GET method atau melalui link berparameter. Link ini nanti akan diletakkan di 

setiap baris data mahasiswa.  

 

Bentuk link berparameter yang nanti akan digunakan untuk menghapus data adalah 

 

http://.../hapus02.php?proses=hapus&nim=xxx 

 

dengan ‘xxx’ adalah NIM mahasiswa yang akan dihapusnya. 

 

Basic PHP Tutorial  http://blog.rosihanari.net 

Disusun oleh : Rosihan Ari Yuana 180

Berikut ini screen shot tampilan studi kasus 2 (perhatikan link berparameternya yang 

tampak di status bar) 

 

 

 

Untuk script studi kasus 2 ini adalah sebagai berikut: 

 

hapus02.php 

 

<h1>Hapus Data Mahasiswa</h1> 

 

<?php 

 

// koneksi ke mysql 

mysql_connect("localhost", "…", "…"); 

mysql_select_db("…"); 

 

if ($_GET['proses'] == "hapus") 

   // bagian ini akan dijalankan ketika link hapus diklik (parameter proses=hapus) 

    

   // membaca NIM dari URL berparameter 

   $nim = $_GET['nim']; 

    

   // mengecek keberadaan data mahasiswa dengan NIM  

   // sesuai yang dimasukkan dalam form 

   $query = "SELECT count(*) as jum FROM mahasiswa WHERE nim = '$nim'"; 

   $hasil = mysql_query($query); 

   $data  = mysql_fetch_array($hasil); 

    

   // jika jumlah mahasiswa ber NIM ini  tidak ada, maka muncul keterangan 

   if ($data['jum'] == 0) echo "<p>Data yang akan dihapus tidak ada</p>"; 

   else 

Basic PHP Tutorial  http://blog.rosihanari.net 

Disusun oleh : Rosihan Ari Yuana 181

   { 

      // jika ada, maka lakukan penghapusan 

      $query = "DELETE FROM mahasiswa WHERE nim = '$nim'"; 

      $hasil = mysql_query($query); 

   } 

 

// menampilkan data semua mahasiswa & link untuk menghapus 

 

$query = "SELECT * FROM mahasiswa"; 

$hasil = mysql_query($query); 

 

echo "<table border='1'>"; 

echo "<tr><th>NIM</th><th>Nama Mhs</th><th>Alamat</th><th>Sex</th><th>Tgl 

Lahir</th><th>Proses</th></tr>"; 

while ($data = mysql_fetch_array($hasil)) 

  echo "<tr><td>".$data['nim']."</td><td>".$data['nama']."</td> 

                     <td>".$data['alamat']."</td><td>".$data['sex']."</td> 

         <td>".$data['tgllahir']."</td> 

                     <td><a href='".$_SERVER['PHP_SELF']."?proses=hapus&nim=".$data['nim']."'> 

                              Hapus</a></td></tr>"; 

echo "</table>"; 

?>