Cara Membuat Aplikasi Data Karyawan dengan PHP

.

Isi Artikel

Bagikan Artikel Ini :

Cara Membuat Aplikasi Data Karyawan dengan PHP
Isi Artikel

Dalam era digital ini, manajemen data karyawan menjadi suatu hal yang krusial bagi perusahaan untuk memastikan kelancaran operasional dan pengambilan keputusan strategis.ย 

Salah satu cara efektif untuk mengelola informasi karyawan adalah dengan membuat aplikasi khusus yang memanfaatkan kekuatan bahasa pemrograman PHP.

Cara membuat aplikasi data karyawan dengan PHP melibatkan beberapa script yang memungkinkan Anda untuk menambahkan beberapa fitur penting yang mendukung proses pengelolaan data itu sendiri.

Selengkapnya bagaimana cara membuat aplikasi data karyawan dari PHP bisa Anda lihat dalam artikel LinovHR berikut ini!

Apa Itu PHP?

PHP atau Hypertext Preprocessor adalah bahasa penulisan skrip open-source yang luas digunakan dalam pengembangan website, terutama pada komunikasi sisi server.ย 

Bahasa pemrograman satu ini sering digunakan berdampingan dengan JavaScript dan Python, walaupun lebih fokus pada sisi server.

Dengan peran utamanya dalam memproses permintaan server, PHP memungkinkan penyajian konten yang dinamis kepada pengguna.ย 

Sebagai bahasa penulisan skrip, PHP digunakan untuk mengotomatiskan tugas-tugas pada website, seperti validasi formulir untuk memastikan kolom terisi sebelum pengiriman data ke server, memberikan pesan peringatan jika diperlukan.ย 

Kemampuannya yang fleksibel membuat PHP menjadi pilihan yang populer dalam pengembangan website dinamis dan responsif.

Fitur Penting dalam PHP untuk Membuat Aplikasi Data Karyawan

Fitur Penting dalam PHP untuk Membuat Aplikasi Data Karyawan
Fitur Penting PHP

Dalam konteks pembuatan aplikasi data karyawan, PHP memungkinkan Anda untuk memiliki aplikasi dengan dukungan fitur yang mumpuni.

Mulai dari fitur penyimpanan data, mencetaknya sampai fitur untuk melakukan validasi data. Berikut adalah penjelasan lengkapnya:

1. Create (Menyimpan Data)

Fitur ini memungkinkan pengguna untuk menyimpan data karyawan ke dalam database.

PHP memiliki fungsi-fungsi pengelolaan database seperti MySQLi atau PDO yang memudahkan pengembang untuk menyusun dan menjalankan pernyataan SQL untuk menyimpan data ke dalam tabel karyawan.

2. Read (Menampilkan Data)

Fitur kedua yang bisa Anda kembangkan dengan PHP adalah menampilkan data dari database.

Fungsi MySQLi digunakan untuk mengambil data dari tabel dan menampilkannya sesuai kebutuhan, misalnya dalam bentuk tabel atau formulir.

3. Update (Mengubah Data)

Dengan fitur ini, skrip PHP memungkinkan pengguna untuk mengubah data karyawan yang sudah tersimpan di database.

Pembaruan data dapat dilakukan melalui formulir pengeditan yang menggunakan pernyataan SQL UPDATE untuk memperbarui catatan yang ada.

4. Delete (Menghapus Data)

Fitur penghapusan data memungkinkan aplikasi untuk menghapus catatan karyawan yang tidak diperlukan.

Anda bisa menggunakan skrip PHP dapat digunakan untuk membuat fungsi yang menggunakan pernyataan SQL DELETE untuk menghapus data dari tabel.

5. Upload File

Dalam aplikasi data karyawan, fitur ini memungkinkan pengguna untuk mengunggah file seperti foto profil.

PHP menyediakan fungsi untuk mengelola proses pengunggahan file, memeriksa tipe file, dan menyimpannya di lokasi yang ditentukan.

6. Cetak PDF

Penggunaan PHP untuk membuat dan mencetak file PDF mempermudah pembuatan laporan atau dokumen yang berkaitan dengan data karyawan.

Library seperti TCPDF atau FPDF dapat digunakan untuk menghasilkan dokumen PDF yang sesuai.

7. Export Excel

Fitur ini memungkinkan pengguna untuk mengekspor data karyawan ke dalam format Excel.

Library PHPExcel atau PhpSpreadsheet dapat digunakan untuk mempermudah pembuatan file Excel yang berisi data karyawan.

8. JQuery DataTables Server-side Processing

Pemanfaatan DataTables dengan server-side processing menggunakan PHP memungkinkan tampilan data yang responsif dan efisien.

Hal ini dapat meningkatkan pengalaman pengguna dalam menavigasi dan mengelola data karyawan.

9. CSS Bootstrap 4

Menggunakan Bootstrap 4 memungkinkan pengembang untuk dengan cepat dan mudah mendesain antarmuka pengguna yang responsif dan menarik untuk aplikasi data karyawan.

10. Validasi Form Input

Fitur validasi form input di PHP membantu memastikan bahwa data yang dimasukkan oleh pengguna sesuai dengan format yang diharapkan, mengurangi risiko kesalahan input dan meningkatkan kualitas data.

11. Keamanan Dasar untuk Mencegah SQL Injection

Melalui penggunaan parameterized queries atau prepared statements, PHP dapat memberikan tingkat keamanan dasar untuk mencegah serangan SQL injection yang dapat merugikan integritas data karyawan.

Dengan menggabungkan fitur-fitur ini, pengembang dapat menciptakan aplikasi data karyawan yang efisien, aman, dan memenuhi kebutuhan pengguna dengan baik.

Baca Juga: Cara Membuat Aplikasi Absen dengan Ms Access

Cara Membuat Aplikasi Data Karyawan dengan PHP

Sebelum memulai pembuatan aplikasi penyimpanan data pegawai berbasis web menggunakan PHP, pastikan bahwa Anda telah menginstal aplikasi web server seperti XAMPP.

1. Tabel Data Pegawai

Setelah berhasil menginstal XAMPP, langkah selanjutnya adalah membuat database dan tabel untuk menyimpan data pegawai. Contohnya bisa Anda lihat seperti gambar berikut ini:

struktur tabel data pegawai
Struktur tabel data pegawai

Berikut adalah struktur tabel yang dapat Anda buat menggunakan query SQL:

— phpMyAdmin SQL Dump
— version 4.5.2
— http://www.phpmyadmin.net
โ€“
— Host: localhost
— Generation Time: Jun 21, 2016 at 02:25
— Server version: 10.1.9-MariaDB
— PHP Version: 5.5.30

SET SQL_MODE = “NO_AUTO_VALUE_ON_ZERO”;
SET time_zone = “+00:00”;

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;

โ€“
— Database: `php`
โ€“

— ——————————————————–
โ€“
— Table structure for table `user`
โ€“

CREATE TABLE `user` (
ย  `id` int(11) NOT NULL,
ย  `username` varchar(32) NOT NULL,
ย  `password` varchar(32) NOT NULL,
ย  `nama` varchar(32) NOT NULL,
ย  `email` varchar(32) NOT NULL,
ย  `level` int(11) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

โ€“
— Dumping data for table `user`
โ€“

INSERT INTO `user` (`id`, `username`, `password`, `nama`, `email`, `level`) VALUES
(1, ‘admin’, ‘21232f297a57a5a743894a0e4a801fc3’, ‘Administrator’, ‘ad***@ad***.com‘, 1),
(2, ‘admin2’, ‘21232f297a57a5a743894a0e4a801fc3’, ‘Administrator’, ‘ad*******@ge**.com‘, 1);

โ€“
— Indexes for dumped tables
โ€“

โ€“
— Indexes for table `user`
โ€“
ALTER TABLE `user`
ย  ADD PRIMARY KEY (`id`);

โ€“
— AUTO_INCREMENT for dumped tables
โ€“

โ€“
— AUTO_INCREMENT for table `user`
โ€“
ALTER TABLE `user`
ย  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=3;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

2. Tabel User

Langkah kedua yang perlu Anda lakukan adalah membuat tabel baru dengan nama user dengan susunan atau struktur tabel seperti gambar di bawah ini:

struktur tabel user
struktur tabel user

Anda bisa menjalankan query seperti di bawah ini untuk membuat tabel yang isinya adalah username dan password.

— phpMyAdmin SQL Dump

— version 4.5.2

— http://www.phpmyadmin.net

— Host: localhost

— Generation Time: Jun 21, 2016 at 02:25ย 

— Server version: 10.1.9-MariaDB

— PHP Version: 5.5.30

SET SQL_MODE = “NO_AUTO_VALUE_ON_ZERO”;

SET time_zone = “+00:00”;

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;

/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;

/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;

/*!40101 SET NAMES utf8mb4 */;

— Database: `php`

— ——————————————————–

— Table structure for table `user`

CREATE TABLE `user` (

ย ย `id` int(11) NOT NULL,

ย ย `username` varchar(32) NOT NULL,

ย ย `password` varchar(32) NOT NULL,

ย ย `nama` varchar(32) NOT NULL,

ย ย `email` varchar(32) NOT NULL,

ย ย `level` int(11) NOT NULL

) ENGINE=MyISAM DEFAULT CHARSET=utf8;

— Dumping data for table `user`

INSERT INTO `user` (`id`, `username`, `password`, `nama`, `email`, `level`) VALUES

(1, ‘admin’, ‘21232f297a57a5a743894a0e4a801fc3’, ‘Administrator’, ‘ad***@ad***.com‘, 1),

(2, ‘admin2’, ‘21232f297a57a5a743894a0e4a801fc3’, ‘Administrator’, ‘ad*******@ge**.com‘, 1);

— Indexes for dumped tables

— Indexes for table `user`

ALTER TABLE `user`

ย ย ADD PRIMARY KEY (`id`);

— AUTO_INCREMENT for dumped tables

— AUTO_INCREMENT for table `user`

ALTER TABLE `user`

ย ย MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=3;

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;

/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;

/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

Setelah berhasil membuat dua tabel di atas, selanjutnya Anda perlu membuat beberapa script yang akan digunakan untuk input data pegawai, menampilkan data pegawai, halaman login, dan beberapa script lainnya.

Di sini ada sekitar 11 script yang harus Anda buat untuk membuat aplikasi penyimpanan data karyawan.

1. koneksi.php

File ini digunakan untuk melakukan koneksi ke server/database MySQL.

<?php

include (‘sesi.php’);

$host = “localhost”;

$user = “root”;

$password = “”;

$db = “nama_db”;

$koneksi=@mysql_connect($host,$user,$password);

if(!$koneksi){

ย ย ย ย echo “Gagal melakukan koneksi <br/>:”.mysql_error();

ย ย ย ย exit();

ย ย ย ย 

}

$pilihdb=@mysql_select_db($db,$koneksi);

if(!$pilihdb){

ย ย ย ย exit (“Gagal melakukan hubungan dengan database<br> Kesalahan :”.mysql_error());

}

?>

2. index.php

Script index.php ini menjadi halaman utama dari aplikasi. Anda bisa menggunakan source code berikut ini:

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>

<html xmlns=”http://www.w3.org/1999/xhtml”>

<head>

<title>ROOT93.co.id | Aplikasi penyimpan data pegawai</title>

<meta http-equiv=”Content-Type” content=”text/html; charset=iso-8859-1″ />

<link rel=”stylesheet” href=”style.css” type=”text/css” />

</head>

<body>

ย ย ย ย <div id=”navcontainer”>

ย ย ย ย ย ย <ul id=”navlist”>

ย ย ย ย ย ย ย ย <li><a href=”index.php”>Beranda</a></li>

<li><a href=”index.php?page=masukandata”>Masukan Data Pegawai</a></li>

<li><a href=”lihat_data_pegawai.php”>Lihat Data Pegawai</a></li>

<li><a href=”index.php?page=login”>Login</a>

ย ย ย ย ย ย </ul>

ย ย ย ย </div>

ย ย </div>

ย ย <div id=”content”>

ย ย <?php

$page = (isset($_GET[‘page’]))? $_GET[‘page’] : “main”;

switch ($page) {

case ‘masukandata’ : include “input_data_pegawai.php”; break;

case’login’:include”login.php”;break;

case ‘main’ :

default : include ‘catatan.php’;

}

?>

</body>

</html>

3. input_data_pegawai.php

Berikutnya adalah membuat halaman yang akan digunakan untuk menginput data pegawai/karyawan. Gunakanlah script berikut ini:

<?phpย  include(‘sesi.php’);

?>

<!DOCTYPE HTML>

<html>

<head>

ย <meta http-equiv=”content-type” content=”text/html” />

ย <meta name=”author” content=”ROOT93″ />

ย <title>Input Data Pegawai</title>

ย ย 

ย ย ย ย <style type=”text/css”>

<!–

.style3 {font-family: Arial, Helvetica, sans-serif; font-size: 10; }

.style4 {font-size: 12}

–>

ย ย ย ย </style>

</head>

<body>

<p class=”style3″> Hai Kamu Login Sebagai <?php echo $_SESSION[‘admin’];?> / <a href=”logout.php”>Keluar</a></p>

<form id=”butamu” name=”butamu” method=”post” action=”kirim.php”>

<table width=”600″ border=”0″ align=”center” cellpadding=”8px”>

ย ย <tr>

ย ย ย ย <td width=”150″ valign=”middle” bgcolor=”#99CCFF”><div align=”left” class=”style3″>Nama </div></td>

ย <td>:</td>

ย ย ย ย <td bgcolor=”#9999FF”><input type=”text” name=”nama” id=”nama” size=”45″ required=””/></td>

ย ย </tr>

ย ย <tr>

ย ย ย ย <td valign=”middle” bgcolor=”#99CCFF”><div align=”left” class=”style3″>Jabatanย  </div></td>

ย <td>:</td>

ย ย ย ย <td bgcolor=”#9999FF”><input type=”text” name=”jabatan” id=”jabatan” size=”45″ required=”” /></td>

ย ย </tr>

ย ย <tr>

ย ย ย ย <td valign=”middle” bgcolor=”#99CCFF”><div align=”left” class=”style3″>Alamat</div></td>

ย <td>:</td>

ย ย ย ย <td bgcolor=”#9999FF”><input type=”text” name=”alamat” id=”alamat” size=”45″ required=”” /></td>

ย ย </tr>

ย ย <tr>

ย ย ย ย <td valign=”middle” bgcolor=”#99CCFF”><div align=”left” class=”style3″>No.Tlp/HP</div></td>

ย <td>:</td>

ย ย ย ย <td bgcolor=”#9999FF”><input type=”text” name=”no_tlp” id=”no_tlp” size=”45″ required=”” /></td>

ย ย </tr>

ย ย <tr>

ย ย ย ย <td valign=”middle” bgcolor=”#99CCFF”><div align=”left” class=”style3″>Nama Suami/Istri</div></td>

ย <td>:</td>

ย ย ย ย <td bgcolor=”#9999FF”><input type=”text” name=”nama_istri” id=”nama_istri” size=”45″ required=””/></td>

ย ย </tr>

ย ย <tr>

ย ย ย ย <td valign=”middle” bgcolor=”#99CCFF”><div align=”left” class=”style3″>Nama Anak </div></td>

ย <td>:</td>

ย ย ย ย <td bgcolor=”#9999FF”><input type=”text” name=”nama_anak” id=”nama_anak” size=”45″ required=””/></td>

ย ย </tr>

ย ย <tr>

ย ย ย ย <td valign=”middle”><span class=”style4″></span></td>

ย <td></td>

ย ย ย ย <td><input type=”submit” name=”kirim” value=”kirim” id=”kirim” />

ย ย ย ย <input type=”reset” name=”batal” id=”batal” value=”Batal” />

ย <input type=”hidden” name=”asal” id=”asal” value=”<?php echo $_SERVER[‘PHP_SELF’];?>” /></td>

ย ย </tr>

</table>

<br>

ย </form>

4. kirim.php:

File ini bertugas untuk mengirimkan nilai input data pegawai ke dalam tabel database.

<?php

require_once(‘koneksi.php’);

//melakukan penyimpanan data tanpa melakukan validasi terlebih dahulu

//langsung eksekusi kiriman

$arahkan=”index.php”; //menyimpan variabel yang mengarah ke file index

$perintah=sprintf(“INSERT INTO data_pegawai

VALUES (‘nul’,’%s’,’%s’,’%s’,’%s’,’%s’,’%s’)”,

$_POST[‘nama’],

$_POST[‘alamat’],

$_POST[‘jabatan’],

$_POST[‘no_tlp’],

$_POST[‘nama_istri’],

$_POST[‘nama_anak’]);

$aksi=@mysql_query($perintah,$koneksi);ย 

//menyimpan variabel $perintah dengan parameter untuk memasukan data

if(!$perintah){

echo “Gagal Konek:”.mysql_error();

$arahkan=”index.php”;

//jika tidak bisa koneksi arahkan ke index

}

else{

ย echo ‘<script language=”javascript”>alert(“Data Pegawai disimpan!”);ย 

ย ย ย ย ย ย ย ย ย ย ย document.location=”index.php?page=masukandata”;</script>’;

}

?>

5. lihat_data_pegawai.php

File ini berfungsi untuk melihat atau menampilkan data pegawai yang sudah tersimpan dalam tabel database.

<?php

require_once(‘koneksi.php’);

$awal=0;

$byk_tampil=10;

if(isset($_GET[‘hal’])){

ย ย ย ย $awal=$_GET[‘hal’]*$byk_tampil;

}

$perintah=”SELECT*FROM data_pegawai ORDER BY id DESC”;

$limit=”limit $awal,$byk_tampil”;

$per_limit=sprintf(“%s %s”,$perintah,$limit);

$rsalpegawai=@mysql_query($perintah,$koneksi);

$rspegawai=@mysql_query($per_limit,$koneksi);

$baris=mysql_num_rows($rsalpegawai);

?>

<html>

<head>

<title>Menampilkan Data Pegawai</title>

<style type=”text/css”>

<!–

.style1 {

ย color: #FFFFFF;

ย font-weight: bold;

ย font-family: Arial, Helvetica, sans-serif;

ย font-size: 10;

}

.style3 {color: #FFFFFF;ย 

ย ย font-family: Arial, Helvetica, sans-serif;ย 

ย ย font-size: 12;

ย ย font-weight: bold;

ย ย }

–>

.style4 {

ย color:#0000FF;ย 

ย font:Arial, Helvetica, sans-serif;

ย font-weight: bold;

ย }

.style7 {

ย font-family: Arial, Helvetica,ย 

ย sans-serif; font-size: 12px;ย 

ย }

</style>

<link rel=”stylesheet” href=”style.css” type=”text/css” />ย 

</head>

<body>

ย <div id=”navcontainer”>

ย ย ย ย ย ย <ul id=”navlist”>

ย ย ย ย ย ย ย ย <li><a href=”index.php”>Beranda</a></li>

<li><a href=”index.php?page=masukandata”>Masukan Data Pegawai</a></li>

<li><a href=”index.php?page=logout”>Keluar</a>

ย ย ย ย ย ย </ul>

ย ย ย ย </div>

ย ย </div>

ย ย <div align=”center”>

ย ย <p align=”center” class=”style4″>Menampilkan Data Pegawai Dari Tabel</p>

ย 

<table width=”723″ height=”73″ bordercolor=”#000000″ย 

cellpadding=”2″ cellspacing=”1″ border=”0″>

ย ย <tr>

ย ย ย ย <td width=”33″ bgcolor=”#FF0000″><div align=”center” class=”style3″>

ย ย ย ย ย ย <div align=”center”>No</div>

ย ย ย ย </div></td>

ย ย ย ย <td width=”90″ bgcolor=”#FF0000″><div align=”center” class=”style3″>NAMA</div></td>

ย ย ย ย <td width=”93″ bgcolor=”#FF0000″><div align=”center” class=”style3″>JABATAN</div></td>

ย ย ย ย <td width=”100″ bgcolor=”#FF0000″><div align=”center” class=”style3″>ALAMAT</div></td>

ย ย ย ย <td width=”92″ bgcolor=”#FF0000″><div align=”center” class=”style3″>No.TLP</div></td>

ย ย ย ย <td width=”93″ bgcolor=”#FF0000″><div align=”center” class=”style3″>Nama Suami/Istri </div></td>

ย ย ย ย <td width=”103″ bgcolor=”#FF0000″><div align=”center” class=”style3″>Nama Anak </div></td>

ย ย </tr>

<?php

$no=$awal+1;

while($data=mysql_fetch_array($rspegawai)){

ย ย ย ย ?>

ย ย <tr class=”<?php echo $no%2==0?tdc:tdc2?>”>

ย ย ย ย <td height=”42″ bgcolor=”#99FFFF”><div align=”center” class=”style7″><?php echo $no;?></div></td>

ย ย ย ย <td align=”left” bgcolor=”#99FFFF” ><div align=”left” class=”style7″><?php echo $data[‘nama’];?></div></td>

ย ย ย ย <td bgcolor=”#99FFFF”><div align=”left” class=”style7″><?php echo $data[‘alamat’];?></div></td>

ย ย ย ย <td bgcolor=”#99FFFF”><div align=”left” class=”style7″><?php echo $data[‘jabatan’];?></div></td>

ย ย ย ย <td bgcolor=”#99FFFF”><div align=”left” class=”style7″><?php echo $data[‘no_tlp’];?></div></td>

ย ย ย ย <td bgcolor=”#99FFFF”><div align=”left” class=”style7″><?php echo $data[‘nama_istri’];?></div></td>

ย ย ย ย <td bgcolor=”#99FFFF”><div align=”left” class=”style7″><?php echo $data[‘nama_anak’];?></div></td>

ย ย </tr>

ย <?php $no+=1;}?>

</table>

<br/>

<center>

<?php

$ke=$_SERVER[‘PHP_SELF’];

$page=ceil($baris/10); //jumlah data dibagi 10

$pg=1;

while($pg<=$page){ //jika $pg kurang dari atau sama dengan $page

ย ย ย ย $hal=$pg-1; //maka $hal=$pg dikurangi 1

ย ย ย ย echo “<a href=\”$ke?hal=$hal\”>$pg</a>”;

ย ย ย ย $pg+=1;

}

?>

<br/>

Halaman :<?php echo “$hal dari $page”;?><br/></center>

</body>

</html>

6. login.php

Anda juga bisa membuat form login bagi user yang ingin mengakses data pegawai. Caranya dengan menggunakan source code di bawah ini:

<html>

<head>

ย <title>Login Form | Data Pegawai</title>

</head>

<body>

ย ย <form action=”login_proses.php” method=”post”>

ย <center><h2>Login Form</h2></center>

ย <table align=”center”>

ย ย <tr>

ย ย ย <td>Username</td>

ย ย ย <td>:</td>

ย ย ย <td><input type=”text” name=”username” placeholder=”Username” required /></td>

ย ย </tr>

ย ย <tr>

ย ย ย <td>Password</td>

ย ย ย <td>:</td>

ย ย ย <td><input type=”password” name=”password” placeholder=”Password” required /></td>

ย ย </tr>

ย ย <tr>

ย ย ย <td>&nbsp;</td>

ย ย ย <td>&nbsp;</td>

ย ย ย <td><input type=”submit” name=”login” value=”Login” /></td>

ย ย </tr>

ย </table>

ย </form>

ย </body>

</html>

7. login_proses.php

File ini memproses dan memvalidasi inputan dari file login.php. Jika user salah memasukkan username dan password, maka secara otomatis user akan diarahkan kembali ke halaman login.

<?php

include(‘koneksi.php’);

$cek=$_POST[‘username’];

if(isset($_POST[‘login’])){

ย $user = mysql_real_escape_string(htmlentities($_POST[‘username’]));

ย $pass = mysql_real_escape_string(htmlentities(md5($_POST[‘password’])));

ย ย 

ย $sql = mysql_query(“SELECT * FROM user WHERE username=’$user’ AND password=’$pass'”) or die(mysql_error());

ย if(mysql_num_rows($sql) == 0){

ย ย //jika nilai sama dengan nol maka berarti nilai input tidak diisi

ย 

ย ย echo ‘<script language=”javascript”>alert(“Username ‘.$cek.’ tidak ditemukan!”);

ย ย ย document.location=”index.php”;</script>’;

ย }else{

ย ย $row = mysql_fetch_assoc($sql);

ย ย if($row[‘level’] == 1){

ย ย ย //jika login dengan level 1 buat session admin

ย ย ย $_SESSION[‘admin’]=$user;

ย ย ย echo ‘<script language=”javascript”>alert(“Anda berhasil Login Admin!”);ย 

ย ย ย document.location=”index.php?page=masukandata”;</script>’;

ย ย }

ย }

}

?>

8. sesi.php

File ini berfungsi untuk mengecek session yang ada. Bila user berhasil login, session akan dibuat, dan file ini akan mengakses session yang ada. Jika tidak ada session, user akan diarahkan ke halaman login.

<?php

session_start();

ย if(!isset($_SESSION[‘admin’])){

ย echo ‘<script language=”javascript”>alert

ย (“Anda harus login terlebih dahulu!”);

ย ย document.location=”index.php?page=login”;</script>’;

}

?>

9. logout.php

File yang bertugas untuk menghapus session yang tersimpan, sehingga user akan logout dari aplikasi.

<?php

session_start();

session_destroy();

echo ‘<script language=”javascript”>alert(“Anda berhasil Logout!”);ย 

document.location=”index.php?page=login”;</script>’;

?>

10. catatan.php

File ini memberikan informasi tentang cara penggunaan aplikasi. File ini diakses sebagai halaman default dari file index.php.

<html>

<head>

<title>Ucapan Selamat Datang</title>

<style type=”text/css”>

<!–

.style1 {

ย font-family: Arial, Helvetica, sans-serif;

ย color: #000000;

ย font-weight: bold;

}

.style2 {

ย color: #000000;

ย font-family: Arial, Helvetica, sans-serif;

ย font-size: 14px;

}

.style5 {color: #FFFFFF; font-family: Arial, Helvetica, sans-serif; }

.style6 {

ย color: #FFFFFF;

ย font-style: italic;

ย font-weight: bold;

}

.style7 {font-size: 14px}

.style8 {font-family: Arial, Helvetica, sans-serif; color: #000000;}

–>

</style>

</head>

<body>

<table width=”642″ height=”53″ border=”1″ align=”center” bordercolor=”#000000″ bgcolor=”#999999″>

ย ย <tr>

ย ย ย ย <th align=”center” valign=”middle” scope=”row”><h2 align=”center” class=”style5″>Selamat Datang, Di Halaman Data Pegawai</h2>

ย ย ย ย ย ย <table width=”590″ border=”1″ cellpadding=”8″ bordercolor=”#FFFFFF” bgcolor=”#FFFF00″>

ย ย ย ย ย ย ย ย <tr>

ย ย ย ย ย ย ย ย ย ย <th width=”570″ scope=”row”>

ย ย ย ย ย ย ย ย ย ย <p align=”left” class=”style1″>1. Login terlebih dahulu</p>

ย ย ย ย ย ย ย ย ย ย <p align=”left” class=”style1″>2. Untuk memasukan data baru klik menu &quot;Masukan Data Pegawai&quot;</p>

ย ย ย ย ย ย ย ย ย ย <p align=”left” class=”style2″>3. Untuk melihat data pegawai silahkan klik meny &quot;Lihat Data Pegawai&quot;</span></p></th>

ย ย ย ย ย ย ย ย </tr>

ย ย ย ย ย ย </table>

ย ย <p align=”center” class=”style6″>ROOT93.CO.ID all rights reserved </p>ย ย 

ย ย </tr>

</table>

<p align=”center” class=”style1″>&nbsp;</p>

<p align=”center” class=”style1″>&nbsp;</p>

<p>&nbsp;</p>

</body>

</html>

11. style.css

File CSS ini berperan dalam tampilan aplikasi, dan dapat disesuaikan sesuai keinginan. Ada pun script yang digunakan adalah sebagai berikut ini:

body {

ย ย text-align: center;

ย ย margin-top:10px;

ย ย margin-bottom:10px;

ย ย color:#666666;

ย ย background-color: #ffffff;

}

A:link {

ย COLOR: #0000FF; text-decoration: none;

}

A:visited {

ย COLOR: #0000FF; text-decoration: none;

}

A:active {

ย COLOR: #0000FF; text-decoration: none;

}

A:hover {

ย COLOR: #FF0000; text-decoration: underline;

#page_wrapper {

ย ย margin-left: auto;ย 

ย ย margin-right: auto;

ย ย width: 98%;

ย ย text-align: left;

ย ย background: #FFFFFF;

ย ย border: 8px solid #FFFFFF;

}

#header_wrapper {

ย ย background: #4E7DD1 url(‘../img/menu_bg.gif’) bottom left repeat-x;

ย ย margin:0px; padding:0px;

}

#header {

ย ย height: 60px;

ย ย padding:15px;

ย ย background: url(‘../img/header_bg.gif’) top right no-repeat;

ย ย margin:0px;

}

#header h1 {

ย ย margin:0px;

ย ย font-family: verdana, arial, sans-serif;

ย ย font-size: 28px;

ย ย color:#ffffff;

ย ย letter-spacing: -1px;

}

#header h2 {

ย ย margin:0px;

ย ย font-family: verdana, arial, sans-serif;

ย ย font-size: 14px;

ย ย color:#B1C6EB;

ย ย letter-spacing: 1px;

}

#left_side {

ย ย margin-top: 10px;

ย ย float: left;

ย ย width: 160px;

ย ย background: #F1F6FE url(‘../img/side_bg.gif’) bottom left repeat-x;

}

#right_side {

ย ย margin-top: 10px;

ย ย float: right;

ย ย width: 160px;

ย ย background: #F1F6FE url(‘../img/side_bg.gif’) bottom left repeat-x;

}

#content {

ย ย margin-top: 20px;

ย ย margin-bottom: 0px;

ย ย margin-left: 180px;

ย ย margin-right: 180px;

}

#footer {

ย ย height: 50px;

ย ย background-color: #4E7DD1;

ย ย clear: both;

ย ย text-align: center;

ย ย padding-top:12px;

ย ย color: #B6CEF9;

ย ย font-family: verdana, arial, sans-serif;

ย ย font-size: 11px;

ย ย line-height: 18px;

}

#footer A:link {

ย COLOR: #FFFFFF; text-decoration: none;

}

#footer A:visited {

ย COLOR: #FFFFFF; text-decoration: none;

}

#footer A:active {

ย COLOR: #FFFFFF; text-decoration: none;

}

#footer A:hover {

ย COLOR: #FFFFFF; text-decoration: underline;

}

#left_side p, #right_side p {

ย ย margin:10px;margin-top:15px;margin-bottom:15px;

ย ย font-family: verdana, arial, sans-serif;

ย ย font-size: 11px;

ย ย line-height: 16px;

ย ย color: #333333;

}

#left_side h3, #right_side h3 {

ย ย margin-top:5px; margin-bottom:10px; margin-left:5px; margin-right:5px;

ย ย padding:4px;

ย ย font-family: verdana, arial, sans-serif;

ย ย font-size: 14px;

ย ย font-weight: bold;

ย ย line-height: 14px;

ย ย color: #FFFFFF;

ย ย border:1px solid #0F3974;

ย ย background-color: #2153AA;

}

#left_side h4, #right_side h4 {

ย ย margin-top:0px;margin-bottom:0px;margin-left:10px;

ย ย font-family: verdana, arial, sans-serif;

ย ย font-size: 12px;

ย ย font-weight: bold;

ย ย line-height: 12px;

ย ย color: #2153AA;

}

#content p {

ย ย margin-top:15px; margin-bottom: 15px;

ย ย font-family: verdana, arial, sans-serif;

ย ย font-size: 12px;

ย ย line-height: 18px;

ย ย color: #333333;

}

#content h3 {

ย ย margin-top:5px; margin-bottom: 10px;

ย ย font-family: verdana, arial, sans-serif;

ย ย font-size: 18px;

ย ย font-weight: bold;

ย ย line-height: 18px;

ย ย color: #2153AA;

}

#content h4 {

ย ย margin-top:0px;margin-bottom:0px;

ย ย font-family: verdana, arial, sans-serif;

ย ย font-size: 14px;

ย ย font-weight: bold;

ย ย line-height: 12px;

ย ย color: #2153AA;

}

#navlist

{

ย ย margin-top:1px;

ย ย margin-bottom:0px;

ย ย text-align:center;

ย ย padding: 5px 0;

ย ย margin-left: 0;

ย ย border-bottom: 1px solid #0F3974;

ย ย font: bold 14px Verdana, sans-serif;

}

#navlist li

{

ย ย list-style: none;

ย ย margin: 0;

ย ย display: inline;

}

#navlist li a

{

ย ย color: #F1F6FE;

ย ย padding: 5px 15px;

ย ย margin-left: 3px;

ย ย border: 1px solid #0F3974;

ย ย border-bottom: none;

ย ย background: #2153AA url(‘../img/tab_bg.gif’) bottom left repeat-x;

ย ย text-decoration: none;

}

#navlist li a:link { color: #F1F6FE; }

#navlist li a:visited { color: #F1F6FE; }

#navlist li a:hover

{

ย ย color: #FFFFFF;

ย ย background: #3364BB;

ย ย border-color: #0F3974;

}

#navlist li a#current

{

ย ย color: #000;

ย ย background: #FFFFFF;

ย ย border-bottom: 1px solid #FFFFFF;

}

.float_left {

ย ย float: left;

ย ย margin-right: 10px;

}

.float_right {

ย ย float: right;

ย ย margin-left: 10px;

}

.featurebox_center {

ย ย background-color: #fffff6;

ย ย margin:0px;

ย ย padding:10px;

ย ย border: 1px solid #DFE8F7;

ย ย font-family: verdana, arial, sans-serif;

ย ย font-size: 11px;

ย ย line-height: 18px;

ย ย color: #333333;

}

.featurebox_side {

ย ย background-color: #fffff6;

ย ย margin:0px;margin-left:10px;margin-right:10px;margin-bottom:15px;

ย ย padding:10px;

ย ย border: 1px solid #DFE8F7;

ย ย font-family: verdana, arial, sans-serif;

ย ย font-size: 11px;

ย ย line-height: 18px;

ย ย color: #333333;

}

input[type=submit],

input[type=reset] {

ย ย ย ย background: linear-gradient(to bottom, #FFFFFF, #E6E6E6);

ย ย ย ย border: 1px solid #999;

ย ย ย ย margin: 4px 10px;

ย ย ย ย padding: 5px;

ย ย ย ย width: 100px;

}

input[type=submit]:hover,

input[type=reset]:hover {

ย ย ย ย cursor: pointer;

}

input[type=submit]:active,

input[type=reset]:active {

ย ย ย ย background: #D4D4D4;

}

input[type=submit] {

ย ย ย ย background: linear-gradient(to bottom, #0088CC, #0044CC);

ย ย ย ย border: 1px solid #0088CC;

ย ย ย ย color: #FFF;

}

input[type=submit]:active {

ย ย ย ย background: #0044CC;

}

select:focus,

input:focus {

ย ย ย ย border-color: rgba(82, 168, 236, 0.8);

ย ย ย ย border-radius: 5px;

ย ย ย ย box-shadow: inset

ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย 0

ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย 1px 1px

ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย rgba(0, 0, 0, 0.075),

ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย 0 0 8px

ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย rgba(82, 168, 236, 0.6);

ย ย ย ย outline: 0;

}

Simpan semua file di atas dalam satu folder yang sama di dalam folder htdocs pada web server atau unggah ke web hosting.

Nantinya, tampilan aplikasi absensi akan menjadi seperti di bawah ini.

halaman login
Halaman Login
Halaman login
Jika berhasil login
Halaman data pegawai
Halaman data pegawai

Baca juga: Aplikasi Karyawan Menggunakan Codeigniter

Manajemen Data Karyawan Lebih Mudah dengan Aplikasi Data Karyawan LinovHR

Cara membuat aplikasi data karyawan dengan PHP mungkin bisa Anda gunakan untuk membuat pengelolaan data karyawan menjadi digital.

Namun, sangat disayangkan pengembangan aplikasi ini terbilang rumit dan tidak fleksibel. Selain itu, data yang Anda unggah juga belum terjamin keamanannya karena tidak ada sistem enkripsi.

Agar manajemen data karyawan lebih mudah, fleksibel, dan keamanan data terjamin Anda bisa menggunakan Aplikasi Data Karyawan LinovHR sebagai solusinya.

Aplikasi Data Karyawan LinovHR telah dilengkapi dengan beberapa fitur unggul yang membantu Anda mengelola data karyawan sesuai dengan employee lifecycle dari mereka masuk hingga resign atau pensiun.

Fitur Personnel Administration
Fitur Personnel Administration

Di dalam aplikasi juga sudah disediakan template yang bisa Anda gunakan untuk memasukkan dan mengelola data, sehingga bisa menghemat waktu Anda.

Selain itu, untuk pembaruan data pun bisa dilakukan dengan mudah karena karyawan juga dapat dilibatkan dalam pengelolaan data personal mereka dengan menggunakan ESS yang terintegrasi dengan Aplikasi Data Karyawan.

E-Learning Mobile
E-Learning Mobile

Masalah keamanan data juga Anda sudah tidak perlu ragu lagi, seluruh data akan tersimpan dengan sistem yang terenkripsi.

Penasaran dengan kemudahan pengelolaan data yang ditawarkan LinovHR? Ayo ajukan demo gratisnya sekarang!

Tentang Penulis

Picture of Benedictus Adithia
Benedictus Adithia

Seorang penulis konten SEO dengan pengalaman luas dalam menulis artikel yang dioptimalkan untuk mesin pencari. Berfokus pada strategi konten yang menarik dan informatif untuk website.

Bagikan Artikel Ini :

Related Articles

Tentang Penulis

Picture of Benedictus Adithia
Benedictus Adithia

Seorang penulis konten SEO dengan pengalaman luas dalam menulis artikel yang dioptimalkan untuk mesin pencari. Berfokus pada strategi konten yang menarik dan informatif untuk website.

Artikel Terbaru