Minggu, 27 April 2014

PHP - MySql

  6 komentar
Assalamualaikum wr. wb
Pada kesempatan kali ini, kita akan mempelajari tentang operasi CRUD (Create, Read, Update, Delete) dari dan ke database dengan studi kasus pemesanan tiket kereta api.

ALUR PROGRAM:
Pertama user akan memilih jadwal kereta yang sudah disediakan :
index.php

Untuk memesan tiket, klik PESAN TIKET pada kolom action. Maka akan muncul form seperti berikut:
tiket.php

Kita inputkan data penumpang. Kemudian button submit diklik, muncul struk pembelian tiket seperti ini:
struk.php

Sampai sini kita sudah melakukan create (insert) data penumpang, dan read (select) untuk melihat data pada database.
Selanjutnya jika user ingin melakukan edit, klik EDIT maka akan muncul form edit-tiket seperti dibawah ini:
edit-tiket.php

Misalnya kita akan mengedit nama, setelah menuliskan nama yang benar, klik EDIT maka akan muncul struk yang sudah di edit:
struk.php

Jika user ingin membatalkan tiket tersebut, user dapat menghapus tiket dengan klik DELETE. Dan akan muncul konfirmasi delete seperti ini:
Java Script untuk konfirmasi delete

Apabila tiket sudah dihapus, maka program akan kembali ke index.php (jadwal keberangkatan kereta)


TUTORIAL:
Hal pertama yang harus dilakukan adalah membuat database yang digunakan untuk operasi menyimpan, mengedit, menghapus dan select data. Buat database baru dengan nama kereta_api:

Setelah itu buat tabel kereta dan penumpang dengan atribut seperti gambar dibawah ini:

Kemudian kita isi tabel kereta, karena kita hanya akan menggunakan tabel penumpang untuk operasi Mysql di php nanti.

Setelah database jadi kita buat file untuk koneksi ke database. Simpan file dengan nama dan extensi koneksi.php. Scriptnya kurang lebih seperti dibawah ini:
<?php 
//tiga parameter sebagai acuan
$servername = "localhost";
$username = "root";
$password = "";
$databasename = "kereta_api";//nama database yg sudah dibuat
 
$db = mysql_connect("$servername", "$username", "$password") //membuat koneksi ke mysql dengan tiga parameter
or die 
("I cannot connect to the database because : " . mysql_error()); 

mysql_select_db("$databasename", $db) //memanggil nama databasenya
or die 
("I cannot select the database '$databsename' because : " . mysql_error()); 
?>

Kemudian kita buat file index.php untuk menampilkan jadwal  keberangkatan kereta api dengan script seperti ini:
<?php
include ("koneksi.php");//memanggil isi file koneksi.php dengan keyword include
$selectkereta = 'SELECT *FROM kereta ORDER BY no_kereta ASC'; //query untuk menampilkan data dari tabel kereta
$resultselectkereta = mysql_query($selectkereta) //mengubah query menjadi variabel
                      or die ('error, load data tiket failed.' . mysql.error());
if (mysql_num_rows($resultselectkereta)==0){ //kondisi jika jumlah baris pada database kosong
  echo "Data tidak tersedia"; //muncul pemberitahuan
}else{
  //jika tidak kosong muncul tabel 
  echo "
  <h1 align='center'><font face='Arial Narrow' color='#FF8C00'>
    Jadwal Keberangkatan Kereta Api Stasiun Jember</h1>
  <table width = '70%' align='center' border='1' cellspacing='0' cellpadding='1'>
  <tr bgcolor=#D3D3D3>
  <td align='center' width = '150'> No. Kereta </td>
  <td align='center' width = '250'> Nama Kereta </td>
  <td align='center' width = '250'> Kelas </td>
  <td align='center' width = '250'> Stasiun Asal </td>
  <td align='center' width = '250'> Stasiun Tujuan </td>
  <td align='center' width = '250'> Jam Berangkat </td>
  <td align='center' width = '250'> Jam Tiba </td>
  <td align='center' width = '250'> Harga </td>
  <td align='center' width = '250'> ACTION </td>
  </tr>";
  while ($row = mysql_fetch_array ($resultselectkereta)){ //pengulangan penyimpanan semua data dr database ke dalam bentuk array
  extract($row); //extract digunakan untuk mengubah array menjadi variabel
  //menampilkan data satu persatu 
  echo "<tr>
  <td align='center'> ".$no_kereta." </td>
  <td align='center'> ".$nama_kereta." </td>
  <td align='center'> ".$kelas." </td>
  <td align='center'> ".$stasiun_asal." </td>
  <td align='center'> ".$stasiun_tujuan." </td>
  <td align='center'> ".$waktu_berangkat." </td>
  <td align='center'> ".$waktu_tiba." </td>
  <td align='center'> ".$harga." </td>
  <td align='center'><a href ='tiket.php?no_kereta=$no_kereta'>PESAN TIKET</a></td>
  </tr>";
  //link 'PESAN TIKET' menuju file tiket.php dengan no_kereta=$no_kereta yang diklik
  }
  echo "</table>";
  }
?>

Setelah itu, lanjut buat file tiket.php dengan script html yang dibubuhi php dibawah ini:
<?php
//memanggil isi file koneksi.php dengan keyword include
Include ("koneksi.php"); 
//mengambil nilai no_kereta dari link 'PESAN TIKET' yg ada di file index.php dalam bentuk variabel $no_ka
$no_ka=$_GET['no_kereta']; 
//query untuk memilih data yang no_keretanya = variabel $no_ka dari tabel kereta
$selectkereta = "SELECT * FROM kereta WHERE no_kereta='$no_ka'"; 
//mengubah query menjadi variabel
$resultselectkereta = mysql_query($selectkereta) or die ('Error, load data kereta failed.'.mysql_error()); 
//menyimpan data sesuai dengan yang diseleksi kedalam array dg variabel $rowkereta
$rowkereta = mysql_fetch_assoc($resultselectkereta); 
?>
<!DOCTYPE html>
<html>
<!-- judul pada tab browser -->
<head> <title> Pemesanan Tiket </title> </head>
<body>
<form method="post">
<!-- tag Fieldset berfungsi untuk mengelompokkan beberapa objek form menjadi sebuah kelompok, 
sedangkan tag Legend berfungsi untuk menampilkan judul dari kelompok objek form tersebut -->
<fieldset style="width: 730px; height: 300px;"><legend align="center"><b>Pemesanan Tiket Kereta Api</b></legend>
   <!-- tabel -->
   <table align='center'>
     <tr>
      <td>No. Kereta</td>
      <td>:</td>
      <!-- mengambil data dr array menggunakan $rowkereta di ikuti nama atribut yg akan ditampilkan datanya -->
      <td><input type="text" name="nokereta" value="<?php echo $rowkereta['no_kereta']; ?>" disabled /></td>
      <td width="150" align="center">  </td>
      <td>Tanggal Pemesanan</td>
      <td>:</td>
      <!-- menampilkan tanggal saat ini -->
      <td><input type="text" name="Tanggal" value="<?php echo date("d M y");?>" disabled /></td>
     </tr>

     <tr>
      <td>Nama Kereta</td>
      <td>:</td>
      <!-- mengambil data dr array menggunakan $rowkereta di ikuti nama atribut yg akan ditampilkan datanya -->
      <td><input type="text" name="namakereta" value="<?php echo $rowkereta['nama_kereta']; ?>" disabled /></td>
      <td width="150" align="center">  </td>
      <td>No. Identitas</td> 
      <td>:</td>
      <!-- inputfield untuk noidentitas -->
      <td><input type="text" name="noidentitas" autofocus required placeholder="KTP / SIM / Passport"></td>
     </tr>
  
     <tr>
      <td>Kelas</td>
      <td>:</td>
      <!-- mengambil data dr array menggunakan $rowkereta di ikuti nama atribut yg akan ditampilkan datanya -->
      <td><input type="text" name="kelaskereta" value="<?php echo $rowkereta['kelas']; ?>" disabled /></td>
      <td width="150" align="center">  </td>
      <td>Nama Lengkap</td> 
      <td>:</td>
      <!-- inputfield untuk namapenumpang -->
      <td><input type="text" name="namapenumpang" required placeholder="Masukkan nama anda"></td>
     </tr>
  
     <tr>
      <td>Stasiun Asal</td>
      <td>:</td>
      <!-- mengambil data dr array menggunakan $rowkereta di ikuti nama atribut yg akan ditampilkan datanya -->
      <td><input type="text" name="tujuan" value="<?php echo $rowkereta['stasiun_asal']; ?>" disabled /></td>
      <td width="150" align="center">  </td>
      <td>Alamat</td> 
      <td>:</td>
      <!-- inputfield untuk alamat -->
      <td><input type="text" name="alamat" required placeholder="Masukkan alamat anda"></td>
     </tr>
  
     <tr>
      <td>Stasiun Tujuan</td>
      <td>:</td>
      <!-- mengambil data dr array menggunakan $rowkereta di ikuti nama atribut yg akan ditampilkan datanya -->
      <td><input type="text" name="tujuan" value="<?php echo $rowkereta['stasiun_tujuan']; ?>" disabled /></td>
      <td width="150" align="center">  </td>
      <td>Nomor Telp.</td> 
      <td>:</td>
      <!-- inputfield untuk nomorTelp -->
      <td><input type="tel" name="nomorTelp" required placeholder="+62XXXXXXXXXXXX"></td> 
     </tr>
  
     <tr>
      <td>Waktu Berangkat</td>
      <td>:</td>
      <!-- mengambil data dr array menggunakan $rowkereta di ikuti nama atribut yg akan ditampilkan datanya -->
      <td><input type="text" name="waktuberangkat" value="<?php echo $rowkereta['waktu_berangkat'];?>" disabled/></td>
     </tr>
  
     <tr>
      <td>Waktu Tiba</td>
      <td>:</td>
      <!-- mengambil data dr array menggunakan $rowkereta di ikuti nama atribut yg akan ditampilkan datanya -->
      <td><input type="text" name="waktutiba" value="<?php echo $rowkereta['waktu_tiba']; ?>" disabled /></td>
     </tr>
  
     <tr>
      <td>Harga</td>
      <td>:</td>
      <!-- mengambil data dr array menggunakan $rowkereta di ikuti nama atribut yg akan ditampilkan datanya -->
      <td><input type="text" name="harga" value="<?php echo $rowkereta['harga']; ?>" disabled /></td>
     </tr>
     <tr>
      <!-- button submit -->
      <td align="right" colspan="7"><input type="submit" name="submit" value="Submit"></td>
     </tr>
   </table>
   <?php
   if(isset ($_POST['submit'])){ //kondisi jika button submit di klik
      $no_identitas = $_POST['noidentitas'];     //mengambil nilai dr inputfield dan dinyatakan sbg variabel
      $nama_penumpang = $_POST['namapenumpang']; //mengambil nilai dr inputfield dan dinyatakan sbg variabel
      $alamat = $_POST['alamat'];                //mengambil nilai dr inputfield dan dinyatakan sbg variabel
      $no_telp = $_POST['nomorTelp'];            //mengambil nilai dr inputfield dan dinyatakan sbg variabel
      //query untuk menambahkan data kedalam database
      $inserttiket ="INSERT INTO penumpang VALUES('$no_identitas','$nama_penumpang', '$alamat',$no_telp)";
   mysql_query($inserttiket) or die ('Error!!'.mysql_error());
   //link menuju struk.php dg no_kereta = variabel $no_ka dan no_identitas = variabel $no_identitas
   echo "<script>window.location.href='struk.php?no_kereta=$no_ka && no_identitas=$no_identitas';</script>";
   }
   ?>
</fieldset>
</form> 
</body>
</html>

selanjutnya kita buat file struk.php dengan script html yg dibumbui script php
<?php
 //memanggil isi file koneksi.php dengan keyword include
 Include ("koneksi.php");
 //mengambil nilai no_kereta dari link 'submit' yg ada di file tiket.php dalam bentuk variabel $no_ka
 $no_ka=$_GET['no_kereta'];
 //query untuk memilih data yang no_keretanya = variabel $no_ka dari tabel kereta
 $selectKA = "SELECT * FROM kereta WHERE no_kereta='$no_ka'" ;
 //mengubah query menjadi variabel
 $resultselectKA = mysql_query($selectKA) or die ('error, load data tiket failed.' . mysql.error());
 //menyimpan data sesuai dengan yang diseleksi kedalam array dg variabel $rowkereta
 $rowkereta = mysql_fetch_assoc($resultselectKA);
 
 //mengambil nilai no_identitas dari link 'submit' yg ada di file tiket.php dalam bentuk variabel $no_penumpang
 $no_penumpang=$_GET['no_identitas'];
 //query untuk memilih data yang no_identitas = variabel $no_penumpang dari tabel penumpang
 $selectpenumpang = "SELECT * FROM penumpang WHERE no_identitas='$no_penumpang'" ;
 //mengubah query menjadi variabel
 $resultselectpenumpang = mysql_query($selectpenumpang) or die ('error, load data tiket failed.' . mysql.error());
 //menyimpan data sesuai dengan yang diseleksi kedalam array dg variabel $rowpenumpang
 $rowpenumpang = mysql_fetch_assoc($resultselectpenumpang);
?>
<!DOCTYPE html>
<html>
<!-- judul pada tab browser -->
<head> <title> Struk Pemesanan Tiket </title> </head>
<body>
 <form method="post">
 <!-- tag Fieldset berfungsi untuk mengelompokkan beberapa objek form menjadi sebuah kelompok -->
 <fieldset>
 <h1><font face='Arial'>PT. KERETA API INDONESIA (PERSERO)</h1>
 <h2 align="center">Struk Pemesanan Tiket Kereta Api</h2>
 <!-- tabel -->
 <table width="60%" align='center' border='0'>
  <tr>
    <td colspan="7">=========================================================================================</td>
  </tr>
  
  <tr>
    <td>No. Kereta</td>
    <td>:</td>
    <!-- mengambil data dr array menggunakan $rowkereta di ikuti nama atribut yg akan ditampilkan datanya -->
    <td><?php echo $rowkereta['no_kereta']; ?></td>
    <td width="150" align="center"> | </td>
    <td>Tanggal Pemesanan</td>
    <td>:</td>
    <!-- menampilkan tanggal saat ini -->
    <td><?php echo date ("d M y");?></td>
  </tr>
  
  <tr>
    <td>Nama Kereta</td>
    <td>:</td>
    <!-- mengambil data dr array menggunakan $rowkereta di ikuti nama atribut yg akan ditampilkan datanya -->
    <td><?php echo $rowkereta['nama_kereta']; ?></td>
    <td width="150" align="center"> | </td>
    <td>No. Identitas</td>
    <td>:</td>
    <!-- mengambil data dr array menggunakan $rowpenumpang di ikuti nama atribut yg akan ditampilkan datanya -->
    <td><?php echo $rowpenumpang['no_identitas']; ?></td>
  </tr>
  
  <tr>
    <td>Kelas</td>
    <td>:</td>
    <!-- mengambil data dr array menggunakan $rowkereta di ikuti nama atribut yg akan ditampilkan datanya -->
    <td><?php echo $rowkereta['kelas']; ?></td>
    <td width="150" align="center"> | </td>
    <td>Nama Penumpang</td>
    <td>:</td>
    <!-- mengambil data dr array menggunakan $rowpenumpang di ikuti nama atribut yg akan ditampilkan datanya -->
    <td><?php echo $rowpenumpang['nama_penumpang']; ?></td>
  </tr>
  
  <tr>
    <td>Stasiun Asal</td>
    <td>:</td>
    <!-- mengambil data dr array menggunakan $rowkereta di ikuti nama atribut yg akan ditampilkan datanya -->
    <td><?php echo $rowkereta['stasiun_asal']; ?></td>
    <td width="150" align="center"> | </td>
    <td>Alamat</td>
    <td>:</td>
    <!-- mengambil data dr array menggunakan $rowpenumpang di ikuti nama atribut yg akan ditampilkan datanya -->
    <td><?php echo $rowpenumpang['alamat']; ?></td>
  </tr>
  
  <tr>
    <td>Stasiun Tujuan</td>
    <td>:</td>
    <!-- mengambil data dr array menggunakan $rowkereta di ikuti nama atribut yg akan ditampilkan datanya -->
    <td><?php echo $rowkereta['stasiun_tujuan']; ?></td>
    <td width="150" align="center"> | </td>
    <td>No. Telp</td>
    <td>:</td>
    <!-- mengambil data dr array menggunakan $rowpenumpang di ikuti nama atribut yg akan ditampilkan datanya -->
    <td><?php echo $rowpenumpang['no_telp']; ?></td>
  </tr>
  
  <tr>
    <td>Waktu Berangkat</td>
    <td>:</td>
    <!-- mengambil data dr array menggunakan $rowkereta di ikuti nama atribut yg akan ditampilkan datanya -->
    <td><?php echo $rowkereta['waktu_berangkat']; ?></td>
    <td width="150" align="center"> | </td>
  </tr>
  
  <tr>
    <td>Waktu Tiba</td>
    <td>:</td>
    <!-- mengambil data dr array menggunakan $rowkereta di ikuti nama atribut yg akan ditampilkan datanya -->
    <td><?php echo $rowkereta['waktu_tiba']; ?></td>
    <td width="150" align="center"> | </td>
  </tr>
  
  <tr>
    <td>Harga</td>
    <td>:</td>
    <!-- mengambil data dr array menggunakan $rowkereta di ikuti nama atribut yg akan ditampilkan datanya -->
    <td>Rp. <?php echo $rowkereta['harga']; ?></td>
    <td width="150" align="center"> | </td>
  </tr>
  
  <tr>
    <td colspan="7">=========================================================================================</td>
  </tr>
 </table>
 <footer>
   <p align="center">Struk ini tidak berlaku sebagai tiket. 
         Struk harus ditukar dengan tiket di stasiun paling lambat 1 jam sebelum keberangkatan.
   </br> Pastikan nama & no identitas sudah sesuai dengan nama & no identitas
   </br> Perbedaan nama & no identitas dapat berakibat ditolaknya proses check-in di stasiun.
   </br> Dan tiket dinyatakan TIDAK BERLAKU LAGI.
   </br> Untuk informasi lebih lanjut hubungi Contact Center KAI di 021-121.</p>
 </footer>
 </fieldset>
<?php
 //link 'HOME' menuju file index.php
 echo "<a href ='index.php'>HOME</a></br>";
 
 //link 'EDIT' menuju file edit-tiket.php dengan no_kereta = variabel $no_ka dan no_identitas = variabel $no_penumpang
 echo "<a href ='edit-tiket.php?no_kereta=$no_ka && no_identitas=$no_penumpang'>EDIT</a></br>";
 
 //link 'DELETE' menuju fungsi java script dg parameter yg didpat dr $no_penumpang
 echo "<a href ='javascript:deleteTiket($no_penumpang)'>DELETE</a>";
?>
<!-- java script yg digunakan untuk memunculkan dialog konfirmasi hapus -->
 <script language="javascript" type="text/javascript"> 
 function deleteTiket(no_identitas){ //fungsi deleteTiket dg parameter no_identitas
    if (confirm('Are you sure to delete this tiket?')){ //dialog konfirmasi
      window.location.href = '?delete&no_identitas=' + no_identitas; //link data yg akan dihapus berdasarkan no_identitasnya
    } 
 } 
</script>
<?php   
 //jika fungsi delete dijalankan dan parameter no_identitas yg akan dihapus ada
 if(isset($_GET['delete']) && isset($_GET['no_identitas'])){ 
  //query untuk menghapus data dimana no_identitasnya didapatkan dari fungsi delete
  $sqldelete = 'DELETE FROM penumpang  WHERE no_identitas= "'.$_GET['no_identitas'].'" ';
  mysql_query($sqldelete) or die('Delete tiket failed. ' . mysql_error());
  //jika proses delete sudah dilakukan, maka akan kembali ke index.php
  echo "<script>window.location.href='index.php';</script>";
 }
?>
</form> 
</body>
</html>

Terakhir kita buat form edit-tiket.php . Sricptnya hampir sama dengan file tiket.php, hanya saja ada sedikit perubahan. Seperti ini Scriptnya:
<?php
 //memanggil isi file koneksi.php dengan keyword include
 Include ("koneksi.php");
 //mengambil nilai no_kereta dari link 'EDIT' yg ada di file struk.php dalam bentuk variabel $no_ka
 $no_ka=$_GET['no_kereta'];
 //query untuk memilih data yang no_keretanya = variabel $no_ka dari tabel kereta
 $selectkereta = "SELECT * FROM kereta WHERE no_kereta='$no_ka'";
 //mengubah query menjadi variabel
 $resultselectkereta = mysql_query($selectkereta) or die ('Error, load data kereta failed.'.mysql_error()); 
 //menyimpan data sesuai dengan yang diseleksi kedalam array dg variabel $rowkereta
 $rowkereta = mysql_fetch_assoc($resultselectkereta);
 
 //mengambil nilai no_identitas dari link 'EDIT' yg ada di file struk.php dalam bentuk variabel $no_penumpang
 $no_penumpang=$_GET['no_identitas'];
 //query untuk memilih data yang no_identitas = variabel $no_penumpang dari tabel penumpang
 $selectpenumpang = "SELECT * FROM penumpang WHERE no_identitas='$no_penumpang'" ;
 //mengubah query menjadi variabel
 $resultselectpenumpang = mysql_query($selectpenumpang) or die ('error, load data tiket failed.'.mysql_error());
 //menyimpan data sesuai dengan yang diseleksi kedalam array dg variabel $rowedit
 $rowedit = mysql_fetch_assoc($resultselectpenumpang);
?>
<!DOCTYPE html>
<html>
<!-- judul pada tab browser -->
<head> <title> Pemesanan Tiket </title> </head>
<body>
 <form method="post">
 <!-- tag Fieldset berfungsi untuk mengelompokkan beberapa objek form menjadi sebuah kelompok, 
 sedangkan tag Legend berfungsi untuk menampilkan judul dari kelompok objek form tersebut -->
 <fieldset style="width: 730px; height: 300px;"><legend align="center"><b>Pemesanan Tiket Kereta Api</b></legend>
 <!-- tabel -->
 <table align='center' border='0'>
   <tr>
     <td>No. Kereta</td>
     <td>:</td>
     <!-- mengambil data dr array menggunakan $rowkereta di ikuti nama atribut yg akan ditampilkan datanya -->
     <td><input type="text" name="nokereta" value="<?php echo $rowkereta['no_kereta']; ?>" disabled /></td>
     <td width="150" align="center">  </td>
     <td>Tanggal Pemesanan</td>
     <td>:</td>
     <!-- menampilkan tanggal saat ini -->
     <td><input type="text" name="Tanggal" value="<?php echo date ("d M y");?>" disabled /></td>
   </tr>
  
   <tr>
     <td>Nama Kereta</td>
     <td>:</td>
     <!-- mengambil data dr array menggunakan $rowkereta di ikuti nama atribut yg akan ditampilkan datanya -->
     <td><input type="text" name="namakereta" value="<?php echo $rowkereta['nama_kereta']; ?>" disabled /></td>
     <td width="150" align="center">  </td>
     <td>No. Identitas</td> 
     <td>:</td>
     <!-- mengambil data dr array menggunakan $rowedit di ikuti nama atribut yg akan ditampilkan datanya -->
     <td><input type="text" name="noidentitas" value="<?php echo $rowedit['no_identitas'];?>" autofocus required></td>
   </tr>
  
   <tr>
     <td>Kelas</td>
     <td>:</td>
     <!-- mengambil data dr array menggunakan $rowkereta di ikuti nama atribut yg akan ditampilkan datanya -->
     <td><input type="text" name="kelas" value="<?php echo $rowkereta['kelas']; ?>" disabled /></td>
     <td width="150" align="center">  </td>
     <td>Nama Lengkap</td> 
     <td>:</td>
     <!-- mengambil data dr array menggunakan $rowedit di ikuti nama atribut yg akan ditampilkan datanya -->
     <td><input type="text" name="namapenumpang" value="<?php echo $rowedit['nama_penumpang'];?>" required></td>
   </tr>
   <tr>
     <td>Stasiun Asal</td>
     <td>:</td>
     <!-- mengambil data dr array menggunakan $rowkereta di ikuti nama atribut yg akan ditampilkan datanya -->
     <td><input type="text" name="tujuan" value="<?php echo $rowkereta['stasiun_asal']; ?>" disabled /></td>
     <td width="150" align="center">  </td>
     <td>Alamat</td> 
     <td>:</td>
     <!-- mengambil data dr array menggunakan $rowedit di ikuti nama atribut yg akan ditampilkan datanya -->
     <td><input type="text" name="alamat" value="<?php echo $rowedit['alamat'];?>" required ></td>
   </tr>
  
   <tr>
     <td>Stasiun Tujuan</td>
     <td>:</td>
     <!-- mengambil data dr array menggunakan $rowkereta di ikuti nama atribut yg akan ditampilkan datanya -->
     <td><input type="text" name="tujuan" value="<?php echo $rowkereta['stasiun_tujuan']; ?>" disabled /></td>
     <td width="150" align="center">  </td>
     <td>Nomor Telp.</td> 
     <td>:</td>
     <!-- mengambil data dr array menggunakan $rowedit di ikuti nama atribut yg akan ditampilkan datanya -->
     <td><input type="tel" name="nomorTelp" value="<?php echo $rowedit['no_telp'];?>"required ></td> 
   </tr>
  
   <tr>
     <td>Waktu Berangkat</td>
     <td>:</td>
     <!-- mengambil data dr array menggunakan $rowkereta di ikuti nama atribut yg akan ditampilkan datanya -->
     <td><input type="text" name="waktuberangkat" value="<?php echo $rowkereta['waktu_berangkat']; ?>" disabled /></td>
   </tr>
  
   <tr>
     <td>Waktu Tiba</td>
     <td>:</td>
     <!-- mengambil data dr array menggunakan $rowkereta di ikuti nama atribut yg akan ditampilkan datanya -->
     <td><input type="text" name="waktutiba" value="<?php echo $rowkereta['waktu_tiba']; ?>" disabled /></td>
   </tr>
  
   <tr>
     <td>Harga</td>
     <td>:</td>
     <!-- mengambil data dr array menggunakan $rowkereta di ikuti nama atribut yg akan ditampilkan datanya -->
     <td><input type="text" name="harga" value="<?php echo $rowkereta['harga']; ?>" disabled /></td>
   </tr>

   <tr>
     <!-- button edit -->
     <td align="right" colspan="7"><input type="submit" name="edit" value="EDIT"></td>
   </tr>
 </table>
<?php
  if(isset ($_POST['edit'])){ //kondisi jika button edit di klik
   $noidentitas = $_POST['noidentitas'];      //mengambil nilai dr inputfield dan dinyatakan sbg variabel
   $namapenumpang = $_POST['namapenumpang'];  //mengambil nilai dr inputfield dan dinyatakan sbg variabel
   $alamat = $_POST['alamat'];                //mengambil nilai dr inputfield dan dinyatakan sbg variabel
   $notelp = $_POST['nomorTelp'];             //mengambil nilai dr inputfield dan dinyatakan sbg variabel
   //query untuk mengedit data 
   $updatetiket="UPDATE penumpang SET 
      no_identitas = '$noidentitas',
      nama_penumpang = '$namapenumpang',
      alamat = '$alamat',
      no_telp = $notelp 
      WHERE no_identitas = '$no_penumpang'";
  mysql_query($updatetiket) or die ('Error!!'.mysql_error());
  //jika proses update sudah dilakukan, maka akan dikembalikan ke file struk.php
  //dg no_kereta = variabel $no_ka dan no_identitas = variabel $noidentitas yg baru saja di edit
  echo "<script>window.location.href='struk.php?no_kereta=$no_ka && no_identitas=$noidentitas';</script>";
  }
?>
</fieldset>
</form> 
</body>
</html>

Gimana? kepanjangan ya? :D klo ga nyaman liat script di atas, saya sediakan link untuk download file-filenya disini
Demikian tutorial pembuatan aplikasi berbasis web studi kasus pemesanan tiket.
Kurang lebihnya saya mohon maaf.
Wassalamualaikum wr. wb

6 komentar :

  1. mantap gan...pernah bikin web penjualan tiket pesawat gan?

    BalasHapus
  2. mas kenpa gak bisa di download

    BalasHapus
  3. mas bagi lah program nya....
    utk tugas di dekolah smk'''''
    boleh kann.kirim ke Kpufaj@ymail.com
    saya tunggu ya
    wassalam

    BalasHapus
  4. makasih banyak ya mas, sangat membantu, semoga panjang umur n' lancar rejekinya

    BalasHapus
  5. thanks gan, sangat bermanfaat..

    BalasHapus