Script yang digunakan untuk memeriksa apakah data userid dan password sesuai dengan data administrator dari tabel administrator ini disimpan ke dalam sebuah file dengan nama login.php. Berikut adalah script yang ada dalam file login.php:
<?
session_start();
include"../sambung.php";
$data=mysql_query("select * from administrator where userid='$userid_admin'"); $user=mysql_fetch_array($data); if($userid_admin ==""){ header("Location:./index.php?error=1"); }else{ if($password_admin=="$user[password]"){ $id_admin="$user[id]"; session_register("id_admin"); session_register("userid_admin"); session_register("password_admin"); header("Location:./admin.php"); }else{ header("Location:./index.php?error=1");
}} ?>
Keterangan:
Script di atas diawali dengan fungsi start_session(), Fungsi ini digunakan untuk mendeklarasikan bahwa pada file ini memiliki data sesi. Fungsi strat_session() harus dituliskan pada awal script. Apabila dituliskan pada tengah atau akhir script, fungsi ini tidak akan berjalan dan dianggap sebuah kesalahan.
Fungsi berikutnya adalah include, Fungsi ini digunakan memanggil file lain yang dibutuhkan pada script ini. Nilai dari fungsi include ini adalah “../sambung.php”, artinya pada script di file ini membutuhkan script yang ada pada file sambung.php, yaitu untuk melakukan koneksi ke database. Setelah melakukan konesi dengan database menggukanan file sambung.php, berikutnya dalah membaca data yang ada dalam tabel administrator, yaitu bagian script pada:
$data=mysql_query("select * from administrator where userid='$userid_admin'");
$user=mysql_fetch_array($data);
Langkah berikutnya adalah membuat script yang berfungsi untuk memeriksa data masukan dari formulir login yaitu userid dan password. Jika data userid yang dimasukkan kosong maka akan dialihkan kembali pada halaman login. Kemudian apabila data yang dimasukkan lengkap, maka script akan mencocokkan data userid dan password yang dikirim dari formulir login dengan data administrator yang dibaca oleh script sebelumnya seperti pada potongan script dibawah ini: if($userid_admin ==""){ header("Location:./index.php?error=1"); }else{ if($password_admin=="$user[password]"){ $id_admin="$user[id]"; session_register("id_admin"); session_register("userid_admin");
session_register("password_admin"); header("Location:./admin.php"); }else{
header("Location:./index.php?error=1"); }}
Apabila data userid dan password cocok dengan data yang dibaca dari database, maka script akan mendaftarkan id_admin, userid_admin dan password_admin ke dalam data sesi, kemudian administrator akan diarahkan ke halaman admin.php menggunakan fungsi header(). Apabila data userid dan data password tidak sesuai dengan data yang ada dalam database, maka administrator akan dialihkan ke halaman login kembali.
HALAMAN ADMIN
Halaman admin ini adalah halaman yang akan tampil apabila administrator telah login. Pada halaman ini akan menampilkan beberapa data yang ada dalam database dan juga pilihan menu berupa link untuk mengakses data-data tertentu, seperti data siswa, data karyawan, data kelas dan lain-lain.
Berikut adalah script yang digunakan untuk membaca database dan menampilkan data pada halaman admin dengan nama file admin.php tersebut:
<table border="0" width="100%" cellspacing="0" cellpadding="0" background="../images/img_07.gif" id="table1">
<tr>
<td width="182" valign="top"><p style="left: 10px; margin-right: 20px; margin-top: 2px; margin-bottom: 2px" align="left"> <font size="2">TAMBAH DATA</font></p>
<p style="margin-left: 10px; margin-right: 20px; margin-top: 2px; margin-bottom: 2px" align="left">
// Bagian untuk menampilkan menu link ?>
<font size="2"><a href="admin.php">Utama</a></font></p> <p style="margin-left: 10px; margin-right: 20px; margin-top: 2px; margin-bottom: 2px" align="left"><font size="2"><a
href="admin.php?menu=karyawan">Data
karyawan</a></font></p><p style="margin-left: 10px; margin-right: 20px; margin-top: 2px; margin-bottom: 2px" align="left">
<font size="2"><a href="admin.php?menu=siswa">Data siswa</a></font></p>
<p style="margin-left: 10px; margin-right: 20px; margin-top: 2px; margin-bottom: 2px" align="left">
<font size="2"><a href="admin.php?menu=kelas">Data kelas</a></font></p>
<p style="margin-left: 10px; margin-right: 20px; margin-top: 2px; margin-bottom: 2px" align="left">
<font size="2"><a href="admin.php?menu=jurusan">Data jurusan</a></font></p>
<p style="margin-left: 10px; margin-right: 20px; margin-top: 2px; margin-bottom: 2px" align="left">
<font size="2"><a href="admin.php?menu=materi">Data
materi</a></font><p style="margin-left: 10px; margin-right: 20px; margin-top: 2px; margin-bottom: 2px" align="left"> <p style="margin-left: 10px; margin-right: 20px; margin-top: 2px; margin-bottom: 2px" align="left">
<font size="2"><a href="admin.php?menu=password">Ganti password</a></font><p style="margin-left: 10px; margin-right: 20px; margin-top: 2px; margin-bottom: 2px" align="left"> <font size="2"><a href="../keluar.php">Keluar</a></font></td> <td valign="top">
//batas awal if(isset($menu)){ include"$menu.php"; }else{
// membaca data pada database include"../sambung.php";
$data1=mysql_query("select * from karyawan"); $t_karyawan=mysql_num_rows($data1);
$data2=mysql_query("select * from siswa"); $t_siswa=mysql_num_rows($data2);
$data3=mysql_query("select * from kelas"); $t_kelas=mysql_num_rows($data3);
$data4=mysql_query("select * from jurusan"); $t_jurusan=mysql_num_rows($data4);
$data5=mysql_query("select * from materi"); $t_materi=mysql_num_rows($data5);
//Ditampilkan pada tabel dengan tag-tag HTML. ?>
<table border="1" width="98%" cellspacing="0" cellpadding="0" id="table3">
<tr>
<td align="center" bgcolor="#93CDF5">Keterangan</td> <td width="183" align="center" bgcolor="#93CDF5"> Jumlah Data</td>
</tr> <tr>
<td>
<p style="margin-left: 5px; margin-right: 5px"> <font size="2">Jumlah data karyawan</font></td>
<td width="183"><p style="margin-left: 5px; margin-right: 5px"> <font size="2"><?=$t_karyawan?> orang</font></td>
</tr> <tr>
<td><p style="margin-left: 5px; margin-right: 5px"><font size="2">Jumlah data siswa</font></td>
<td width="183"><p style="margin-left: 5px; margin-right: 5px"> <font size="2"><?=$t_siswa?> siswa</font></td>
</tr>
<tr><td><p style="margin-left: 5px; margin-right: 5px"> <font size="2">Jumlah data kelas</font></td>
<td width="183"><p style="margin-left: 5px; margin-right: 5px"> <font size="2"><?=$t_kelas?> kelas</font></td>
</tr>
<tr><td><p style="margin-left: 5px; margin-right: 5px"> <font size="2">Jumlah data jurusan</font></td>
<td width="183"><p style="margin-left: 5px; margin-right: 5px"> <font size="2"><?=$t_jurusan?> jurusan</font></td>
</tr>
<tr><td><p style="margin-left: 5px; margin-right: 5px"> <font size="2">Jumlah data materi</font></td>
<td width="183"><p style="margin-left: 5px; margin-right: 5px"> <font size="2"><?=$t_materi?> materi</font></td>
</tr> </table> <? } ?> </td></tr></table> Keterangan:
Ada beberapa bagian yang perlu diperhatikan dalam script di atas. Yang pertama adalah pada saat membuat menu link. Pada masing-masing menu link memiliki variabel dengan nama menu dan memiliki nilai yang berbeda-beda sesuai nama link. Contohnya adalah seperti pada potongan script di bawah ini:
<a href="admin.php?menu=siswa">Data siswa</a>
Perhatikan tag HTML yang membentuk link di atas, nilai dari link tersebut adalah admin.php?menu=siswa. Artinya apabila link diklik, maka pengunjung akan diarahkan ke file admin.php yaitu file itu sendiri dengan variabel menu yang memiliki nilai siswa yang akan membedakan data tampilannya.
Yang kedua adalah bagian script if(isset($menu)){
include"$menu.php"; }else{
// membaca data pada database include"../sambung.php";
$data1=mysql_query("select * from karyawan"); $t_karyawan=mysql_num_rows($data1);
awal script menggunakan fungsi if dengan memeriksa keberadaan variabel menu. Artinya jika pengunjung mengakses file admin.php dari menu link maka memiliki variabel menu, maka script akan membaca file lain menggunakan fungsi include yaitu include"$menu.php";. Jika nilai variabel menu adalah siswa maka script tersebut akan membaca file siswa.php.
Apabila variabel menu tidak ditemukan, maka script akan membaca data keseluruhan dari database seperti pada bagian
include"../sambung.php";
$data1=mysql_query("select * from karyawan"); $t_karyawan=mysql_num_rows($data1);
…
Berikut adalah tampilan halaman admin:
Gambar 5.2 Tampilan halaman admin
Yang perlu diperhatikan pada halaman admin ini adalah menu link yang ada disebelah kiri. Di sini ada beberapa pilihan menu, diantaranya data karyawan, data siswa, data kelas, data jurusan dan data materi. Setiap akan mengakses halaman data tertentu seorang
administrator harus menekan menu link tersebut. Untuk lebih jelasnya perhatikan gambar 5.3 berikut:
Gambar 5.3 tampilan pilihan menu link.
HALAMAN DATA KARYAWAN
Halaman ini digunakan untuk mengakses dan menampilkan data karyawan yang ada dalam database. Pada program halaman ini tidak berdiri sendiri, namun akan dipanggil dari file lain yaitu file admin.
Menu untuk melihat data karyawan
Menu untuk melihat data siswa Menu untuk melihat
data kelas Menu untuk melihat
data jurusan
Menu untuk melihat data materi
Halaman data karyawan diberi nama karyawan.php, akan muncul apabila dipanggil menggunakan menu link yang ada pada halaman atau file admin.php dengan alamat / nilai admin.php?menu=karyawan.
Berikut adalah script yang digunakan untuk membaca dan menampilkan data karyawan:
<?
include"../sambung.php"; if($act=="edit"){
$data1=mysql_query("select * from karyawan where id='$id_data'");
$d=mysql_fetch_array($data1); }
if(!isset($act)){
$data=mysql_query("select id from karyawan order by id desc limit 1"); $userbaru=mysql_fetch_array($data); $baru=101+$userbaru[0]; $userid="KAR-$baru"; }else{ $userid="$d[userid]"; } ?>
<table border="1" width="98%" cellspacing="0" cellpadding="0" id="table4">
<tr>
<td align="center" bgcolor="#93CDF5" colspan="2">Tambah Data Karyawan</td></tr><form method="POST"
action="proses_tambah.php">
<tr><td width="25%"><p style="margin-left: 5px; margin-right: 5px">
<font size="2">Nama</font></td>
<td width="74%"><input type="text" name="nama" size="73" style="color: #000080; font-size: 10pt; font-family: Arial; border: 1px solid #FFFFFF; left: 4px; right: 4px; padding-top: 1px; padding-bottom: 1px" value="<?=$d[nama]?>"></td> </tr>
<tr>
<td width="25%">
<p style="margin-left: 5px; margin-right: 5px"><font size="2">Alamat</font></td><td width="74%">
<input type="text" name="alamat" size="73" style="color: #000080; font-size: 10pt; font-family: Arial; border: 1px solid #FFFFFF; padding-left: 4px; padding-right: 4px; padding-top: 1px; padding-bottom: 1px" value="<?=$d[alamat]?>"></td>
</tr>
<tr><td width="25%"><p style="margin-left: 5px; margin-right: 5px">
<font size="2">Tempat tanggal lahir</font></td><td width="74%"> <input type="text" name="ttl" size="73" style="color: #000080; font-size: 10pt; font-family: Arial; border: 1px solid #FFFFFF; left: 4px; right: 4px; top: 1px; padding-bottom: 1px" value="<?=$d[ttl]?>"></td>
</tr>
<tr><td width="25%">
<p style="margin-left: 5px; margin-right: 5px"> <font size="2">Agama</font></td><td width="74%">
<input type="text" name="agama" size="73" style="color: #000080; font-size: 10pt; font-family: Arial; border: 1px solid #FFFFFF; padding-left: 4px; padding-right: 4px; padding-top: 1px; padding-bottom: 1px" value="<?=$d[agama]?>"></td>
</tr>
<tr><td width="25%"><p style="margin-left: 5px; margin-right: 5px">
<font size="2">Nomor telepon / hp</font></td>
<td width="74%"><input type="text" name="telepon" size="73" style="color: #000080; font-size: 10pt; font-family: Arial; border: 1px solid #FFFFFF; left: 4px; right: 4px; padding-top: 1px; padding-bottom: 1px" value="<?=$d[telepon]?>"></td> </tr>
<tr><td width="25%"><p style="margin-left: 5px; margin-right: 5px">
<font size="2">Pendidikan terakhir</font></td>
<td width="74%"><input type="text" name="pendidikan" size="73" style="color: #000080; font-size: 10pt; font-family: Arial; border: 1px solid #FFFFFF; left: 4px; right: 4px;
padding-top: 1px; padding-bottom: 1px"
value="<?=$d[pendidikan]?>"></td> </tr>
<tr><td width="25%">
<p style="margin-left: 5px; margin-right: 5px">
<font size="2">Status perkawinan</font></td><td width="74%"> <input type="text" name="perkawinan" size="73" style="color: #000080; font-size: 10pt; font-family: Arial; border: 1px solid #FFFFFF; padding-left: 4px; padding-right: 4px; padding-top: 1px; padding-bottom: 1px" value="<?=$d[perkawinan]?>"></td></tr> <tr><td width="25%">
<p style="margin-left: 5px; margin-right: 5px"><font
size="2">Status jabatan</font></td><td width="74%"><input type="text" name="stt_jabatan" size="73" style="color: #000080; font-size: 10pt; font-family: Arial; border: 1px solid #FFFFFF; left: 4px; right: 4px; top: 1px; padding-bottom: 1px" value="<?=$d[stt_jabatan]?>"></td></tr>
<tr>
<td width="25%"><p style="margin-left: 5px; margin-right: 5px"> <font size="2">Jabatan</font></td><td width="74%">
<input type="text" name="jabatan" size="73" style="color: #000080; font-size: 10pt; font-family: Arial; border: 1px solid #FFFFFF; padding-left: 4px; padding-right: 4px; padding-top: 1px; padding-bottom: 1px" value="<?=$d[jabatan]?>"></td></tr>
<tr><td width="25%"><p style="margin-left: 5px; margin-right: 5px">
<font size="2">Mulai kerja</font></td><td width="74%"> <?
if($act=="edit"){
$mulai=date("j / n / Y",$d[mulai]); }
?>
<input type="text" name="mulai" size="30" style="color: #000080; font-size: 10pt; font-family: Arial; border: 1px solid #FFFFFF; left: 4px; right: 4px; top: 1px; padding-bottom: 1px" value="<?=$mulai?>">
<font size="2">Format <b>dd/mm/yyyy</b></font></td> </tr>
<tr><td width="25%"><p style="margin-left: 5px; margin-right: 5px">
<? if($act=="edit"){ $now=time(); $dl=date("d m Y",$d[mulai]); $sk=date("d m Y",$now); $sekarang=explode(" ",$sk); $dulu=explode(" ",$dl); $hari=$sekarang[0]-$dulu[0]; $bulan=$sekarang[1]-$dulu[1]; $tahun=$sekarang[2]-$dulu[2]; if($sekarang[0]<$dulu[0]){ $hari+=30; $bulan+=11; $tahun-=1; } if($sekarang[1]<$dulu[1]){ $hari+=30; $bulan+=11; $tahun-=1; } if($hari>=30){ $hari=$hari-30; $bulan+=1; } if($bulan>=12){
$bulan=$bulan-12; $tahun+=1;
}
echo"<td width=\"74%\"> <b>$tahun</b> tahun <b>$bulan</b> bulan <b>$hari</b> hari.</font>";
}
?></td></tr>
<tr><td width="25%"> </td><td width="74%"> </td></tr>
<tr><td width="25%"><p style="margin-left: 5px; margin-right: 5px">
<font size="2">User ID</font></td><td width="74%">
<input type="hidden" name="userid" size="24" style="color: #000080; font-size: 10pt; font-family: Arial; border: 1px solid #FFFFFF; padding-left: 4px; padding-right: 4px; padding-top: 1px; padding-bottom: 1px" value="<?=$userid?>">
<font size="2"><b><?=$userid?></b></font></td> </tr>
<tr><td width="25%"><p style="margin-left: 5px; margin-right: 5px">
<font size="2">Password</font></td><td width="74%">
<input type="text" name="password" size="24" style="color: #000080; font-size: 10pt; font-family: Arial; border: 1px solid #FFFFFF; padding-left: 4px; padding-right: 4px; padding-top: 1px; padding-bottom: 1px" value="<?=$d[password]?>"></td></tr> <tr><td width="25%"> </td><td width="74%">
</td></tr>
<tr><td width="25%"> </td><td width="74%"> <?
if($act!=="edit"){ ?>
<input type="submit" value="TAMBAH" name="tambah" style="font-family: Arial; color: #000080">
<?}else{?>
<input type="submit" value=" UBAH " name="ubah" style="font-family: Arial; color: #000080">
<input type="submit" value=" HAPUS " name="hapus" style="font-family: Arial; color: #000080">
<?}?></td></tr>
<input type="hidden" name="id_data" value="<?=$d[id]?>"> <input type="hidden" name="menu" value="<?=$menu?>"> </form></table>
<p style="margin-top: 1px; margin-bottom: 1px"> </p> <table border="1" width="98%" cellspacing="0" cellpadding="0" id="table5">
<tr><td align="center" bgcolor="#93CDF5" colspan="3"> Data Karyawan</td></tr>
<tr><td width="31%" bgcolor="#FBA53F"><p style="margin-left: 5px; margin-right: 5px"><font size="2">Nama</font></td><td width="25%" bgcolor="#FBA53F"><p style="margin-left: 5px; margin-right: 5px"> <font size="2">Jabatan</font></td> <td width="43%" bgcolor="#FBA53F"> <p style="margin-left: 5px; margin-right: 5px"> <font size="2">Alamat</font></td> </tr> <?
$total=0;
$data2=mysql_query("select * from karyawan order by nama"); while($data=mysql_fetch_array($data2)){ echo"<tr><td width=\"31%\"> <p style=\"margin-left: 5px; margin-right: 5px\"> <font size=\"2\"> <a href=\"admin.php?menu=karyawan&act=edit& id_data=",$data[id],"\"> ",$data[nama],"</font></td>
<td width=\"25%\"><p style=\"margin-left: 5px; margin-right: 5px\"> <font size=\"2\">",$data[jabatan],"</font></td>
<td width=\"43%\"><p style=\"margin-left: 5px; margin-right: 5px\"> <font size=\"2\">",$data[alamat],"</font></td>
</tr>"; $total++;