Membuat aplikasi data mahasiswa dengan PHP - Bagian 3

form/formulir input data mahasiswaProses tahap awal dari membuat database, tabel, membuat formulir input data mahasiswa, proses simpan dan upload photo mahasiswa sudah dilakukan pada artikel Membuat aplikasi data mahasiswa dengan PHP - Bagian 1 dan Bagian 2, sekarang membuat laporan hasil input data mahasiswa. Laporan ini akan dibuat menghubungkan kebeberapa bagian yaitu pencarian data mahasiswa, delete/menghapus data mahasiswa dan mengupdate data mahasiswa. Silahkan menyimak tahapan lanjutan berikut ini.

Membuat laporan data mahasiswa

Laporan akan saya buat dengan susunan tabel yang menampilkan seluruh data mahasiswa.

Silahkan lihat kode berikut ini :

<?php
include "koneksi.php";
?>
<html>
<head>
<title>Laporan Data Mahasiswa</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<h2 align="center">Data Mahasiswa</h2>
<form action="" method="get" name="FCari" id="FCari">
  Cari NIM/Nama 
    <input name="txtcari" type="text" id="txtcari" size="20" maxlength="30" value="<?php echo $_GET['txtcari']?>">
  <input type="submit" name="Submit" value="Cari">
</form>
<form name="FLaporan" method="post" action="delete-banyak.php" onSubmit="return confirm('Hapus data terpilih?')">
<table width="100%" border="1" align="center" cellpadding="3" cellspacing="0">
  <tr>
    <td align="center">&nbsp;</td>
    <td>NIM</td>
    <td>Nama</td>
    <td>Tempat Lahir</td>
    <td align="center">Tanggal Lahir</td>
    <td align="center">Jenis Kelamin</td>
    <td>Alamat</td>
    <td align="center">Photo</td>
    <td align="center">Koreksi</td>
    <td align="center">Hapus</td>
  </tr>
<?php
  if(!empty($_GET['txtcari'])) 
  {
     $myquery="select nim,nama,tempat_lahir, DATE_FORMAT(tanggal_lahir, '%d-%m-%Y') as tanggal_lahir, jenis_kelamin,alamat, photo from tb_mahasiswa where nim='".$_GET['txtcari']."' or nama LIKE '%".$_GET['txtcari']."%'";
  }
  else
  {
     $myquery="select nim,nama,tempat_lahir, DATE_FORMAT(tanggal_lahir, '%d-%m-%Y') as tanggal_lahir, jenis_kelamin,alamat, photo from tb_mahasiswa";
  }	
  $daftarsiswa=mysql_query($myquery) or die (mysql_error());
  while($dataku=mysql_fetch_object($daftarsiswa))
  {
?>
  <tr>
    <td align="center">
    <input type="checkbox" name="item[]" id="item[]" value="<?php echo $dataku->nim?>" /></td>
    <td><?php echo  $dataku->nim?></td>
    <td><?php echo  $dataku->nama?></td>
    <td><?php echo  $dataku->tempat_lahir?></td>
    <td align="center"><?php echo  $dataku->tanggal_lahir?></td>
    <td align="center"><?php echo  $dataku->jenis_kelamin?></td>
    <td><?php echo  $dataku->alamat?></td>
    <td align="center"><img src="<?php echo  $dataku->photo?>" alt="<?php echo  $dataku->nama?>" width="50" /></td>
    <td align="center"><a href="koreksi-data-mahasiswa.php?nim=<?php echo  $dataku->nim?>">Koreksi</a></td>
    <td align="center"><a href="hapus-data-mahasiswa.php?nim=<?php echo  $dataku->nim?>">Hapus</a></td>
  </tr>
<?
}
?>
</table>
    <input name="btnHapus" type="submit" value="Delete">
  <p align="center"><a href="index.php">Menu Utama
  </a></p>
</form>
</body>
</html>

Tampilan Laporan Aplikasi Data Mahasiswa

Kemudian saya simpan dengan nama file laporan-data-mahasiswa.php, jika panggil melalui menu utama maka hasilnya akan seperti berikut :

laporan data mahasiswa

untuk sementara yang bisa digunakan hanya faslitas pencarian, anda bisa coba.

Secara logika, pencarian dilakukan apabila text pencarian dengan nama txtCari diisi dan dikirim, sehingg halaman laporan menerima melalui metode GET dan mencari berdasar nim atau nama.

Download halaman laporan data mahasiswa

Membuat halaman delete / hapus satu baris data aplikasi data mahasiswa

Jika anda lihat dibagian kolom laporan ada sebuah kolom dengan judul hapus, tulisan hapus pada tiap baris digunakan untuk mengahpus baris yang sesuai, mekanismenya, link hapus membawa nilai dengan kunci nim ke halaman hapus. Sekarang saya akan membuat halaman hapus untuk menerima kiriman dari link hapus. Lihat kode berikut :

<?php
include "koneksi.php";
$nim = $_GET['nim'];
$res = mysql_query("select photo from tb_mahasiswa where nim='".$_GET['nim']."' LIMIT 1");
$d=mysql_fetch_object($res);
if (strlen($d->photo)>3)
{
  if (file_exists($d->photo)) unlink($d->photo);
}	
$myquery =  "delete from tb_mahasiswa where nim ='$nim' limit 1"; 
$hapus = mysql_query($myquery) or die ("gagal menghapus"); 
header ("location:laporan-data-mahasiswa.php");
?>

Disini antara hapus satu baris saya bedakan filenya, agar lebih mudah difahami. Sebenarnya bisa digabung dengan mendeteksi bentuk kiriman parameter nilainya, nanti jika diperlukan akan saya bahas kembali.

Proses penghapusan data dalam file hapus-data-mahasiswa.php dilakukan dengan menghapus sekaligus file gambar yang sudah dimasukkan. Sebelum menghapus juga ada pengecekan status photo jika ada isinya dan jika ada filenya maka dilakukan hapus gambar.

Download file delete data mahasiswa

Membuat halaman delete / hapus banyak baris aplikasi data mahasiswa

Bagian ini adalah halaman yang akan menangani proses jika baris data dipilih dan tombol delete ditekan. Fungsinya adalah menghapus semua data yang sudah terpilih. Dibagian laporan, saya sudah buatkan checkbox yang masing-masing sudah diberi nilai dalam susunan array input. Lihat kode baris ini pada bagian kode laporan.

<input type="checkbox" name="item[]" id="item[]" value="<?php echo $dataku->nim?>" />

Setiap perulangan baris maka masing-masing item[] akan diberi nilai sesuai nim yang sedang diambil dalam tabel. Kemudian semua array akan dikirim ke halaman delete-banyak.php sesuai dengan action form yang ada sebelum tabel. Berikut kode untuk mengambil nilai dari array pilihan yang dihapus :

<?php
include "koneksi.php";
$jumlah = count($_POST["item"]);
for($i=0; $i < $jumlah; $i++) 
{
  $nim=$_POST["item"][$i];
  $res = mysql_query("select photo from tb_mahasiswa where nim='$nim' LIMIT 1");
  $d=mysql_fetch_object($res);
  if (strlen($d->photo)>3)
  {
    if (file_exists($d->photo)) unlink($d->photo);
  }	
  $myquery =  "delete from tb_mahasiswa where nim ='$nim' limit 1"; 
  $hapus = mysql_query($myquery) or die ("gagal menghapus"); 
}
header ("location:laporan-data-mahasiswa.php");
?>

Semua array akan dihitung dan dilakukan perulangan untuk menghapus photo serta recordnya.

Download file hapus banyak data mahasiswa

Setelah ini saya akan tulis lagi bagian 4, lanjutan tentang mengupdate data yang sudah masuk tabel database.

Semoga Bermanfaat, kritik saran, koreksi, pertanyaan jangan sungkan anda sampaikan. Silahkan berbagi buat yang lain jika ini menurut anda baik.

Zainal Hakim

Revisi Script : 08 Januari 2014

Baca juga Tutorial Membuat aplikasi data mahasiswa dengan PHP - Bagian 1 Bagian 2 - Bagian 3 - Bagian 4 - Bagian 5 - Bagian 6

** Bebas disunting dengan menyebutkan sumber **

Artikel Lainnya

  • Membuat file text dengan program php
    Dengan pemrograman web php kita bisa melakukan operasi terhadap file yang berada dalam server. Operasi file yang bisa dilakukan diantaranya adalah membuat file, membaca isi file serta memperbaharui isi dan menghapus file.
  • Membaca file csv dengan php
    CSV adalah jenis file yang sering digunakan untuk menyimpan data berupa huruf dan angka dalam bentuk plain-text. CSV (comma separated values) ini menyimpan dengan susunan baris data yang dipisah dengan karakter coma.
  • Mengatur format tanggal dalam php
    PHP telah menyediakan fungsi untuk menampilkan tanggal dalam berbagai format yang dituliskan dalam bahasa inggris. Bagaimana jika kita perlu menampilkan tanggal dalam format indonesia? Artikel berikut akan menjelaskan beberapa format tanggal dalam php dan cara menampilkannya. SIlahkan anda simak.
  • Mengirim email laporan dari database mysql dengan PHPMailer
    Pada tulisan sebelumnya saya sedikit berbagi tentang Cara mudah mengirim email dari PHP dengan PHPMailer. Pada tulisan berikut ini saya ingin lanjutkan lagi tentang bagaimana mengirimkan email dalam bentuk laporan yang diambilkan dari database mysql dengan dengan PHPMailer.
  • Membuat function di php
    Function adalah kumpulan baris program yang digunakan untuk melakukan proses tertentu dengan tujuan yang sama. Function akan mengembalikan nilai atau hasil yang sudah diproses kepada rutin atau variabel yang menggunakannya. Function dibuat agar program utama dapat ditulis lebih sederhana dan pengulangan proses dapat dilakukan dengan lebih mudah. Dalam php terdapat tiga jenis function yang bisa dijalankan yaitu User-defined, internal dan anonymous functions. Pada artikel berikut saya akan menjelaskan tentang bagaimana membuat function sediri (User Defined) dalam php.

Kiriman terbaru