TUGAS AKHIR
OLEH:
MIRA BELLINA
062406063
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
40
TUGAS AKHIR
Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai
gelar Ahli Madya
OLEH:
MIRA BELLINA
062406063
2009
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
41
PERSETUJUAN
Judul
Kategori
: TUGAS AKHIR
Nama
: MIRA BELLINA
NIM
: 062406063
Program Studi
Departemen
: MATEMATIKA
Fakultas
Diluluskan di
Medan,
Juni 2009
Komisi Pembimbing :
Diketahui/Disetujui oleh
Departemen Matematika FMIPA USU
Pembimbing
Drs.Sawaluddin, M.IT
NIP. 131796149
NIP. 132206398
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
42
PERNYATAAN
Saya mengakui bahwa tugas akhir ini adalah hasil kerja saya sendiri, kecuali
beberapa kutipan dan ringkasan yang masing masing disebutkan sumbernya.
Medan,
Juni 2009
MIRA BELLINA
062406063
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
43
PENGHARGAAN
Puji Syukur Penulis ucapkan ke hadirat Allah SWT , yang masih memberikan
kesempatan dan kesehatan sehingga akhirnya Tugas Akhir dapat diselesaikan dalam
waktu yang telah ditetapkan.
Penulisan Tugas Akhir ini merupakan salah satu syarat bagi setiap mahasiswa
guna menyelesaikan Program Studi D3 Ilmu Komputer Fakultas Matematika Dan
Ilmu Pengetahuan Alam Universitas Sumatera Utara.
1. Bapak Prof. Dr. Eddy Marlianto, M.Sc selaku Dekan Fakultas Matematika
Dan Ilmu Pengetahuan Alam Universitas Sumatera Utara.
2. Bapak Dr. Saib Suwilo, M.Sc selalku ketua jurusan Matematika Fakultas
Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara.
3. Bapak Drs.Sawaluddin, M.IT selaku dosen pembimbing dalam penyusunan
Tugas Akhir
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
44
Penulis menyadari sepenuhnya bahwa penulisan Tugas Akhir ini masih jauh
dari kesempurnaan yang dikarenakan pengetahuan dan pengalaman yang dimiliki
oleh penulis masih sangat terbatas yang masih perlu diperbaiki, baik dari segi
penyajian, bentuk maupun isinya.
Akhirul kalam kepada Allah Subahana Wataala penulis berserah diri, karena
hanya pada-Nyalah segala kebenaran dan kesempurnaan itu berada. Akhir kata penuli
berharap semoga Tugas Akhir ini dapat berguna bagi semua pihak yang membacanya
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
45
ABSTRAK
Tugas akhir ini merancang suatu aplikasi Sistem Informasi Absensi Pegawai CV.
Flashindomedia Medan Berbasis Web yang bermanfaat untuk menyediakan informasi
yang baik dengan cepat dan mudah, juga melalui kajian ini diharapkan dapat memberi
kemudahan kepada karyawan CV. Flashindomedia Medan dalam melakukan
pengisian absensi. Perancangan sistem dalam merancang Sistem Informasi Absensi
Pegawai CV. Flashindomedia Medan Berbasis Web ini dikembangkan dengan
menggunakan perangkat lunak Macromedia Dreamweaver 8, Adobephotoshop, dan
XAMPP. Dengan menggunakan XAMPP paket-paket aplikasi yang kita perlukan
dalam merancang sebuah situs yang baik seperti Apache Web Server, PHP dan
MySQL telah tersedia. Sistem Informasi Absensi Pegawai CV. Flashindomedia
Medan ini meliputi pemakaian situs oleh karyawan Flashindomedia seperti daftar
absensi harian. Hal tersebut digunakan untuk menampung data-data yang diperlukan
dalam mempelancar sistem informasi.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
46
DAFTAR ISI
PERSETUJUAN
ii
PERNYATAAN
iii
PENGHARGAAN
iv
ABSTRAK
vi
DAFTAR ISI
vii
DAFTAR TABEL
DAFTAR GAMBAR
xi
BAB 1 PENDAHULUAN
11
12
2.2.2.1
13
2.2.2.2
13
13
14
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
15
15
15
47
16
20
21
23
24
24
24
2.5.1.2 PHP 3
25
2.5.1.3 PHP 4
26
2.5.1.4 PHP 5
27
27
30
33
33
34
2.7 MySQL
34
35
36
36
37
38
38
38
39
39
42
4.3 Normalisasi
48
49
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
48
52
52
52
53
5.3.1 Hardware
53
5.3.2 Software
53
5.3.3 Brainware
56
57
57
58
59
59
60
61
62
64
6.1 Kesimpulan
64
6.2 Saran
65
DAFTAR PUSTAKA
LAMPIRAN
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
49
DAFTAR TABEL
Halaman
Tabel 2.1 Daftar Database-Database yang didukung oleh PHP
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
30
50
DAFTAR GAMBAR
Halaman
Gambar 2.1 Dokumen HTML ditampilkan di Browser Mozila
20
29
39
40
41
42
43
44
45
46
47
47
54
55
56
57
58
59
60
61
62
63
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
51
BAB I
PENDAHULUAN
Teknologi informasi pada saat ini telah berkembang sangat pesat sehingga
mempunyai dampak dalam meningkatkan efektifitas dan keefisienan dalam
melakukan setiap pekerjaan. Mungkin suatu kenaifan kalau berbicara tentang
teknologi informasi dan komunikasi, tanpa membicarakan suatu benda yang bernama
komputer. Komputer merupakan suatu media elektronik yang memegang peranan
yang sangat penting dalam perkembangan yang terjadi saat ini.
Komputer bukan lagi barang mewah atau sesuatu yang langka untuk dimiliki
oleh seseorang seperti awal kedatangannya, tetapi sudah menjadi suatu keperluan
bahkan kebutuhan yang sangat bersifat umum dan fital, terutama bagi perusahaan dan
badan instansi baik milik pemerintah maupun swasta. Penggunaan komputer telah
berkembang menjadi sebuah sarana komunikasi dan edukasi yang paling cepat saat
ini. Sehingga pengunaannya menjadi penting di setiap sendi-sendi kehidupan
masyarakat, termasuk dalam proses perolehan informasi pada suatu perusahaan.
52
berkembangnya teknologi internet, maka aplikasi web atau yang sering juga disebut
dengan perangkat lunak berbasis web ini baik dari segi penggunaan, ukuran, dan
bahasa pemrograman yang digunakan serta kompleksitasnya juga ikut berkembang.
Aplikasi ini telah banyak yang bersifat dinamis dan task oriented.
buat
semua
user
dan
programmer
untuk
menggunakan
dan
mengembangkannya.
Selain itu demi mendukung berkembangnya aplikasi web yang semakin besar,
rumit, dan kompleks, maka dikembangkanlah kemampuan object oriented
programming dari PHP. Keuntungan yang dapat diperoleh dari kemampuan object
oriented programming dari PHP, yaitu kemudahan untuk mengolah kompleksitas
yang dibuat serta kemudahan untuk melakukan perubahan dan pengembangan dari
aplikasi tersebut.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
53
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
54
b. Bagaimana informasi pada website dapat di update dengan mudah pada waktu
yang diinginkan sesuai dengan tujuan aplikasi ini, yaitu website yang dinamis.
Agar pembahasan masalah tidak menyimpang dari tujuan penelitian, maka berikut
adalah beberapa batasan yang perlu dibuat, yaitu:
a. Website ini akan menampilkan halaman-halaman web yang statis maupun
dinamis mengenai sistem informasi absensi pegawai CV. Flashindomedia
Medan, seperti: data perusahaan, data pegawai, data absensi pegawai.
b. Aplikasi ini dibangun dibawah sistem operasi Windows XP Professional
Services Pack 2.
c. Website yang dibangun mendukung bahasa pemograman web yang lainnya
seperti: HTML (Hypertext Markup Language), CSS (Cascading Style Sheets),
dan Javascript.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
55
akurat.
Dalam
pengumpulan
data
tersebut
penulis
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
56
2. Penelitian Kepustakaan
Penulis melakukan penelitian keperpustakaan dengan tujuan agar memperoleh
data teoritis yang bersumber dari buku-buku ilmiah dan tulisan yang berkaitan
dengan komputer dan masalah-masalah yang berkaitan dengan tugas akhir ini.
Adapun sistematika penulisan laporan tugas akhir ini adalah sebagai berikut:
BAB 1 : Pendahuluan
Dalam bab ini penulis menguraikan Latar Belakang, Perumusan Masalah, Tujuan
Penelitian, Pembatasan Masalah, Metodologi Penelitian dan Sistematika Penelitian.
57
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
58
BAB 2
LANDASAN TEORI
59
saat ini. Agar pengguna komputer dengan merek dan tipe berlainan dapat saling
berhubungan, maka para ahli membuat sebuah protokol ( semacam bahasa) yang
sama untuk dipakai di internet. Namanya TCP ( Transmission Control Protocol ) dan
IP (Internet Protocol).
World Wide Web (WWW) lebih dikenal dengan web, merupakan salah satu layanan
yang dapat dipakai oleh pemakai komputer yang terhubung ke internet.
Saat ini internet identik dengan web, karena kepopuleran web sebagai standar
interface pada layanan-layanan yang ada di Internet, dari awalnya sebagai penyedia
informasi, kini digunakan juga untuk komunikasi dari email sampai dengan chatting,
sampai dengan melakukan transaksi bisnis (commerce).
Saat ini web seakan lebih populer daripada email, walaupun secara statistik
email masih merupakan aplikasi terbanyak yang digunakan oleh pengguna internet.
Web lebih populer bagi khalayak umum dan pemula, terutama untuk tujuan pencarian
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
60
Selain itu web telah diadopsi oleh perusahaan sebagai bagian dari strategi
teknologi informasinya, karena beberapa alasan:
a. Akses informasi mudah
b. Setup server lebih mudah
c. Informasi mudah didistribusikan
d. Bebas platform; informasi dapat disajikan oleh browser web pada
sistem operasi mana saja karena adanya standar berbagai tipe data
dapat disajikan.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
61
Tahun 1989, Timothy Bernes-Lee seorang ahli komputer dari inggris dan peneliti lain
di European Particle Physics Lab (Consei European pour la Recherche Nucleaire,
atau CERN) di Geneva, Swiss, mengembangkan suatu cara untuk men-share data
antar koleganya menggunakan sesuatu yang disebut dengan hypertext. Pemakai di
ERN dapat menampilkan dokumen pada layar komputer dengan menggunakan
software browser baru.
Kode-kode
khusus
disisipkan
ke
dalam
dokumen
elektronik
ini
memungkinkan pemakai untuk meloncat dari satu dokumen ke dokumen lainnya pada
layer dengan hanya memilih sebuah hyperlink.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
62
Browser web adalah software yang digunakan untuk menampilkan informasi dari
server web. Software ini kini telah dikembangkan dengan menggunakan user
interface grafis, sehingga pemakai dapat dengan mudah melakukan poin dan klik
untuk pindah antar dokumen.
Lynx adalah browser web yang masih menggunakan mode teks, yang
akibatnya adalah tidak adanya gambar yang dapat ditampilkan. Lynx pada lingkungan
DOS ( Disk Operating System) dan *.nix (keluarga sistem operasi UNIX). Akan
tetapi perkembangan dari browser mode teks ini tidaklah secepat browser web dengan
GUI (Grafic User Interface).
Di saat perkembangan WWW ada dua browser web yang populer yaitu
Internet Explorer (IE) dan Netscape Navigator. Namun saat ini bermunculan browser
web lain yang turut meramaikan persaingan untuk merebut para pengguna internet.
Di antara browser web yang telah banyak digunakan pada saat peluncurannya adalah
MSN, Opera dan Mozila Firefox. Di antara browser web ini terdapat kelebihan dan
kekurangan sehingga pengguna dapat memilih sesuai keinginan dan kemudahan yang
ditawarkan.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
63
Suatu browser mengambil sebuah web page dari server dengan sebuah request.
Sebuah request adalah HTTP standar yang berisi sebuah page address. Sebuah page
address terlihat seperti berikut : hhtp://www.google.co.id.
64
Berikut ini penjelasan beberapa istilah-istilah umum yang harus diketahui antara lain:
65
Dokumen HTML adalah file teks murni yang dapat dibuat dengan editor teks
sembarang. Dokumen ini dikenal dengan sebagai web page. Dokumen HTML
merupakan dokumen yang disajikan dalam browser web surfer. Dokumen ini
umumnya berisi informasi atau interface aplikasi di dalam internet.
Ada dua cara untuk membuat sebuah web page : dengan web editor (misalnya
Macromedia Dreamweaver atau Microsoft Frontpage) atau dengan editor teks biasa
(misalnya notepad atau editplus).
66
akan berbeda dengan DOKUMEN.html. kasus case sensitive akan dijumpai pada
dokumen web yang do hosting di dalam server yang berbasis *nix (keluarga sistem
operasi UNIX).
Nama elemen ditunjukkan dengan nama tag nya. Suatu elemen didalam
dokumen HTML harus ditandai dengan penulisan tag nya berpasangan. Ada beberapa
elemen yang tidak mengharuskan tag nya dituliskan secara berpasangan, elemen
tersebut diantaranya adalah:
a. Paragraf dengan tag <p>
b. Ganti baris line break dengan tag <br>
c. Garis datar horizontal rule dengan tag <hr>
d. List item dengan tag <li>
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
67
Secara umum suatu elemen dalam dokumen HTML yang dinyatakan dengan
tagnya, dituliskan : <nama tag>_</nama tag>. Penulisan penamaan tag bebas, dapat
menggunakan huruf besar, huruf kecil, ataupun campuran (tidak case sensitive).
Tetapi untuk antisipasi pada standar penulisan tag, direkomendasikan untuk
menuliskan tag dengan menggunakan huruf kecil semuanya.
Tag mark up ini digunakan sebenarnya memberi tahu browser web bagaimana
memperlakukan atau menampilkan (memformat) halaman dokumen tersebut dalam
browser.
Secara umum dokumen dibagi menjadi dua section (bagian), yaitu section
head dan section body. Sehingga setiap dokumen HTML harus mempunyai pola
dasar sebagai berikut:
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
68
<html>
<head>
informasi tentang dokumen HTML
</head>
<body>
informasi yang ditampilkan dalam browser web
</body>
</html>
Setiap dokumen HTML harus diawali dengan menuliskan tag <html> dan tag
</html> diakhir dokumen. Tag ini menandai elemen HTML, yang berarti dokumen
ini adalah dokumen HTML.
Dalam satu dokumen hanya ada satu elemen HTML. Section atau elemen
head ditandai dengan tag <head> diawal, dan tag </head> di akhir. Section ini berisi
informasi tentang dokumen HTMLnya. Minimal informasi yang dituliskan dalam
elemen ini adalah judul dari dokumen, judul ini akan ditampilkan pada caption bar
dari window browser, ditandai dengan menggunakan tag <title> dan diakhiri dengan
</title>.
Section atau elemen body ditandai dengan tag <body> diawal, dan tag
</body> diakhir. Section body merupakan elemen terbesar didalam dokumen HTML.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
69
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
70
DHTML adalah suatu istilah yang diberikan untuk suatu halaman web yang
memanfaatkan HTML dan DOM (Document Object Model), CSS ( Cascading Style
Sheet) dan client-side scripting untuk membuat tampilan halaman tersebut dinamis
atau interaktif. Istilah Dynamic ditambahkan untuk membedakan sifat dinamis
halaman web ini dengan halaman web statis yang dibuat hanya berdasarkan HTML.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
71
merupakan teknologi client side yang hanya bergantung pada kemampuan browser
untuk menampilkan dan memanipulasi elemen halaman web yang tidak bisa
dilakukan dengan hanya mengandalkan HTML.
Sebagian besar hal yang bisa dibuat dengan DTML bisa juga dibuat dengan
teknologi authoring web lain seperti Java, Flash, atau Shockwave. Penggunaan
DHTML mempunyai kelebihan karena tidak memerlukan plugin apapun untuk
menjalankannya dan ukurannya jauh lebih kecil dibandingkan dengan penggunaan
teknologi lain. Kelemahannya, masih banyak hal-hal yang belum bisa dilakukan
dengan menggunakan DHTML seperti suara dan video. Saat ini sudah cukup banyak
penerapan DHTML yang sering ditemukan sewaktu mengakses internet sehari-hari.
Yang umum misalnya rollover menu ( baik berbentuk image ataupun teks biasa),
pulldown menu, trailing cursor, sliding text,dll.
CSS mendefinisikan karakteristik tampilan ( warna, style, dan posisi ) suatu elemen
pada dokumen HTML dalam bentuk property elemen tersebut. Pemisahan isi dengan
tampilan yang dilakukan dengan penerapan CSS ini, memberikan kemungkinan
penyusunan struktur suatu halaman HTML dengan lebih fleksibel. CSS merupakan
bagian/subset dari DOM yang sangat berperan dalam HTML.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
72
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
73
2.4.2 JavaScript
JavaScript pertama kali muncul di Netscape 2.0 dan dikembangkan lebih lanjut pada
Netscape 3.0. walaupun memiliki nama yang serupa. JavaScript sama sekali tidak
berhubungan dengan Java.
Java adalah bahasa pemograman tingkat tinggi untuk membuat aplikasi crossplatform, sedangkan Java Script hanyalah scripting language yang terintegrasi dengan
web browser untuk memberikan fleksibilitas tambahan bagi programmer untuk
mengontrol elemen-elemen dalam halaman web.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
74
PHP merupakan salah satu bahasa pemograman web yang masih muda namun telah
mengalami perkembangan yang cukup signifikan dan telah banyak digunakan oleh
banyak user dalam membuat aplikasi web baik perseorangan maupun perusahaan.
Pertama kali PHP dibuat dan diperkenalkan oleh Rasmus Lerdorf pada tahun 1995
menggunakan nama PHP/FI. Generasi awal PHP/FI dibuat dari Perl yang waktu itu
digunakan untuk kebutuhan pribadi saja. Pada awalnya, PHP/FI merupakan bagian
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
75
dari Personal Home Page Tools. Namun, karena kebutuhan penggunaan web yang
semakin kompleks maka dikembangkan PHP/FI dengan menggunakan bahasa c.
Rasmus menulis sejumlah besar fungsi untuk pengaksesan ke dalam database.
Penulisan itu juga bertujuan membangun halaman web menjadi lebih dinamis.
PHP/FI merupakan akronim dari Personal Home Page/Form Interpreter. Pada
awal penyusunan, PHP/FI hanya mempunyai fungsi dasar dari PHP yang ada
sekarang ini. Jadi, dengan kata lain, pondasi PHP sekarang ini adalah PHP/FI. Karena
ketika pertama dibuat menggunakan Perl maka PHP/FI juga mempunyai susunan dan
karakter pemograman yang sama dengannya.
Pada tahun 1997, dikeluarkan PHP/FI versi 2.0. Fungsi-fungsi pada PHP/FI
ditulis dengan menggunakan bahasa C karena telah memiliki fungsi khusus untuk
mengakses database maka, pada tahun yang sama terdapat kurang lebih 50.000
domain yang menggunakan PHP/FI sebagai bahasa pemograman untuk website, atau
sekitar 1% dari total domain yang ada pada waktu itu. Booming PHP/FI tersebut
membuat semakin banyak orang yang tertarik untuk berpartisipasi mengembangkan
PHP/FI. Berkat kerjasama dan kontribusi mereka, PHP versi 3.0 pun dikeluarkan
walau kala itu masih dalam tahap alpha.
2.5.1.2 PHP3
76
awal bagi terciptanya PHP versi sekarang ini. Secara resmi, peluncur PHP 3.0 ialah
Andi Gutmans dan Zeev Suraski pada tahun 1997. Mereka mengeluarkan PHP 3.0
karena melihat kelemahan PHP/FI yang digunakan dalam aplikasi e-commerce.
Kemudian, mereka menulisnya ulang dengan masih mengacu kepada PHP/FI. Setelah
PHP 3 dikeluarkan, mereka menyarankan untuk menghentikan proyek PHP/FI karena
PHP 3 masih lebih baik.
Alasan untuk mulai mengembangkan PHP, dan memfokuskan diri pada PHP
3.0 ialah pengembangan versi ini secara meluas dalam mendukung berbagai jenis
database, protokol dan API. Dengan dukungan yang semakin besar dari berbagai
pihak yang menyumbangkan berbagai modul maka, pada tahun 1998, 10% dari
seluruh webserver yang ada kala itu telah menginstalasi PHP versi 3.0.
2.5.1.3 PHP 4
77
2.5.1.4 PHP 5
Pada Juni 2004, Zend merilis PHP 5.0. Pada versi 5 muncul untuk menangani
kelemahan-kelemahan yang terdapat pada versi sebelumnya. PHP versi 5 dapat
membuat file swf dan applet java. Focus utamanya adalah mengoptimalkan
pengunaan PHP untuk OOP (Object Oreiented Programming).(Syafii, 2005)
Skrip PHP berkedudukan sebagai tag dalam bahasa HTML. Suatu skrip akan dikenali
sebagai skrip PHP bila diapit oleh tanda:
a. <?php?>
b. <?..............?>
c. <script language=PHP></script>
Skrip yang dibuat dengan PHP disimpan dengan nama file dan diikuti dengan
ekstensi *.php, misalnya : contoh.php. Bila skrip PHP diakses melalui computer lokal
maka file PHP disimpan di folder htdocs di local web server. Sama halnya dengan
penamaan dokumen HTML, pemberian nama dokumen yang sama tetapi dituliskan
dengan case yang berbeda akan dianggap sebagai dokumen yang berbeda, misalnya
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
78
contoh.php akan berbeda dengan CONTOH.php atau Contoh.php. Skrip PHP dapat
disisipkan dibagian manapun dalam dokumen HTML, begitu pula sebaliknya skrip
HTML dapat diletakkan diantara skrip PHP.
Berikut ini contoh dari skrip PHP:
a. contoh1.php
<html>
<head>
<title> Menyisipkan PHP di dokumen HTML </title>
</head>
<body>
Cara menyapa PHP dengan akrab:<br>
<p>
<?php
Echo(Hallo PHP, apa kabar?);
?>
</body>
</html>
b. contoh2.php
<?php
Echo(ini ditulis dengan skrip PHP !!);
?>
<html>
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
79
<body>
<br><hr>
ini ditulis dengan HTML
</body>
</html>
<?php
Echo(<br>sekian);
?>
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
80
PHP yang digabungkan dengan database akan lebih berkekuatan jika digabungkan
dengan database yang realible, gratis dan mudah diinstalasi. Terdapat dua jenis
database yang memenuhi yaitu MySQL dan PostgreSQL. Kedua jenis database ini
dipergunakan karena kinerja yang bagus dan untuk mengaksesnya.PHP mempunyai
fungsi khusus. berikut ini daftar database yang didukung oleh PHP sampai versi 5:
Nama Database
No.
Nama Database
1.
Adabas D
12.
Direct MS-SQL
2.
DBase
13.
MySQL
3.
Empress
14.
ODBC
4.
FilePro (read-only)
15.
5.
Hyperware
16.
Ovrimos
6.
IBM DB2
17.
PostgreSQL
7.
Informix
18.
SQLite
8.
Ingres
19.
Solid
9.
Interbase
20.
Sybase
10
Frontbase
21.
Velocis
11.
MSQL
22.
Unix dbm
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
81
PHP mempunyai fungsi khusus untuk mengakses MySQL. Ada sekitar 48 fungsi
yang didukung PHP dalam mengakses PHP dalam mengakses MySQL dalam
membuat aplikasi. Adapun yang biasa digunakan diantaranya adalah :
a. mysql_connect()
fungsi mysql_connect adalah untuk menghubungkan PHP dengan database
MySQL. Format fungsinya adalah:
mysql_connect(string hostname, srting username, string password);
b. mysql_select_db
setelah terhubung ke database MySQL dengan menggunakan mysql_connect,
langkah selanjutnya adalah memilih database yang akan digunakan. Fungsi
mysql_select_db digunakan untuk memilih database. Format fungsinya
adalah:
koneksi ialah variable yang terhubung ke MySQL. Jika tidak mengisi variable
koneksi maka koneksi yang terbuka saat itulah yang dianggap digunakan.
Manfaat berbagai macam koneksi adalah bahwa dengan pilihan seperti itu
maka dalam satu file dimungkinkan mengambil query dari 2 database
sekaligus.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
82
c. mysql_query
Dalam database MySQL, perintah untuk melakukan transaksi ialah perintah
SQL. Sebutan untuk mengirim perintah SQL dinamakan query. Query
memberi perintah kepada database untuk melakukan apa yang dikehendaki.
Format fungsinya:
d. mysql_num_rows
kegunaan dari fungsi ini adalah untuk menghitung jumlah baris yang dikenai
oleh proses SQL.Format fungsinya adalah:
e. mysql_fetch_array
Fungsi ini berkaitan dengan menampilkan data. Untuk menampilkan data,
digunakan fungsi mysql_fetch_array. Dengan fungsi ini, haisl query
ditampung dalam bentuk array. Format fungsinya adalah:
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
83
84
Pada akhirnya dengan pendekatan object oriented ini akan dihasilkan aplikasi
dengan struktur yang kokoh. Operasi dan data dibungkus dengan rapi di dalam class.
Data hanya dapat dimanipulasi menggunakan operasi-operasi yang disediakan
didalam class.
Salah satu prinsip dalam perancangan aplikasi dengan pendekatan object oriented
adalah pemisahan antara tampilan (user interface) dan implementasi (business logic).
Tujuan pemisahan antara bagian tampilan dengan bagian implementasi adalah
mengurangi ketergantungan antarbagian di dalam aplikasi.
Tingkat
ketergantungan
yang
rendah
tersebut
dapat
memudahkan
2.7 MySQL
MySQL merupakan salah satu perangkat lunak sistem pengelola basis data (Data
Base Management System). MySQL juga dapat dikategorikan sebagai Relational
Data Base Management System (RDBMS), karena dalam pembuatan basis data pada
MySQL terdiri atas lajur horizontal dan lajur vertikal.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
85
MySQL pada saat ini banyak digunakan oleh pemograman web untuk
membangun situs yang memerlukan basis data sebagai data dan pengolahan
data.(Syafii,2005).
Dalam membuat website diperlukan suatu editor. Salah satu editor yang sangat
sederhana adalah notepad. Dengan perkembangan perangkat lunak, suatu perusahaan
yang bernama Macromedia, inc. membuat suatu editor berbasis GUI yang
dikhususkan untuk pembuatan website yang diberi nama Dreamweaver.
web.(Bambang et al,2004).
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
86
BAB 3
Flashindomedia didirikan pada tanggal 9 juni 2007 dengan alamat Jl. Setia
Lama No.37 H.Adam Malik Medan. Flashindomedia dibangun berdasarkan
pengalaman matang para pendirinya serta didukung oleh team kreatif yang cerdas dan
berpengalaman dan bekerja sama untuk memberikan solusi serta kemudahan yang
memfokuskan pada tujuan bisnis anda.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
87
setiap tujuan anda tercapai, proses perencanaan dilakukan secara teliti bersama
dengan anda sebagai calon klien Flashindomedia.
Pelayanan kami melingkupi spektrum yang luas mulai dari terciptanya ide,
pembuatan konsep, perencanaan sampai pada pelaksanaan. Flashindomedia membuka
pintu layanan dan memberikan kemudahan kepada anda sebagai konsumen.
Sebuah perusahaan baik itu instansi pemerintah maupun swasta haruslah mempunyai
visi, misi, dan tujuan dalam mendirikan dan menjalankan perusahaan. Semuanya itu
juga berlaku pada CV. FLASHINDOMEDIA Medan.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
88
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
89
BAB 4
Perancangan DFD yang penulis buat dalam perancangan ini terdiri dari Diagram
Konteks dan DFD Level Nol.
Admin
Pegawai
Info Data
Pegawai
- Data Admin
- Data pegawai
- Data Absensi
Data Pegawai
Sistem Informasi
Absensi
Pegawai CV.
Flashindomedia
Medan berbasis
Web
Pimpinan
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
90
Admin
Karyawan
Upload
Data
- Data Karyawan
- Data Absensi
- Data Jabatan
F2 Absensi
Update
Data
F3 Jabatan
Pembuatan
Laporan
Pimpinan
Gambar 4.2 Data Flow Diagram Level Nol Sistem Informasi Absensi Pegawai
CV. Flashindomedia Medan Berbasis Web
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
91
Karyawan
Bagian Karyawan
1.0
Pengumpulan
Info Data
Karyawan
Data Karyawan
Data
F1 Karyawan
Pengisian
Absensi
2.0
Pengisian
Info Absensi
Absensi
F2 Karyawan
Info Rekap
Absensi
3.0
Rekap Absensi
Karyawan
Rekap
Absensi
Laporan Absensi Karyawan
Pimpinan
Gambar 4.3 Diagram Sistem Informasi Pegawai yang sedang berjalan pada
CV. Flashindomedia Medan
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
92
Start
Halaman Absensi
Database
Auto Presure
Absensi By Login
True?
Database
Menu
Edit
Profil
Alamat
TTL
New
Passswor
Password
No. Telp
Photo
Selesai
Lihat
Absen
Selesai
Log out
Simpan
Database
Simpan
Database
Absen Bulan
ini
End
Lihat
Bulan Lain
Input Date
Search Database
Search
Absensi
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
93
Start
Halaman Absensi
Log in
Database
True?
Menu Admin
Absensi
Izin
Absensi
Cuti
Absensi
Reguler
Master Data
Data Karyawan
Data Karyawan
Data Absensi
Laporan
Absensi
Izin
Absensi
Cuti
Absensi
Reguler
Log Out
End
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
94
A
Data Karyawan
Tambah
NIK
Edit
Nama
Hapus
Hapus
Databa
TTL
NIK
Jenis Kelamin
Nama
Jabatan
TTL
Alamat
Jenis Kelamin
No. Telp
Level
Photo
Jabatan
Password
Alamat
Level
No. Telp
Seles
Password
Photo
Simpan
Databas
e
Update
Simpan
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
95
B
Data
Tamba
Kode
Edit
Nama
J b
Hapus
Hapu
Hapus
dari
Data
Simpan
Data
Simpan
Database
Update
Simpan
Database
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
96
C
Data Absensi Hari
ini
Lihat Absensi
Hapus Date
Search Database
Database
show
Tanggal Lain
Tambah
NIK
Edit
Tanggal
Hapus
Hapus Karyawan
Database
Jam Masuk
NIK
Jam Istirahat
Nama
Masuk Istirahat
Tanggal
Jam keluar
Jam Masuk
Simpan
Jam Istirahat
Database
Masuk Istirahat
Jam Keluar
Update
Simpan Database
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
97
D
Data Inti Bulan ini
Tambah
NIK
Edit
Tgl Mulai
Hapus
Hapus
Database
NIK
Tgl Selesai
Jabatan
Keterangan
Tgl Mulai
Simpan
Tgl Selesai
Keterangan
Simpan
Database
Update
Database
Cetak
Database
Absensi
Search Absensi
98
4.3 Normalisasi
Dalam hal ini penulis memberikan penjelasan mengenai normalisasi table database
yang penulis gunakan untuk merancang sistem informasi absensi pegawai, antara lain
sebagai berikut:
1. Bentuk Tidak Normal
Berikut ini adalah bentuk tabel tidak normal seperti terlihat pada tabel absensi
pegawai dibawah ini:
Tabel Absensi Pegawai
Tanggal
Nik
Nama
Jabatan
Jam
masuk
Jam
istirahat
Jam
masuk
isrirahat
Jam
pulang
2. Bentuk Normal
Berikut ini adalah tabel normal dimana tabel absensi dipecah menjadi 3
bagian seperti terlihat pada tabel absensi, tabel karyawan, dan tabel jabatan
dibawah ini:
Tabel Absensi
Tanggal
Nik
Jam
masuk
Jam
istirahat
Jam
masuk
istirahat
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
Jam
keluar
99
Tabel Karyawan
Nik Nama Alamat
Tempat Tanggal
Kode
Gender Telepon
Password Level Photo
lahir
lahir
jabatan
Tabel Jabatan
Kode jabatan
Nama jabatan
Dalam hal ini penulis memberikan struktur tabel database yang penulis gunakan
untuk merancang sistem informasi absensi pegawai, antara lain sebagai berikut:
Tabel 1. Absensi
No.
1.
2.
3.
4.
5.
6.
7.
Field
Tanggal
Nik
Masuk
Istirahat
Msk_istirahat
Keluar
ket
Data Type
Date
Int
Time
Time
Time
Time
Int
Width
9
2
Description
Tanggal
Nomor induk karyawan
Masuk
Istirahat
Masuk istirahat
Keluar
Keterangan
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
100
Tabel 2. Cuti
No.
1.
2.
3.
4.
5.
Field
Id
Nik
Tgl_mulai
Tgl_selesai
ket
Data Type
Int
Int
Date
Date
Varchar
Width
2
9
50
Description
Id
Nomor induk karyawan
Tanggal mulai
Tanggal selesai
Keterangan
Data Type
Int
Int
Date
Date
Varchar
Width
2
9
50
Description
Id
Nomor induk karyawan
Tanggal mulai
Tanggal selesai
Keterangan
Data Type
Varchar
Varchar
Width
4
30
Description
Kode jabatan
Nama jabatan
Data Type
Int
Varchar
Varchar
Varchar
Date
Varchar
Varchar
Varchar
Varchar
Varchar
Varchar
Width
9
30
250
30
6
15
4
32
20
50
Description
Nomor induk karyawan
Nama
Alamat
Tempat lahir
Tanggal lahir
Gender
Telepon
Kode jabatan
Password
Level
Photo
Tabel 3. Ijin
No.
1.
2.
3.
4.
5.
Field
Id
Nik
Tgl_mulai
Tgl_selesai
Ket
Tabel 4. Jabatan
No.
1.
2.
Field
Kode_jabatan
Nama_jabatan
Tabel 5. karyawan
No.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Field
Nik
Nama
Alamat
T4_lahir
Tgl_lahir
Gender
Telp
Kode_jabatan
Password
Level
Photo
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
101
Tabel 6. Modul
No.
1.
2.
3.
4.
Field
Id_modul
Nama_modul
Link
Katagori
Data Type
Int
Varchar
Varchar
Varchar
Width
3
30
30
20
Description
Id modul
Nama modul
Link
Katagori
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
102
BAB 5
IMPLEMENTASI SISTEM
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
103
Untuk menunjang penerapan sistem yang dirancang , dibutuhkan komponenkomponen yang sangat berperan terhadap kebutuhan sistem. Berikut beberapa
komponen yang dibutuhkan sistem agar dapat beroperasi dengan baik.
5.3.1 Hardware
Komponen ini merupakan komponen pertama yang sangat diperlukan dalam
mewujudkan sistem yang diusulkan. Dalam hal ini merincikan spesifikasi hardware
yang diajukan adalah sebagai berikut:
a. Komputer dengan processor Intel Pentium 4
b. Memori RAM 256 MB atau lebih
c. Kapasitas Hardisk minimal 10 GB
d. Microsoft Windows 2000 service pack 4 atau XP Home
e. Microsoft Windows XP Professional (lebih disarankan)
5.3.2 Software
Dengan adanya hardware saja, tentu tidak akan dapat digunakan tanpa adanya
bantuan penuh dari komponen Software. Adapun Software yang digunakan dalam
pembuatan website ini adalah:
a. Sistem Operasi Windows XP
Pada saat ini sistem operasi windows XP merupakan sistem operasi yang
sering digunakan oleh masyarakat umum Indonesia. Sistem operasi ini lebih
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
104
b. Macromedia Dreamweaver 8
Dreamweaver program professional text editor dalam penulisan PHP maupun
HTML yang digunakan untuk mengelola situs dan menata layout halaman
web. Saat ini versi terbaru dreamweaver yang dikeluarkan oleh macromedia
dreamweaver adalah versi 8, tetapi disini penulis menggunakan Macromedia
Dreamweaver 8.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
105
c. XAMPP
XAMPP merupakan software triad dari 3 aplikasi yaitu apache sebagai web
servernya, PHP sebagai bahasa pemograman serta MySQL sebagai
databasenya. Dengan XAMPP kebutuhan software telah terpenuhi.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
106
5.3.3 Brainware
Brainware adalah sumber daya manusia yang nantinya akan berperan sebagai user
ataupun administrator. Brainware sebagai administrator adalah yang melakukan
pengolahan website. Administrator harus mengerti tentang bahasa pemograman PHP
dan MySQL serta jalannya sistem. Sedangkan user adalah pengguna website itu
sendiri. User tidak harus mengerti tentang bahasa pemograman tersebut karena user
hanyalah pengguna dan hanya cukup mampu mengoperasikan internet browser.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
107
Aplikasi sistem informasi absensi CV. Flashindomedia Berbasis Web yang penulis
rancang ini memiliki beberapa halaman. Halaman halaman yang akan ditampilkan
merupakan halaman- halaman program yang penulis rancang:
Halaman login karyawan adalah halaman khusus karyawan untuk melakukan absensi.
Dimana absensi dilakukan sebanyak 4 kali, yaitu jam masuk, jam istirahat, jam
masuk istirahat dan jam keluar.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
108
Halaman menu login adalah halaman lanjutan setelah melakukan login pada halaman
utama login absensi. Halaman ini berisi tentang absensi yang akan di lakukan seorang
karyawan di CV. Flashindomedia. Di halaman ini dapat melakukan edit profil,
mengganti password yang telah dimiliki serta dapat melihat absensi yang telah lalu.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
109
Halaman login admin adalah halaman khusus admin. Sebelum admin masuk ke dalam
halaman web nya, admin harus melakukan login terlebih dahulu di halaman login
admin dengan cara mengisi kotak NIK dan memasukkan PASSWORD.
Pada saat admin sukses melakukan proses login maka akan tampil menu admin,
dimana pada menu tersebut admin dapat menambah, mengedit dan menghapus data.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
110
Pada halaman ini ada terdapat dua menu yaitu data karyawan dan data jabatan. Di
mana di menu data karyawan admin dapat melakukan pengeditan pada profil
karyawan serta dapat melakukan penambahan data karyawan baru sedangkan pada
menu data jabatan berisi tentang jabatan-jabatan yang ada pada CV. Flashindomedia
Medan.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
111
Halaman ini berisikan tentang absensi semua karyawan. Admin dapat melihat absensi
semua karyawan. Pada halaman ini terdapat 3 menu yaitu absensi regular, absensi
cuti dan absensi ijin.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
112
Halaman ini berisikan tentang laporan absensi semua karyawan yang dapat di
tampilkan dari bulan berapa pun. Pada halaman ini terdapat 3 menu yaitu absensi
global, absensi cuti dan absensi ijin.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
113
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
114
BAB 6
6.1 Kesimpulan
Sistem informasi absensi pegawai CV. Flashindomedia Medan Berbasis web ini
adalah media yang dapat digunakan untuk menyampaikan informasi khususnya
kepada pimpinan dan pegawai perusahaan. Sistem informasi absensi pegawai ini
dirancang penulis dengan menggunakan sistem operasi Windows XP Professional,
Macromedia Dreamweaver 8, Photoshop CS, Aplikasi Triad XAMPP sebagai web
servernya, PHP bahasa scripting-nya dan MySQL sebagai database manajemen
sistem (DBMS). Dari penjelasan pada bab-bab sebelumnya, penulis dapat
merangkum beberapa kesimpulan yaitu sebagai berikut:
1. Penggunaan dan Pemanfaatan aplikasi Sistem Informasi Absensi Pegawai
CV. Flashindomedi medan ini dapat memberikan kemudahan bagi pihak
perusahaan dalam melakukan absensi kepegawaiannya.
2. Dengan adanya Sistem Informasi Absensi Pegawai CV. Flashindomedia ini
baik pimpinan dan karyawan dapat melihat langsung data absensi mereka.
Karyawan juga bisa melihat data pribadinya sehingga jika terjadi kesalahan
informasi data yang ditampilkan dapat dilaporkan langsung kepada admin dan
segera di update.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
115
6.2 Saran
Dari peninjauan dan riset yang telah dilakukan oleh penulis, maka penulis
berkeinginan memberikan saran saran yang mungkin dapat digunakan sebagai
bahan pertimbangan bagi para pembaca, yaitu:
1. Sejalan dengan pesatnya kemajuan Teknologi, Penulis berharap agar pembaca
lebih memperdalam pengetahuan dibidang komputer, mengingat penggunaan
komputer dewasa ini tidak dapat dipisahkan lagi dengan aktifitas sehari-hari.
2. Dalam pembuatan Sistem Informasi Absensi Pegawai CV. Flashindomedia
Medan ini masih banyak kekurangan yang terdapat dalam sistem tersebut.
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
116
DAFTAR PUSTAKA
Hakim, L, dan Musalini, U. 2004. Cara Mudah Memadukan Web Design dan Web
Programming. Jakarta: PT Elex Media Komputindo
Kadir, Abdul. 2003. Pemograman WEB Mencakup HTML, CSS, JavaScript dan PHP.
Yogyakarta. Andi Offset
RS, Bernard. Pijono, A. Agustaf R. 2005. Mudah dan Cepat Menguasai Pemograman
WEB. Bandung : Informatika Bandung
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
117
Listing Program
Index.php
<html>
<head>
<title>:: Sistem Absensi CV. FLASHINDOMEDIA ::</title>
<link href="style.css" rel="stylesheet" type="text/css" />
<link rel="shortcut icon" href="favicon.ico" >
<link rel="icon" type="image/gif" href="animated_favicon1.gif" >
</head>
<body>
<div id="header">
<div id="content">
<h2>Login Absensi</h2>
<img src="images/login-welcome.gif" width="97" height="105" hspace="10"
align="left">
<?php include "form_login.php"; ?>
</div>
<div id="content">
<?php include "hadir.php"; ?>
</div>
<div id="footer">
Copyright © 2009 by mira
</div>
</div>
</body>
</html>
Aksi.php
<?php
session_start();
include "config/koneksi.php";
include "config/library.php";
$act=$_GET[act];
if($act=='update'){
$lokasi_file = $_FILES['fupload']['tmp_name'];
$nama_file
= $_FILES['fupload']['name'];
$tgl_lahir=sprintf("%02d%02d%02d",$_POST[thn_lahir],$_POST[bln_lahir]
,$_POST[tgl_lahir]);
if (empty($lokasi_file)){
mysql_query("UPDATE karyawan SET alamat
= '$_POST[almt]',
t4_lahir = '$_POST[t4_lahir]',
tgl_lahir =
'$tgl_lahir',
telp = '$_POST[telp]'
WHERE nik
= '$_POST[nik]'");
}
else{
move_uploaded_file($lokasi_file,"admin/images/photo/$nama_file");
mysql_query("UPDATE karyawan SET alamat
= '$_POST[almt]',
t4_lahir = '$_POST[t4_lahir]',
tgl_lahir =
'$tgl_lahir',
telp = '$_POST[telp]',
photo
= '$nama_file'
WHERE nik
= '$_POST[nik]'");
}
header('location:media.php?modul=home');
}elseif($act =='change'){
$pas=md5($_POST[pass]);
$p=mysql_query("select * from karyawan where nik = '$_POST[nik]' and
password ='$pas'");
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
118
$j=mysql_num_rows($p);
if($j > 0){
if($_POST[pass1]==$_POST[pass2]){
$pas1=md5($_POST[pass1]);
mysql_query("update karyawan set password = '$pas1'
where nik = '$_POST[nik]' ");
header('location:media.php?modul=passchange');
}else{
echo "<link href=style.css rel=stylesheet
type=text/css>";
echo "Password tidak cocok<br>";
echo "<a href=media.php?modul=passchange><b>ULANGI
LAGI</b></a></center>";
}
}else{
echo "<link href=style.css rel=stylesheet type=text/css>";
echo "Password Anda Salah<br>";
echo "<a href=media.php?modul=passchange><b>ULANGI
LAGI</b></a></center>";
}
}
?>
Media.php
<?php
session_start();
include "config/koneksi.php";
include "config/library.php";
include "config/fungsi_combobox.php";
include "config/fungsi_indotgl.php";
?>
<!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>
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252" />
<link href='style.css' rel='stylesheet' type='text/css'>
<title>:: Sistem Absensi CV. FLASHINDOMEDIA ::</title>
</head>
<body>
<div id="header">
<div id="content">
<div id="nav">
<a
href="?modul=home"> Home </a> |
<a
href="?modul=edit"> Edit Profile </a> |
<a
href="?modul=passchange"> Change Password </a> |
<a href="?modul=absen"> Lihat
Absensi </a> |
<a href="logout.php">
Logout</a>
</div>
<?php
if($_GET[modul]=='edit'){
$nik=$_SESSION[nik];
$sq=mysql_query("select * from karyawan, jabatan where nik='$nik' and
karyawan.kode_jabatan = jabatan.kode_jabatan ");
$d=mysql_fetch_array($sq);
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
119
echo "
<h2>Edit Profil</h2>
<form method=post enctype='multipart/form-data'
action=aksi.php?act=update>
<input type=hidden name=nik value='$d[nik]'>
<table>
<tr><td>Nik</td><td>: $d[nik]</td></tr>
<tr><td>Nama</td><td>: $d[nama]</td></tr>
<tr><td>Alamat</td><td>: <textarea name=almt cols=20
rows=2>$d[alamat]</textarea></td></tr>
<tr><td>Tempat / Tanggal Lahir</td><td>: <input type=text
name=t4_lahir value='$d[t4_lahir]'>";
$get_tgl=substr("$d[tgl_lahir]",8,2);
combotgl2(1,31,'tgl_lahir',$get_tgl);
$get_bln=substr("$d[tgl_lahir]",5,2);
combobln3(1,12,'bln_lahir',$get_bln);
$get_thn=substr("$d[tgl_lahir]",0,4);
$thn_skrg=date("Y");
combotgl2($get_thn-10,$thn_sekarang+2,'thn_lahir',$get_thn);
echo "
</td></tr>
<tr><td>Jenis Kelamin</td><td>: $d[gender]</td></tr>
<tr><td>No. Telp</td><td>: <input type=text name=telp
value='$d[telp]'></td></tr>
<tr><td>Jabatan</td><td>: $d[nama_jabatan]</td></tr>
<tr><td>Photo</td><td> : <img src='admin/images/photo/$d[photo]'
width=100 height=100 border=0></td></tr>
<tr><td>Ganti Photo</td>
<td> : <input type=file name=fupload>
*)</td></tr>
<tr><td colspan=2>*) Apabila gambar tidak diubah, dikosongkan
saja.</td></tr>
<tr><td colspan=2><input type=submit value=Simpan id=submit>
<input type=button value=Batal id=submit
onclick=self.history.back()></td></tr>
</table>
</form>
";
}elseif($_GET[modul]=='passchange'){
$nik=$_SESSION[nik];
$p=mysql_query("select * from karyawan where nik = '$nik' ");
$e=mysql_fetch_array($p);
echo "
<h2>Ganti Password</h2>
<form method=post action=aksi.php?act=change>
<input type=hidden name=nik value='$e[nik]'>
<table>
<tr><td>Current Password</td><td>: <input type=password name=pass
></td></tr>
<tr><td>New Password</td><td>: <input type=password name=pass1
></td></tr>
<tr><td>Retype New Password</td><td>: <input type=password
name=pass2></td></tr>
<tr><td colspan=2><input type=submit id=submit value=Update>
<input type=button value=Batal id=submit
onclick=self.history.back()></td></tr>
</table>
</form>
";
}elseif($_GET[modul]=='absen'){
$nik=$_SESSION[nik];
$m=date("m");
$y=date("Y");
echo "<h2>Absensi</h2>
<form action=?act=tampilkan method=POST>
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
120
<table>
<tr><td>Bulan</td><td>:";
$bln=date("m");
combobln3(1,12,'bln',$bln);
$thn_skrg=date("Y");
combotgl2($thn_sekarang-2,$thn_sekarang+2,'thn',$thn_skrg);
echo "
</td><td><input type=submit value=Tampilkan></td></tr>
</table>
<h2 align=center>Absensi<br>Bulan $m $y</h2>
<table>
<tr><th>no</th><th>Tanggal</th><th>NIK</th><th>Nama</th><th>Jabatan</th><th>
Jam Masuk</th><th>Jam Istirahat</th><th>Jam Masuk Istirahat</th><th>Jam
Keluar</th></tr>";
$tampil=mysql_query("SELECT * from absensi,karyawan,jabatan where
absensi.nik=karyawan.nik and absensi.nik='$nik' and
karyawan.kode_jabatan=jabatan.kode_jabatan and month(tanggal)='$m' and
year(tanggal)='$y' order by tanggal");
$no=1;
while ($r=mysql_fetch_array($tampil)){
$tgl=tgl_indo($r[tanggal]);
echo "<tr><td>$no</td>
<td>$tgl</td>
<td>$r[nik]</td>
<td>$r[nama]</td>
<td>$r[nama_jabatan]</td>
<td>$r[masuk]</td>
<td>$r[istirahat]</td>
<td>$r[msk_istirahat]</td>
<td>$r[keluar]</td>
</tr>";
$no++;
}
echo "</table>";
}
elseif ($_GET[act]=='tampilkan'){
$m=$_POST[bln];
$y=$_POST[thn];
$nik=$_SESSION[nik];
echo "<h2>Absensi</h2>
<form action=?act=tampilkan method=POST>
<table>
<tr><td>Bulan</td><td>:";
$bln=date("m");
combobln3(1,12,'bln',$bln);
$thn_skrg=date("Y");
combotgl2($thn_sekarang-2,$thn_sekarang+2,'thn',$thn_skrg);
echo "
</td><td><input type=submit value=Tampilkan></td></tr>
</table>
<h2 align=center>Absensi <br>Bulan $m $y</h2>
<table>
<tr><th>no</th><th>Tanggal</th><th>NIK</th><th>Nama</th><th>Jabatan</th><th>
Jam Masuk</th><th>Jam Istirahat</th><th>Jam Masuk Istirahat</th><th>Jam
Keluar</th></tr>";
$tampil=mysql_query("SELECT * from absensi,karyawan,jabatan where
absensi.nik=karyawan.nik and absensi.nik='$nik' and
karyawan.kode_jabatan=jabatan.kode_jabatan and month(tanggal)='$m' and
year(tanggal)='$y' order by tanggal");
$no=1;
while ($r=mysql_fetch_array($tampil)){
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
121
$tgl=tgl_indo($r[tanggal]);
echo "<tr><td>$no</td>
<td>$tgl</td>
<td>$r[nik]</td>
<td>$r[nama]</td>
<td>$r[nama_jabatan]</td>
<td>$r[masuk]</td>
<td>$r[istirahat]</td>
<td>$r[msk_istirahat]</td>
<td>$r[keluar]</td>
</tr>";
$no++;
}
echo "</table>";
}else{
if (empty($_SESSION[nik]) AND empty($_SESSION[pass])){
echo "<link href='style.css' rel='stylesheet'
type='text/css'>
<center>Anda harus login <br>";
echo "<a href=index.php><b>LOGIN</b></a></center>";
}
else{
?>
<?php
$nik=$_SESSION[nik];
$s=mysql_query("select * from karyawan, absensi where
karyawan.nik = absensi.nik
and karyawan.nik='$nik'
and absensi.nik='$nik'
and absensi.tanggal='$tgl_sekarang'
");
$r=mysql_fetch_array($s);
echo "<h2>Selamat Datang</h2>";
echo "
<table width=60% border=0 cellspacing=0 cellpadding=0>
<tr>
<td width=20% rowspan=6><img src='admin/images/photo/$r[photo]'
width=120 height=120 hspace=10 border=0 align=center valign=top></td>
<td width=20%>NIK</td>
<td width=20%>: $r[nik]</td>
</tr>
<tr>
<td>Nama</td>
<td>: $r[nama]</td>
</tr>
<tr>
<td>Jam Masuk </td>
<td>: $r[masuk]</td>
</tr>
<tr>
<td>Jam Istirahat </td>
<td>: $r[istirahat]</td>
</tr>
<tr>
<td>Jam Masuk Istirahat </td>
<td>: $r[msk_istirahat]</td>
</tr>
<tr>
<td>Jam Keluar </td>
<td>: $r[keluar]</td>
</tr>
</table>
";
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
122
?>
</div>
<div id="footer">
Copyright © 2009 by mira
</div>
</div>
</body>
</html>
Logout.php
<?php
session_start();
session_destroy();
header('location:index.php');
?>
Form_login.php
<?php
echo "<form method=POST action=cek_login.php>
<table>
<tr><td>NIK</td><td> : <input type=text name=nik></td></tr>
<tr><td>Password</td><td> : <input type=password name=pass></td></tr>
<tr><td colspan=2><input type=submit value=Login
id=submit></td></tr>
</table>
</form>";
?>
Hadir.php
<?php
include "config/koneksi.php";
include "config/library.php";
include "config/fungsi_indotgl.php";
$sq=mysql_query("select * from absensi, karyawan where
absensi.nik=karyawan.nik and absensi.tanggal='$tgl_sekarang' order by
absensi.masuk asc");
$r=mysql_num_rows($sq);
if($r > 0){
echo "<table><tr><th>Tanggal</th><th>NIK</th><th>Nama</th><th>Jam
Masuk</th><th>Jam Istirahat</th><th>Masuk Istirahat</th><th>Jam
Pulang</th></tr>";
while($t=mysql_fetch_array($sq)){
$tgl=tgl_indo($t[tanggal]);
echo "<tr>
<td>$tgl</td>
<td>$t[nik]</td>
<td>$t[nama]</td>
<td>$t[masuk]</td>
<td>$t[istirahat]</td>
<td>$t[msk_istirahat]</td>
<td>$t[keluar]</td>
</tr>";
}
echo "</table>";
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
123
}
?>
Cek_login.php
<?php
session_start();
include "config/koneksi.php";
include "config/library.php";
$pass=md5($_POST[pass]);
$nik=$_POST[nik];
$login=mysql_query("select * from karyawan where nik='$nik' and
password='$pass'");
$ketemu=mysql_num_rows($login);
$r=mysql_fetch_array($login);
if($ketemu > 0){
$_SESSION[nik]=$r[nik];
$_SESSION[pass]=$r[password];
header('location:media.php?modul=home');
}elseif($m[ket]==1 or $ket==2){
if($n > 0){
mysql_query("update absensi set istirahat =
'$jam_sekarang', ket = $m[ket]+1 where tanggal='$tgl_sekarang' and
nik='$nik'");
header('location:media.php?modul=home');
}else{
type=text/css>";
}else{
type=text/css>";
header('location:media.php?modul=home');
echo "<link href=style.css rel=stylesheet
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
124
}else{
type=text/css>";
header('location:media.php?modulss=home');
echo "<link href=style.css rel=stylesheet
font-family: Tahoma;
text-align: center;
}
#header {
position: relative;
background-image: url(images/header.jpg);
background-repeat: no-repeat;
margin-right: auto;
margin-left: auto;
width: 780px;
border: 2px solid #265180;
padding-top: 70px;
text-align: left;
}
#content {
margin-left: 20px;
padding: 20px 10px 0 0;
}
#content p {
font-size: 75%;
line-height: 1.8em;
padding-left: 2em;
}
#menu {
position: absolute;
top: 90px;
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
125
left: 0;
width: 180px;
}
#menu ul {
list-style: none;
margin: 0;
padding: 0;
border: none;
}
#menu li {
width: 180px;
border-bottom: 1px solid #969BA5;
margin: 0;
padding: 0;
font-size: 80%;
vertical-align: bottom;
}
#menu a:link, #menu a:visited {
display: block;
padding: 5px 5px 5px 0.5em;
border-left: 12px solid #265180;
border-right: 1px solid #265180;
background-color: #CAD6EC;
color: #265180;
text-decoration: none;
}
#menu a:hover {
background-color: #265180;
color: #FFFFFF;
}
a:link,a:visited {
color:#265180;
text-decoration:none;
}
a:hover {
color: #FF6600;
text-decoration:none;
}
h2 {
font: normal 120% Georgia;
color: #265180;
background-color: transparent;
border-bottom: 1px dotted #265180;
}
table {
font-family: Tahoma;
font-size: 8pt;
border-width: 1px;
border-style: solid;
border-color: #999999;
border-collapse: collapse;
margin: 10px 0px;
}
th{
}
td{
color: #FFFFFF;
font-size: 7pt;
text-transform: uppercase;
text-align: center;
padding: 0.5em;
border-width: 1px;
border-style: solid;
border-color: #969BA5;
border-collapse: collapse;
background-color: #265180;
padding: 0.5em;
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
126
vertical-align:top;
border-width: 1px;
border-style: solid;
border-color: #969BA5;
border-collapse: collapse;
}
input,textarea,select{
font-family: Tahoma;
font-size: 8pt;
}
#footer{
text-align:left;
padding: 20px 0 10px 255px;
font-size: 70%;
color: #FFFFFF;
background-color: #265180;
}
#nav{
text-align:left;
position:relative;
height:20px;
font-size: 70%;
color: #FFFFFF;
background-color: #265180;
#nav a:link, #nav a:visited{
color: #fff;
text-decoration:none;
#nav a:hover{
color: #a5a2a2;
text-decoration:none;
}
#submit {
color:#FFF;
font-size:1em;
font-weight:bold;
width:auto;
background:#265180;
}
input#submit:hover {
border-color:#003366;
}
.datepicker table {
border-width:0px;
border-collapse:collapse;
border-spacing:0;
}
.datepicker th{
color: #FFFFFF;
font-size: 7pt;
text-transform: uppercase;
text-align: center;
padding: 0.05em;
border-width: 0px;
border-collapse: collapse;
background: #121212;
}
.datepicker td{
padding: 0.05em;
vertical-align:top;
border-width: 0px;
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
127
border-collapse: collapse;
}
.datepicker {
position: relative;
font-family: Arial, Helvetica, sans-serif;
font-size: 12px;
width: 196px;
height: 147px;
position: absolute;
cursor: default;
top: 0;
left: 0;
display: none;
}
.datepickerContainer {
background: #121212;
position: absolute;
top: 10px;
left: 10px;
}
.datepickerBorderT {
position: absolute;
left: 10px;
top: 0;
right: 10px;
height: 10px;
background: url(images/datepicker_t.png);
}
.datepickerBorderB {
position: absolute;
left: 10px;
bottom: 0;
right: 10px;
height: 10px;
background: url(images/datepicker_b.png);
}
.datepickerBorderL {
position: absolute;
left: 0;
bottom: 10px;
top: 10px;
width: 10px;
background: url(images/datepicker_l.png);
}
.datepickerBorderR {
position: absolute;
right: 0;
bottom: 10px;
top: 10px;
width: 10px;
background: url(images/datepicker_r.png);
}
.datepickerBorderTL {
position: absolute;
top: 0;
left: 0;
width: 10px;
height: 10px;
background: url(images/datepicker_tl.png);
}
.datepickerBorderTR {
position: absolute;
top: 0;
right: 0;
width: 10px;
height: 10px;
background: url(images/datepicker_tr.png);
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
128
}
.datepickerBorderBL {
position: absolute;
bottom: 0;
left: 0;
width: 10px;
height: 10px;
background: url(images/datepicker_bl.png);
}
.datepickerBorderBR {
position: absolute;
bottom: 0;
right: 0;
width: 10px;
height: 10px;
background: url(images/datepicker_br.png);
}
.datepickerHidden {
display: none;
}
.datepicker table {
border-collapse:collapse;
border-spacing:0;
border-collapse:collapse;
}
.datepicker a {
color: #eee;
text-decoration: none;
cursor: default;
outline: none;
}
.datepicker table td {
text-align: right;
padding: 0;
margin: 0;
}
.datepicker th {
text-align: center;
color: #999;
font-weight: normal;
}
.datepicker tbody th {
text-align: left;
}
.datepicker tbody a {
display: block;
}
.datepickerDays a {
width: 20px;
line-height: 16px;
height: 16px;
padding-right: 2px;
}
.datepickerYears a,
.datepickerMonths a{
width: 44px;
line-height: 36px;
height: 36px;
text-align: center;
}
td.datepickerNotInMonth a {
color: #666;
}
tbody.datepickerDays td.datepickerSelected{
background: #136A9F;
}
tbody.datepickerDays td.datepickerNotInMonth.datepickerSelected {
background: #17384d;
}
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
129
tbody.datepickerYears td.datepickerSelected,
tbody.datepickerMonths td.datepickerSelected{
background: #17384d;
}
.datepicker a:hover,
.datepicker a:hover {
color: #88c5eb;
}
.datepicker td.datepickerNotInMonth a:hover {
color: #999;
}
.datepicker tbody th {
text-align: left;
}
.datepickerSpace div {
width: 20px;
}
.datepickerGoNext a,
.datepickerGoPrev a,
.datepickerMonth a {
text-align: center;
height: 20px;
line-height: 20px;
}
.datepickerGoNext a {
float: right;
width: 20px;
}
.datepickerGoPrev a {
float: left;
width: 20px;
}
table.datepickerViewDays tbody.datepickerMonths,
table.datepickerViewDays tbody.datepickerYears {
display: none;
}
table.datepickerViewMonths tbody.datepickerDays,
table.datepickerViewMonths tbody.datepickerYears,
table.datepickerViewMonths tr.datepickerDoW {
display: none;
}
table.datepickerViewYears tbody.datepickerDays,
table.datepickerViewYears tbody.datepickerMonths,
table.datepickerViewYears tr.datepickerDoW {
display: none;
}
td.datepickerDisabled a,
td.datepickerDisabled.datepickerNotInMonth a{
color: #333;
}
td.datepickerDisabled a:hover {
color: #333;
}
td.datepickerSpecial a {
background: #700;
}
td.datepickerSpecial.datepickerSelected a {
background: #a00;
}
Absensi/Admin
Index.php
<html>
<head>
<title>:: ABSENSI CV. FLASHINDOMEDIA ::</title>
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
130
header('location:media.php?modul='.$modul);
elseif($modul=='jabatan' and $act=='hapus'){
mysql_query("DELETE FROM jabatan WHERE kode_jabatan='$_GET[id]' ");
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
131
header('location:media.php?modul='.$modul);
}
elseif ($modul=='karyawan' AND $act=='input'){
$tanggal=sprintf("%02d%02d%02d",$_POST[year],$_POST[month],$_POST[day]);
$lokasi_file = $_FILES['fupload']['tmp_name'];
$nama_file
= $_FILES['fupload']['name'];
$pass=md5($_POST[pass]);
if (!empty($lokasi_file)){
move_uploaded_file($lokasi_file,"images/photo/$nama_file");
mysql_query("INSERT INTO karyawan(nik,
nama,
alamat,
t4_lahir,
tgl_lahir,
gender,
telp,
kode_jabatan,
password,
level,
photo)
VALUES('$_POST[nik]',
'$_POST[nama]',
'$_POST[alamat]',
'$_POST[t4_lahir]',
'$tanggal',
'$_POST[gender]',
'$_POST[telp]',
'$_POST[jabatan]',
'$pass',
'$_POST[level]',
'$nama_file')");
}else{
mysql_query("INSERT INTO karyawan(nik,
nama,
alamat,
t4_lahir,
tgl_lahir,
gender,
telp,
kode_jabatan,
password,
level)
VALUES('$_POST[nik]',
'$_POST[nama]',
'$_POST[alamat]',
'$_POST[t4_lahir]',
'$tanggal',
'$_POST[gender]',
'$_POST[telp]',
'$_POST[jabatan]',
'$pass',
'$_POST[level]')");
}
header('location:media.php?modul='.$modul);
}
// Update modul
elseif ($modul=='karyawan' AND $act=='update'){
$tgl_lahir=sprintf("%02d%02d%02d",$_POST[thn_lahir],$_POST[bln_lahir],$_POST
[tgl_lahir]);
$lokasi_file = $_FILES['fupload']['tmp_name'];
$nama_file
= $_FILES['fupload']['name'];
$pass=md5($_POST[pass]);
// Apabila gambar tidak diganti
if (empty($lokasi_file)){
mysql_query("UPDATE karyawan SET nik
= '$_POST[nik]',
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
132
nama = '$_POST[nama]',
alamat = '$_POST[alamat]',
t4_lahir =
'$_POST[t4_lahir]',
'$tgl_lahir',
'$_POST[gender]',
'$_POST[telp]',
'$_POST[jabatan]',
'$_POST[level]'
tgl_lahir =
gender =
telp =
kode_jabatan =
password = '$pass',
level =
WHERE nik
= '$_POST[id]'");
}
else{
move_uploaded_file($lokasi_file,"images/photo/$nama_file");
mysql_query("UPDATE karyawan SET nik = '$_POST[nik]',
nama = '$_POST[nama]',
alamat = '$_POST[alamat]',
t4_lahir =
'$_POST[t4_lahir]',
tgl_lahir =
'$tgl_lahir',
gender =
'$_POST[gender]',
telp =
'$_POST[telp]',
kode_jabatan =
'$_POST[jabatan]',
password = '$pass',
level =
'$_POST[level]',
photo = '$nama_file'
WHERE nik
= '$_POST[id]'");
}
header('location:media.php?modul='.$modul);
}
elseif($modul=='karyawan' and $act=='hapus'){
mysql_query("DELETE FROM karyawan WHERE nik='$_GET[id]' ");
header('location:media.php?modul='.$modul);
}
// Input absensi admin
elseif ($modul=='absensi' AND $act=='input'){
$tanggal=sprintf("%02d%02d%02d",$_POST[year],$_POST[month],$_POST[day]);
mysql_query("INSERT INTO absensi(tanggal,
nik,
masuk,
istirahat,
msk_istirahat,
keluar)
VALUES('$tanggal',
'$_POST[nik]',
'$_POST[masuk]',
'$_POST[istirahat]',
'$_POST[msk_istirahat]',
'$_POST[keluar]')");
header('location:media.php?modul='.$modul);
// Update absensi
elseif ($modul=='absensi' AND $act=='update'){
$tgl=sprintf("%02d%02d%02d",$_POST[thn],$_POST[bln],$_POST[tgl]);
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
133
// Update cuti
elseif ($modul=='cuti' AND $act=='update'){
$mulai=sprintf("%02d%02d%02d",$_POST[thn_mulai],$_POST[bln_mulai],$_POST[tgl
_mulai]);
$selesai=sprintf("%02d%02d%02d",$_POST[thn_selesai],$_POST[bln_selesai],$_PO
ST[tgl_selesai]);
= '$mulai',
= '$selesai',
= '$_POST[ket]'
'$_POST[id]'");
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
134
ket)
VALUES('$_POST[nik]',
'$mulai',
'$selesai',
'$_POST[ket]')");
header('location:media.php?modul='.$modul);
// Update ijin
elseif ($modul=='ijin' AND $act=='update'){
$mulai=sprintf("%02d%02d%02d",$_POST[thn_mulai],$_POST[bln_mulai],$_POST[tgl
_mulai]);
$selesai=sprintf("%02d%02d%02d",$_POST[thn_selesai],$_POST[bln_selesai],$_PO
ST[tgl_selesai]);
= '$mulai',
= '$selesai',
= '$_POST[ket]'
'$_POST[id]'");
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
135
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
136
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
137
$pdf->Output();
}
header('location:media.php?modul=tampilkan');
}
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
138
$ln = 0;
if ($iData == 24 || $_nData < $iData) {
$ln = 1;
$pdf->SetY(179);
$pdf->SetFont('Arial','I',8);
$pdf->Cell(0,10,$pdf->PageNo(),0,$ln,'R');
}
unset($_val);
}
$pdf->Cell(array_sum($w),0,'','T');
$pdf->Output();
}
header('location:media.php?modul=lapcuti');
elseif($modul=='cetak' and $act='tampilkancuti'){
$m=$_POST[m];
$y=$_POST[y];
$qry_data =mysql_query("SELECT * from cuti,karyawan,jabatan where
cuti.nik=karyawan.nik and karyawan.kode_jabatan=jabatan.kode_jabatan and
month(tgl_mulai)='$m' and year(tgl_mulai)='$y' order by tgl_mulai");
$_nData =mysql_num_rows($qry_data);
if ($_nData > 0) {
$pdf = new FPDF('P', 'mm', 'A4');
$headerData = array("No","NIK", "Nama","Jabatan", "Tanggal Mulai",
"Tanggal Selesai", "Keterangan");
$pdf->AddPage();
//HEADER
$pdf->setXY(5,5);
$pdf->SetFont('Arial','',8.5);
//TITLE
$pdf->SetFont('Arial','B',12);
$pdf->Cell(0,6,"Laporan Data Cuti",0,1,'C',0);
$pdf->Ln();
$pdf->Cell(0,6,"Bulan $m Tahun $y",0,1,'C',0);
$pdf->Ln(4);
//BODY
$pdf->SetMargins(5, 25, 5, 5);
$pdf->SetXY(5, 35);
$pdf->SetFont('Arial','',8.5);
$pdf->SetFillColor(193,193,193);
$pdf->SetTextColor(0);
$pdf->SetLineWidth(.1);
$pdf->SetFont('','', 7);
$w = array(5,17,30,30,19,22,20);
$nHD = count($headerData);
for($i = 0; $i < $nHD; $i++)
$pdf->Cell($w[$i], 5, $headerData[$i], 1, 0, 'C', 1);
$pdf->Ln();
$pdf->SetFillColor(231,231,231);
$fill = 0;
$iData = 1;
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
139
while($record_data = mysql_fetch_array($qry_data)) {
$ln = 0;
$pdf->Cell($w[0],6,$iData,1,$ln,'C',$fill);
$pdf->Cell($w[1],6,$record_data["nik"],1,$ln,'C',$fill);
$pdf->Cell($w[2],6,$record_data["nama"],1,$ln,'C',$fill);
$pdf->Cell($w[3],6,$record_data["nama_jabatan"],1,$ln,'C',$fill);
$pdf->Cell($w[4],6,$record_data["tgl_mulai"],1,$ln,'C',$fill);
$pdf->Cell($w[5],6,$record_data["tgl_selesai"],1,$ln,'C',$fill);
$pdf->Cell($w[6],6,$record_data["ket"],1,$ln,'C',$fill);
$pdf->Ln();
$fill=!$fill;
$iData++;
$ln = 0;
if ($iData == 24 || $_nData < $iData) {
$ln = 1;
$pdf->SetY(179);
$pdf->SetFont('Arial','I',8);
$pdf->Cell(0,10,$pdf->PageNo(),0,$ln,'R');
}
unset($_val);
}
$pdf->Cell(array_sum($w),0,'','T');
$pdf->Output();
}
header('location:media.php?modul=tampilkancuti');
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
140
$pdf->SetFont('','', 7);
$w = array(5,17,30,30,19,22,20);
$nHD = count($headerData);
for($i = 0; $i < $nHD; $i++)
$pdf->Cell($w[$i], 5, $headerData[$i], 1, 0, 'C', 1);
$pdf->Ln();
$pdf->SetFillColor(231,231,231);
$fill = 0;
$iData = 1;
while($record_dat = mysql_fetch_array($qry_dat)) {
$ln = 0;
$pdf->Cell($w[0],6,$iData,1,$ln,'C',$fill);
$pdf->Cell($w[1],6,$record_dat["nik"],1,$ln,'C',$fill);
$pdf->Cell($w[2],6,$record_dat["nama"],1,$ln,'C',$fill);
$pdf->Cell($w[3],6,$record_dat["nama_jabatan"],1,$ln,'C',$fill);
$pdf->Cell($w[4],6,$record_dat["tgl_mulai"],1,$ln,'C',$fill);
$pdf->Cell($w[5],6,$record_dat["tgl_selesai"],1,$ln,'C',$fill);
$pdf->Cell($w[6],6,$record_dat["ket"],1,$ln,'C',$fill);
$pdf->Ln();
$fill=!$fill;
$iData++;
$ln = 0;
if ($iData == 24 || $_nDat < $iData) {
$ln = 1;
$pdf->SetY(179);
$pdf->SetFont('Arial','I',8);
$pdf->Cell(0,10,$pdf->PageNo(),0,$ln,'R');
}
unset($_val);
}
$pdf->Cell(array_sum($w),0,'','T');
$pdf->Output();
}
header('location:media.php?modul=lapijin');
elseif($modul=='print' and $act='tampilkanijin'){
$m=$_POST[m];
$y=$_POST[y];
$qry_dat =mysql_query("SELECT * from ijin,karyawan,jabatan where
ijin.nik=karyawan.nik and karyawan.kode_jabatan=jabatan.kode_jabatan and
month(tgl_mulai)='$m' and year(tgl_mulai)='$y' order by tgl_mulai");
$_nDat =mysql_num_rows($qry_data);
if ($_nDat > 0) {
$pdf = new FPDF('P', 'mm', 'A4');
$headerData = array("No","NIK", "Nama","Jabatan", "Tanggal Mulai",
"Tanggal Selesai", "Keterangan");
$pdf->AddPage();
//HEADER
$pdf->setXY(5,5);
$pdf->SetFont('Arial','',8.5);
//TITLE
$pdf->SetFont('Arial','B',12);
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
141
}
?>
}
header('location:media.php?modul=lapcuti');
Form_login.php
<?php
echo "<form method=POST action=cek_login.php>
<table>
<tr><td>NIK</td><td> : <input type=text name=nik></td></tr>
<tr><td>Password</td><td> : <input type=password name=pass></td></tr>
<tr><td colspan=2><input type=submit value=Login></td></tr>
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
142
?>
</table>
</form>";
Content.php
<?php
include
include
include
include
?>
"../config/koneksi.php";
"../config/library.php";
"../config/fungsi_indotgl.php";
"../config/fungsi_combobox.php";
});
</script>
<?php
// Bagian Home
if ($_GET[modul]=='home'){
echo "<h2>Selamat Datang</h2>
<p>Hai <b>$_SESSION[namauser]</b>, silahkan klik menu pilihan yang
ada untuk mengelola content sistem absensi. </p>
<p> </p>
<p> </p>
<p> </p>
<p align=right>Login Hari ini: ";
echo tgl_indo(date("Y m d"));
echo " | ";
echo date("H:i:s");
echo "</p>";
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
143
elseif ($_GET[modul]=='jabatan'){
echo "<h2>Data Jabatan</h2>
<form method=POST action='?act=tambahjabatan'>
<input type=submit value='Tambah Jabatan'>
</form>
<table>
<tr><th>no</th><th>Kode Jabatan</th><th>Keterangan Jabatan</th>
<th>aksi</th></tr>";
$tampil=mysql_query("SELECT * FROM jabatan ORDER BY kode_jabatan");
$no=1;
while ($r=mysql_fetch_array($tampil)){
echo "<tr><td>$no</td>
<td>$r[kode_jabatan]</td>
<td>$r[nama_jabatan]</td>
<td><a href=?act=editjabatan&id=$r[kode_jabatan]><img
src='images/edit.jpeg' width=20 height=20 border=0></a> |
<a
href=\"aksi.php?modul=jabatan&act=hapus&id=$r[kode_jabatan]\"onClick=\"retur
n confirm('Apakah Anda benar-benar akan menghapus $r[nama_jabatan]?')\"><img
src='images/del.jpeg' width=20 height=20 border=0></a>
</td></tr>";
$no++;
}
echo "</table>";
}
// Form tambah user
elseif ($_GET[act]=='tambahjabatan'){
echo "<h2>Tambah Jabatan</h2>
<form method=POST action='aksi.php?modul=jabatan&act=input'>
<table>
<tr><td>Kode Jabatan</td>
<td> : <input type=text
name=kode_jabatan></td></tr>
<tr><td>Keterangan Jabatan</td>
<td> : <input type=text
name=nama_jabatan></td></tr>
<tr><td colspan=2><input type=submit value=Simpan>
<input type=button value=Batal
onclick=self.history.back()></td></tr>
</table>
</form>";
}
// Form edit user
elseif ($_GET[act]=='editjabatan'){
$edit=mysql_query("SELECT * FROM jabatan WHERE kode_jabatan='$_GET[id]'");
$r=mysql_fetch_array($edit);
echo "<h2>Edit Jabatan</h2>
<form method=POST action=aksi.php?modul=jabatan&act=update>
<input type=hidden name=id value='$r[kode_jabatan]'>
<table>
<tr><td>Kode Jabatan</td>
<td> : <input type=text
name=kode_jabatan value='$r[kode_jabatan]'></td></tr>
<tr><td>Keterangan Jabatan</td> <td> : <input type=text
name=nama_jabatan value='$r[nama_jabatan]'></td></tr>
<tr><td colspan=2><input type=submit value=Update>
<input type=button value=Batal
onclick=self.history.back()></td></tr>
</table>
</form>";
}
// Bagian Modul
elseif ($_GET[modul]=='karyawan'){
echo "<h2>Data Karyawan</h2>
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
144
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
145
asc");
<tr><td>Jabatan</td>
<td> : <select name=jabatan>
<option value=0 selected>- Pilih Jabatan -</option>
";
$q=mysql_query("select * from jabatan order by kode_jabatan
while($r=mysql_fetch_array($q)){
echo "<option
value=$r[kode_jabatan]>$r[nama_jabatan]</option>";
}
echo "</select>
</td></tr>
<tr><td>Alamat</td><td>: <textarea name=alamat cols=20
rows=1></textarea></td></tr>
<tr><td>No. Telp</td><td>: <input type=text
name=telp></td></tr>
<tr><td>Photo</td><td>: <input type=file name=fupload
></td></tr>
<tr><td>Password</td><td>: <input type=password
name=pass></td></tr>
<tr><td>Level</td>
<td> : <input type=radio name=level
value='user' checked>user
<input type=radio name=level
value='admin'>admin </td></tr>
<tr><td colspan=2><input type=submit value=Simpan name=simpanmodul>
<input type=button value=Batal
onclick=self.history.back()></td></tr>
</table>
</form>";
}
// Form Edit Modul
elseif ($_GET[act]=='editkaryawan'){
$edit = mysql_query("SELECT * FROM karyawan,jabatan WHERE nik='$_GET[id]'
and karyawan.kode_jabatan = jabatan.kode_jabatan");
$r
= mysql_fetch_array($edit);
echo "<h2>Edit Karyawan</h2>
<form method=POST action=aksi.php?modul=karyawan&act=update
enctype='multipart/form-data'>
<input type=hidden name=id value='$r[nik]'>
<table>
<tr><td>NIK</td>
<td> : <input type=text name=nik
value='$r[nik]'></td></tr>
<tr><td>Nama</td>
<td> : <input type=text name=nama
value='$r[nama]'></td></tr>
<tr><td>Tempat / Tanggal Lahir</td><td>: <input type=text
name=t4_lahir value='$r[t4_lahir]'>";
$get_tgl=substr("$r[tgl_lahir]",8,2);
combotgl2(1,31,'tgl_lahir',$get_tgl);
$get_bln=substr("$r[tgl_lahir]",5,2);
combobln2(1,12,'bln_lahir',$get_bln);
$get_thn=substr("$r[tgl_lahir]",0,4);
$thn_skrg=date("Y");
combotgl2($get_thn-10,$thn_sekarang+2,'thn_lahir',$get_thn);
echo "
</td></tr>";
if ($r[gender]=='Pria'){
echo "<tr><td>Jenis Kelamin</td> <td> : <input type=radio name=gender
value=Pria checked>Pria
<input type=radio name=gender value=wanita> Wanita</td></tr>";
}
else{
echo "<tr><td>Jenis Kelamin</td> <td> : <input type=radio name=gender
value=pria>Pria
<input type=radio name=gender value=Wanita
checked>Wanita</td></tr>";
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
146
}
if ($r[level]=='admin'){
echo "<tr><td>Level</td> <td> : <input type=radio name=level value=admin
checked>Admin
<input type=radio name=level value=user>User</td></tr>";
}
else{
echo "<tr><td>Level</td> <td> : <input type=radio name=level
value=admin>Admin
<input type=radio name=level value=user checked>User</td></tr>";
}
echo "<tr><td>Jabatan</td><td> :<select name=jabatan>";
$q=mysql_query("select * from jabatan");
while($d=mysql_fetch_array($q)){
if($r[kode_jabatan]==$d[kode_jabatan])
echo "
<option value=$d[kode_jabatan]
selected>$d[nama_jabatan]</option>";
else
echo "<option
value=$d[kode_jabatan]>$d[nama_jabatan]</option>";
}
echo "
</select></td></tr>
<tr><td>Alamat</td>
<td> : <textarea name=alamat rows=2
cols=20>$r[alamat]</textarea></td></tr>
<tr><td>No. Telp</td><td>: <input type=text name=telp
value='$r[telp]'></td></tr>
<tr><td>Password</td><td>: <input type=password name=pass
value='$r[password]'></td></tr>
<tr><td>Photo</td><td> : <img src='images/photo/$r[photo]'
width=100 height=110></td></tr>
<tr><td>Ganti Gbr</td>
<td> : <input type=file name=fupload
size=30> *)</td></tr>
<tr><td colspan=2>*) Apabila gambar tidak diubah, dikosongkan
saja.</td></tr>
<tr><td colspan=2><input type=submit value=Update>
<input type=button value=Batal
onclick=self.history.back()></td></tr>
</table>
</form>";
}
elseif($_GET[act]=='hasilcari'){
$nik=$_POST[nik];
$i=mysql_query("select * from karyawan where nik like '%$nik%'");
$h=mysql_num_rows($i);
echo "<h2>Hasil Cari</h2>";
if($h > 0){
echo "
<table>
<tr><th>No</th><th>NIK</th><th>Nama</th>
<th>Jabatan</th><th>Jenis Kelamin</th><th>Alamat</th><th>No.
Telp</th><th>aksi</th></tr>";
$no=1;
while ($r=mysql_fetch_array($i)){
echo "<tr><td>$no</td>
<td>$r[nik]</td>
<td>$r[nama]</td>
<td align=center>$r[nama_jabatan]</td>
<td align=center>$r[gender]</td>
<td align=center>$r[alamat]</td>
<td align=center>$r[telp]</td>
<td><a href=?act=editkaryawan&id=$r[nik]><img
src='images/edit.jpeg' width=20 height=20 border=0></a> |
<a
href=\"aksi.php?modul=karyawan&act=hapus&id=$r[nik]\"onClick=\"return
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
147
elseif ($_GET[act]=='tampil'){
$tanggal=sprintf("%02d%02d%02d",$_POST[year],$_POST[month],$_POST[day]);
$k=mysql_query("select * from absensi, karyawan where
absensi.nik=karyawan.nik and absensi.tanggal='$tanggal' order by
absensi.masuk asc");
echo "<h2>Absensi</h2>
<form method=POST action='?act=tambahabsensi'>
<input type=submit value='Tambah Absensi'>
</form>
<form method=POST action='?act=tampil'>
<table>
<tr><td>Tanggal</td><td>:";?> <span id="exampleIII">
<input name="day" type="text" style="width:
18px; border-width: 1px 0 1px 1px;" maxlength="2" /><input value="/"
type="text" style="width: 5px; border-width: 1px 0 1px 0;"
disabled="disabled" /><input name="month" class="textbox" type="text"
style="width: 16px; border-width: 1px 0 1px 0;" maxlength="2" /><input
value="/" type="text" style="width: 5px; border-width: 1px 0 1px 0;"
disabled="disabled" /><input name="year" type="text" style="width: 28px;
border-width: 1px 0 1px 0;" maxlength="4" /><input type="text" style="width:
15px; border-width: 1px 1px 1px 0;" disabled="disabled" /><img
src="images/calendar.gif" id="togglePicker" class="pickerImg" width="13px"
height="12px" alt="" />
</span> <input type=submit
value=Tampilkan></td></tr>
</table></form>
<? echo "
<table><tr><th>No</th><th>Tanggal</th><th>NIK</th><th>Nama</th><th>Jam
Masuk</th><th>Jam Istirahat</th><th>Masuk Istirahat</th><th>Jam
Pulang</th><th>Aksi</th></tr>";
$no=1;
while($l=mysql_fetch_array($k)){
$tgl=tgl_indo($l[tanggal]);
echo "<tr>
<td>$no</td>
<td>$tgl</td>
<td>$l[nik]</td>
<td>$l[nama]</td>
<td align=center>$l[masuk]</td>
<td align=center>$l[istirahat]</td>
<td align=center>$l[msk_istirahat]</td>
<td align=center>$l[keluar]</td>
<td><a
href=?act=editabsensi&id=$l[nik]&tgl=$l[tanggal]><img src='images/edit.jpeg'
width=20 height=20 border=0></a> |
<a
href=\"aksi.php?modul=absensi&act=hapus&id=$l[nik]&tgl=$l[tanggal]\"onClick=
\"return confirm('Apakah Anda benar-benar akan menghapus $l[nama]?')\"><img
src='images/del.jpeg' width=20 height=20 border=0></a>
</td></tr>
";
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
148
$no++;
}
echo "</table>";
}
elseif($_GET[act]=='editabsensi'){
$g=mysql_query("select * from absensi, karyawan where
absensi.nik=karyawan.nik and absensi.tanggal='$_GET[tgl]' and
absensi.nik='$_GET[id]' ");
$f=mysql_fetch_array($g);
echo "<h2>Edit Absensi Reguler</h2>
<form method=POST action=aksi.php?modul=absensi&act=update>
<input type=hidden name=id value=$f[nik]>
<table>
<tr><td>NIK</td><td> : $f[nik]</td></tr>
<tr><td>Nama</td>
<td> : $f[nama]</td></tr>
<tr><td>Tanggal</td>
<td> :";
$get_tgl=substr("$f[tanggal]",8,2);
combotgl2(1,31,'tgl',$get_tgl);
$get_bln=substr("$f[tanggal]",5,2);
combobln2(1,12,'bln',$get_bln);
$get_thn=substr("$f[tanggal]",0,4);
$thn_skrg=date("Y");
combotgl2($get_thn-2,$thn_sekarang+2,'thn',$get_thn);
echo " </td></tr>
<tr><td>Jam Masuk</td>
<td> : <input type=text name=masuk
value='$f[masuk]'></td></tr>
<tr><td>Jam Istirahat</td>
<td> : <input type=text
name=istirahat value='$f[istirahat]'></td></tr>
<tr><td>Masuk Istirahat</td>
<td> : <input type=text
name=msk_istirahat value='$f[msk_istirahat]'></td></tr>
<tr><td>Jam Keluar</td>
<td>: <input type=text
name=keluar value='$f[keluar]'></td></tr>
<tr><td colspan=2><input type=submit value=Update>
<input type=button value=Batal
onclick=self.history.back()></td></tr>
</table>
</form>";
}
elseif ($_GET[modul]=='cuti'){
echo "<h2>Data Cuti</h2>
<form method=POST action='?act=tambahcuti'>
<input type=submit value='Tambah Data Cuti'>
</form>";
$bln=date("m");
$tampil=mysql_query("SELECT * FROM cuti,karyawan where
cuti.nik=karyawan.nik and date_format(tgl_mulai,'%m')='$bln' ORDER BY
tgl_mulai ASC");
$br=mysql_num_rows($tampil);
if($br > 0){
echo "<table>
<tr><th>no</th><th>NIK</th><th>Nama</th><th>Tgl Mulai</th><th>Tgl
Selesai</th><th>Keterangan Cuti</th><th>aksi</th></th></tr>";
$no=1;
while ($r=mysql_fetch_array($tampil)){
$tgl_mulai=tgl_indo($r[tgl_mulai]);
$tgl_selesai=tgl_indo($r[tgl_selesai]);
echo "<tr><td>$no</td>
<td>$r[nik]</td>
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
149
<td>$r[nama]</td>
<td>$tgl_mulai</td>
<td>$tgl_selesai</td>
<td align=center>$r[ket]</td>
<td><a href=?act=editcuti&id=$r[id]><img
src='images/edit.jpeg' width=20 height=20 border=0></a> |
<a
href=\"aksi.php?modul=cuti&act=hapus&id=$r[id]\"onClick=\"return
confirm('Apakah Anda benar-benar akan menghapus $r[nama]?')\"><img
src='images/del.jpeg' width=20 height=20 border=0></a>
</td></tr>";
$no++;
}
echo "</table>";
}
}
elseif ($_GET[act]=='tambahcuti'){
echo "<h2>Tambah Data Cuti</h2>
<form method=POST action='aksi.php?modul=cuti&act=input'>
<table>
<tr><td>NIK</td><td> : <input type=text name=nik></td></tr>
<tr><td>Tgl Mulai</td><td>
: ";
$tgl=date("d");
combotgl2(1,31,'tgl_mulai',$tgl);
$bln=date("m");
combobln2(1,12,'bln_mulai',$bln);
$thn_skrg=date("Y");
combotgl2($get_thn-2,$thn_sekarang+2,'thn_mulai',$thn_skrg);
echo "</td></tr>
<tr><td>Tgl Selesai</td><td>
: ";
$tgl=date("d");
combotgl2(1,31,'tgl_selesai',$tgl);
$bln=date("m");
combobln2(1,12,'bln_selesai',$bln);
$thn_skrg=date("Y");
combotgl2($get_thn-2,$thn_sekarang+2,'thn_selesai',$thn_skrg);
echo "</td></tr>
<tr><td>Keterangan</td><td> : <input type=text name=ket></td></tr>
<tr><td colspan=2><input type=submit value=Simpan>
<input type=button value=Batal
onclick=self.history.back()></td></tr>
</table>
</form>";
}
elseif ($_GET[act]=='editcuti'){
$edit = mysql_query("SELECT * FROM cuti,karyawan where
cuti.nik=karyawan.nik and cuti.nik='$_GET[id]'");
$r
= mysql_fetch_array($edit);
echo "<h2>Edit Data Cuti</h2>
<form method=POST action=aksi.php?modul=cuti&act=update>
<input type=hidden name=id value=$r[nik]>
<table>
<tr><td>NIK</td><td>
: $r[nik]</td></tr>
<tr><td>Nama</td><td>
: $r[nama]</td></tr>
<tr><td>Tgl Mulai</td><td>
: ";
$get_tgl=substr("$r[tgl_mulai]",8,2);
combotgl2(1,31,'tgl_mulai',$get_tgl);
$get_bln=substr("$r[tgl_mulai]",5,2);
combobln2(1,12,'bln_mulai',$get_bln);
$get_thn=substr("$r[tgl_mulai]",0,4);
$thn_skrg=date("Y");
combotgl2($thn_sekarang-2,$thn_sekarang+2,'thn_mulai',$get_thn);
echo "
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
150
echo "
</td></tr>
<tr><td>Tgl Selesai</td><td>
: ";
$get_tgl=substr("$r[tgl_selesai]",8,2);
combotgl2(1,31,'tgl_selesai',$get_tgl);
$get_bln=substr("$r[tgl_selesai]",5,2);
combobln2(1,12,'bln_selesai',$get_bln);
$get_thn=substr("$r[tgl_selesai]",0,4);
$thn_skrg=date("Y");
combotgl2($thn_sekarang-2,$thn_sekarang+2,'thn_selesai',$get_thn);
</td></tr>
<tr><td>Keterangan</td><td> : <input type=text name=ket
value='$r[ket]'></td></tr>
<tr><td colspan=2><input type=submit value=Update>
<input type=button value=Batal
onclick=self.history.back()></td></tr>
</table>
</form>";
}
elseif ($_GET[modul]=='ijin'){
echo "<h2>Data Ijin</h2>
<form method=POST action='?act=tambahijin'>
<input type=submit value='Tambah Data Ijin'>
</form>";
$bln=date("m");
$tampil=mysql_query("SELECT * FROM ijin,karyawan where
ijin.nik=karyawan.nik and date_format(tgl_mulai,'%m')='$bln' ORDER BY
tgl_mulai ASC");
$br=mysql_num_rows($tampil);
if($br > 0){
echo "<table>
<tr><th>no</th><th>NIK</th><th>Nama</th><th>Tgl Mulai</th><th>Tgl
Selesai</th><th>Keterangan Cuti</th><th>aksi</th></th></tr>";
$no=1;
while ($r=mysql_fetch_array($tampil)){
$tgl_mulai=tgl_indo($r[tgl_mulai]);
$tgl_selesai=tgl_indo($r[tgl_selesai]);
echo "<tr><td>$no</td>
<td>$r[nik]</td>
<td>$r[nama]</td>
<td>$tgl_mulai</td>
<td>$tgl_selesai</td>
<td align=center>$r[ket]</td>
<td><a href=?act=editijin&id=$r[id]><img
src='images/edit.jpeg' width=20 height=20 border=0></a> |
<a
href=\"aksi.php?modul=ijin&act=hapus&id=$r[id]\"onClick=\"return
confirm('Apakah Anda benar-benar akan menghapus $r[nama]?')\"><img
src='images/del.jpeg' width=20 height=20 border=0></a>
</td></tr>";
$no++;
}
echo "</table>";
}
}
elseif ($_GET[act]=='tambahijin'){
echo "<h2>Tambah Data Cuti</h2>
<form method=POST action='aksi.php?modul=ijin&act=input'>
<table>
<tr><td>NIK</td><td> : <input type=text name=nik></td></tr>
<tr><td>Tgl Mulai</td><td>
: ";
$tgl=date("d");
combotgl2(1,31,'tgl_mulai',$tgl);
$bln=date("m");
combobln2(1,12,'bln_mulai',$bln);
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
151
$thn_skrg=date("Y");
combotgl2($get_thn-2,$thn_sekarang+2,'thn_mulai',$thn_skrg);
echo "</td></tr>
<tr><td>Tgl Selesai</td><td>
: ";
$tgl=date("d");
combotgl2(1,31,'tgl_selesai',$tgl);
$bln=date("m");
combobln2(1,12,'bln_selesai',$bln);
$thn_skrg=date("Y");
combotgl2($get_thn-2,$thn_sekarang+2,'thn_selesai',$thn_skrg);
echo "</td></tr>
<tr><td>Keterangan</td><td> : <input type=text name=ket></td></tr>
<tr><td colspan=2><input type=submit value=Simpan>
<input type=button value=Batal
onclick=self.history.back()></td></tr>
</table>
</form>";
}
elseif ($_GET[act]=='editijin'){
$edit = mysql_query("SELECT * FROM ijin,karyawan where
ijin.nik=karyawan.nik and ijin.nik='$_GET[id]'");
$r
= mysql_fetch_array($edit);
echo "<h2>Edit Data Ijin</h2>
<form method=POST action=aksi.php?modul=ijin&act=update>
<input type=hidden name=id value=$r[nik]>
<table>
<tr><td>NIK</td><td>
: $r[nik]</td></tr>
<tr><td>Nama</td><td>
: $r[nama]</td></tr>
<tr><td>Tgl Mulai</td><td>
: ";
$get_tgl=substr("$r[tgl_mulai]",8,2);
combotgl2(1,31,'tgl_mulai',$get_tgl);
$get_bln=substr("$r[tgl_mulai]",5,2);
combobln2(1,12,'bln_mulai',$get_bln);
$get_thn=substr("$r[tgl_mulai]",0,4);
$thn_skrg=date("Y");
combotgl2($thn_sekarang-2,$thn_sekarang+2,'thn_mulai',$get_thn);
echo "
</td></tr>
<tr><td>Tgl Selesai</td><td>
: ";
$get_tgl=substr("$r[tgl_selesai]",8,2);
combotgl2(1,31,'tgl_selesai',$get_tgl);
$get_bln=substr("$r[tgl_selesai]",5,2);
combobln2(1,12,'bln_selesai',$get_bln);
$get_thn=substr("$r[tgl_selesai]",0,4);
$thn_skrg=date("Y");
combotgl2($thn_sekarang-2,$thn_sekarang+2,'thn_selesai',$get_thn);
echo "
</td></tr>
<tr><td>Keterangan</td><td> : <input type=text name=ket
value='$r[ket]'></td></tr>
<tr><td colspan=2><input type=submit value=Update>
<input type=button value=Batal
onclick=self.history.back()></td></tr>
</table>
</form>";
}
elseif ($_GET[modul]=='global'){
$m=date("m");
$y=date("Y");
echo "<h2>Laporan Absensi Global</h2>
<form action=?act=tampilkan method=POST>
<table>
<tr><td>Bulan</td><td>:";
$bln=date("m");
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
152
combobln2(1,12,'bln',$bln);
$thn_skrg=date("Y");
combotgl2($thn_sekarang-2,$thn_sekarang+2,'thn',$thn_skrg);
echo "
</td><td rowspan=2><input type=submit
value=Tampilkan></td></tr>
<tr><td>NIK</td><td>: <input type=text name=nik></td></tr>
$y</h2>
</table>
</form>
<h2 align=center>Laporan Data Absensi Global<br>Bulan $m
<table>
<tr><th>no</th><th>Tanggal</th><th>NIK</th><th>Nama</th><th>Jabatan</th><th>
Jam Masuk</th><th>Jam Istirahat</th><th>Jam Masuk Istirahat</th><th>Jam
Keluar</th><th>Keterlambatan</th></tr>";
$tampil=mysql_query("SELECT * ,TIMEDIFF( `masuk` , '08:15:00' ) AS
`selisih` from absensi,karyawan,jabatan where absensi.nik=karyawan.nik and
karyawan.kode_jabatan=jabatan.kode_jabatan and month(tanggal)='$m' and
year(tanggal)='$y' order by tanggal");
$no=1;
while ($r=mysql_fetch_array($tampil)){
$tgl=tgl_indo($r[tanggal]);
echo "<tr><td>$no</td>
<td>$tgl</td>
<td>$r[nik]</td>
<td>$r[nama]</td>
<td>$r[nama_jabatan]</td>
<td>$r[masuk]</td>
<td>$r[istirahat]</td>
<td>$r[msk_istirahat]</td>
<td>$r[keluar]</td>
<td align=center>$r[selisih]</td>
</tr>";
$no++;
}
echo "</table>";
echo "<br><br><form action=aksi.php?modul=cetak&act=global method=POST>
<input type=submit value=Cetak PDF>
</form>
";
elseif ($_GET[act]=='tampilkan'){
$m=$_POST[bln];
$y=$_POST[thn];
$nik=$_POST[nik];
echo "<h2>Laporan Absensi Global</h2>
<form action='' method=POST>
<table>
<tr><td>Bulan</td><td>:";
$bln=date("m");
combobln2(1,12,'bln',$bln);
$thn_skrg=date("Y");
combotgl2($thn_sekarang-2,$thn_sekarang+2,'thn',$thn_skrg);
echo "
</td><td rowspan=2><input type=submit
value=Tampilkan></td></tr>
<tr><td>NIK</td><td>: <input type=text name=nik></td></tr>
$y</h2>
</table>
</form>
<h2 align=center>Laporan Data Absensi Global<br>Bulan $m
<table>
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
153
<tr><th>no</th><th>Tanggal</th><th>NIK</th><th>Nama</th><th>Jabatan</th><th>
Jam Masuk</th><th>Jam Istirahat</th><th>Jam Masuk Istirahat</th><th>Jam
Keluar</th><th>Keterlambatan</th></tr>";
if(empty($_POST[nik])){
$tampil=mysql_query("SELECT * ,TIMEDIFF( `masuk` , '08:15:00' ) AS
`selisih` from absensi,karyawan,jabatan where absensi.nik=karyawan.nik and
karyawan.kode_jabatan=jabatan.kode_jabatan and month(tanggal)='$m' and
year(tanggal)='$y' order by tanggal");
}else{
$tampil=mysql_query("SELECT * ,TIMEDIFF( `masuk` , '08:15:00' ) AS
`selisih` from absensi,karyawan,jabatan where absensi.nik=karyawan.nik and
absensi.nik='$nik' and karyawan.kode_jabatan=jabatan.kode_jabatan and
month(tanggal)='$m' and year(tanggal)='$y' order by tanggal");
}
$no=1;
while ($r=mysql_fetch_array($tampil)){
$tgl=tgl_indo($r[tanggal]);
echo "<tr><td>$no</td>
<td>$tgl</td>
<td>$r[nik]</td>
<td>$r[nama]</td>
<td>$r[nama_jabatan]</td>
<td>$r[masuk]</td>
<td>$r[istirahat]</td>
<td>$r[msk_istirahat]</td>
<td>$r[keluar]</td>
<td align=center>$r[selisih]</td>
</tr>";
$no++;
}
echo "</table>";
echo "<br><br><form action=aksi.php?modul=cetak&act=tampilkan
method=POST>
<input type=hidden name=m value=$m>
<input type=hidden name=y value=$y>
<input type=hidden name=nik value=$nik>
<input type=submit value=Cetak PDF>
</form>";
}
elseif ($_GET[modul]=='lapcuti'){
$m=date("m");
$y=date("Y");
echo "<h2>Laporan Absensi Data Absensi Cuti</h2>
<form action=?act=tampilkancuti method=POST>
<table>
<tr><td>Bulan</td><td>:";
$bln=date("m");
combobln2(1,12,'bln',$bln);
$thn_skrg=date("Y");
combotgl2($thn_sekarang-2,$thn_sekarang+2,'thn',$thn_skrg);
echo "
</td><td><input type=submit value=Tampilkan></td></tr>
</table>
</form>
<h2 align=center>Laporan Data Absensi Cuti<br>Bulan $m $y</h2>
<table>
<tr><th>no</th><th>NIK</th><th>Nama</th><th>Jabatan</th><th>Tanggal
Mulai</th><th>Tanggal Selesai</th><th>Keterangan</th></tr>";
$tampil=mysql_query("SELECT * from cuti,karyawan,jabatan where
cuti.nik=karyawan.nik and karyawan.kode_jabatan=jabatan.kode_jabatan and
month(tgl_mulai)='$m' and year(tgl_mulai)='$y' order by tgl_mulai");
$no=1;
while ($r=mysql_fetch_array($tampil)){
$tgl=tgl_indo($r[tanggal]);
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
154
echo "<tr><td>$no</td>
<td>$r[nik]</td>
<td>$r[nama]</td>
<td>$r[nama_jabatan]</td>
<td>$r[tgl_mulai]</td>
<td>$r[tgl_selesai]</td>
<td>$r[ket]</td>
</tr>";
$no++;
}
echo "</table>";
echo "<br><br><form action=aksi.php?modul=cetak&act=cuti method=POST>
<input type=submit value=Cetak PDF>
</form>
";
elseif ($_GET[act]=='tampilkancuti'){
$m=$_POST[bln];
$y=$_POST[thn];
echo "<h2>Laporan Data Cuti</h2>
<form action=?act=tampilkancuti method=POST>
<table>
<tr><td>Bulan</td><td>:";
$bln=date("m");
combobln2(1,12,'bln',$bln);
$thn_skrg=date("Y");
combotgl2($thn_sekarang-2,$thn_sekarang+2,'thn',$thn_skrg);
echo "
</td><td><input type=submit value=Tampilkan></td></tr>
</table>
</form>
<h2 align=center>Laporan Data Cuti<br>Bulan $m $y</h2>
<table>
<tr><th>no</th><th>NIK</th><th>Nama</th><th>Jabatan</th><th>Tanggal
Mulai</th><th>Tanggal Selesai</th><th>Keterangan</th></tr>";
$tampil=mysql_query("SELECT * from cuti,karyawan,jabatan where
cuti.nik=karyawan.nik and karyawan.kode_jabatan=jabatan.kode_jabatan and
month(tgl_mulai)='$m' and year(tgl_selesai)='$y' order by tgl_mulai");
$no=1;
while ($r=mysql_fetch_array($tampil)){
$tgl=tgl_indo($r[tanggal]);
echo "<tr><td>$no</td>
<td>$r[nik]</td>
<td>$r[nama]</td>
<td>$r[nama_jabatan]</td>
<td>$r[tgl_mulai]</td>
<td>$r[tgl_selesai]</td>
<td>$r[ket]</td>
</tr>";
$no++;
}
echo "</table>";
echo "<br><br><form action=aksi.php?modul=cetak&act=tampilkancuti
method=POST>
<input type=hidden name=m value=$m>
<input type=hidden name=y value=$y>
<input type=submit value=Cetak PDF>
</form>";
}
elseif ($_GET[modul]=='lapijin'){
$m=date("m");
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
155
$y=date("Y");
echo "<h2>Laporan Absensi Data Absensi Ijin</h2>
<form action=?act=tampilkanijin method=POST>
<table>
<tr><td>Bulan</td><td>:";
$bln=date("m");
combobln2(1,12,'bln',$bln);
$thn_skrg=date("Y");
combotgl2($thn_sekarang-2,$thn_sekarang+2,'thn',$thn_skrg);
echo "
</td><td><input type=submit value=Tampilkan></td></tr>
</table>
</form>
<h2 align=center>Laporan Data Absensi Ijin<br>Bulan $m $y</h2>
<table>
<tr><th>no</th><th>NIK</th><th>Nama</th><th>Jabatan</th><th>Tanggal
Mulai</th><th>Tanggal Selesai</th><th>Keterangan</th></tr>";
$tampil=mysql_query("SELECT * from ijin,karyawan,jabatan where
ijin.nik=karyawan.nik and karyawan.kode_jabatan=jabatan.kode_jabatan and
month(tgl_mulai)='$m' and year(tgl_mulai)='$y' order by tgl_mulai");
$no=1;
while ($r=mysql_fetch_array($tampil)){
$tgl=tgl_indo($r[tanggal]);
echo "<tr><td>$no</td>
<td>$r[nik]</td>
<td>$r[nama]</td>
<td>$r[nama_jabatan]</td>
<td>$r[tgl_mulai]</td>
<td>$r[tgl_selesai]</td>
<td>$r[ket]</td>
</tr>";
$no++;
}
echo "</table>";
echo "<br><br><form action='aksi.php?modul=print&act=ijin' method=POST>
<input type=submit value=Cetak >
</form>
";
}
elseif ($_GET[act]=='tampilkanijin'){
$m=$_POST[bln];
$y=$_POST[thn];
echo "<h2>Laporan Absensi Data Ijin</h2>
<form action=?act=tampilkanijin method=POST>
<table>
<tr><td>Bulan</td><td>:";
$bln=date("m");
combobln2(1,12,'bln',$bln);
$thn_skrg=date("Y");
combotgl2($thn_sekarang-2,$thn_sekarang+2,'thn',$thn_skrg);
echo "
</td><td><input type=submit value=Tampilkan></td></tr>
</table>
</form>
<h2 align=center>Laporan Data Ijin<br>Bulan $m $y</h2>
<table>
<tr><th>no</th><th>NIK</th><th>Nama</th><th>Jabatan</th><th>Tanggal
Mulai</th><th>Tanggal Selesai</th><th>Keterangan</th></tr>";
$tampil=mysql_query("SELECT * from ijin,karyawan,jabatan where
ijin.nik=karyawan.nik and karyawan.kode_jabatan=jabatan.kode_jabatan and
month(tgl_mulai)='$m' and year(tgl_selesai)='$y' order by tgl_mulai");
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
156
$no=1;
while ($r=mysql_fetch_array($tampil)){
$tgl=tgl_indo($r[tanggal]);
echo "<tr><td>$no</td>
<td>$r[nik]</td>
<td>$r[nama]</td>
<td>$r[nama_jabatan]</td>
<td>$r[tgl_mulai]</td>
<td>$r[tgl_selesai]</td>
<td>$r[ket]</td>
</tr>";
$no++;
}
echo "</table>";
echo "<br><br><form action='aksi.php?modul=print&act=tampilkanijin'
method=POST>
<input type=hidden name=m value=$m>
<input type=hidden name=y value=$y>
<input type=submit value=Cetak PDF>
</form>";
}
elseif($_GET[act]=='tambahabsensi'){
echo "
<h2>Tambah Absensi</h2>
<form action='aksi.php?modul=absensi&act=input' method=POST>
<table>
<tr><td>NIK</td><td>: <input type=text name=nik></td></tr>
<tr><td>Tanggal</td><td>:";?> <span id="exampleIII">
<input name="day" type="text" style="width:
18px; border-width: 1px 0 1px 1px;" maxlength="2" /><input value="/"
type="text" style="width: 5px; border-width: 1px 0 1px 0;"
disabled="disabled" /><input name="month" class="textbox" type="text"
style="width: 16px; border-width: 1px 0 1px 0;" maxlength="2" /><input
value="/" type="text" style="width: 5px; border-width: 1px 0 1px 0;"
disabled="disabled" /><input name="year" type="text" style="width: 28px;
border-width: 1px 0 1px 0;" maxlength="4" /><input type="text" style="width:
15px; border-width: 1px 1px 1px 0;" disabled="disabled" /><img
src="images/calendar.gif" id="togglePicker" class="pickerImg" width="13px"
height="12px" alt="" />
</span> </td></tr>
<?php echo "
<tr><td>Jam Masuk</td><td>: <input type=text name=masuk></td></tr>
<tr><td>Jam Istirahat</td><td>: <input type=text
name=istirahat></td></tr>
<tr><td>Jam Msk Istirahat</td><td>: <input type=text
name=msk_istirahat></td></tr>
<tr><td>Jam Keluar</td><td>: <input type=text name=keluar></td></tr>
<tr><td colspan=2><input type=submit value=Simpan name=simpanmodul>
<input type=button value=Batal
onclick=self.history.back()></td></tr>
</table>
</form>
";
}
elseif($_GET[modul]='absensi'){
echo "<h2>Data Absensi Reguler</h2>
<form method=POST action='?act=tambahabsensi'>
<input type=submit value='Tambah Absensi'>
</form>
<form method=POST action='?act=tampil'>
<table>
<tr><td>Tanggal</td><td>:";?> <span id="exampleIII">
<input name="day" type="text" style="width:
18px; border-width: 1px 0 1px 1px;" maxlength="2" /><input value="/"
type="text" style="width: 5px; border-width: 1px 0 1px 0;"
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
157
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
158
include "../config/koneksi.php";
?>
<html>
<head>
<title>:: ABSENSI CV. FLASHINDOMEDIA ::</title>
<link href="../config/adminstyle.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!-.dropdown {
font-size: 11px;
font-weight: normal;
margin-top: 0px;
margin-left: 0px;
float: left;
}
.dropdown dt {border:0px solid #9ac1c9; padding:0px; fontweight:bold; cursor:pointer; }
.dropdown dt:hover {}
.dropdown dd {padding:0px; margin: 0px; position:absolute;
overflow:hidden; display:none; background:#265180; z-index:200; opacity:1.0}
.dropdown ul {padding:0px; margin: 0px;border:1px solid #9AC1C9;
list-style:none; border-top:none; border-bottom: none;}
.dropdown li {display:inline}
.dropdown a {display:block; padding:5px; text-decoration:none; }
.dropdown a:active {display:block; padding:5px; text-decoration:none;
}
.dropdown a:visited {display:block; padding:5px; textdecoration:none; }
.dropdown a:hover {text-decoration: none; }
.dropdown .underline {border-bottom:1px solid #B9D6DC}
.separator {
font-size: 11px;
font-weight: normal;
margin-top: 5px;
margin-left: 0px;
float: left;
color: #fff;
}
-->
</style>
<script type="text/javascript" src="145-komputer-diii_files/mootools.js"></script>
<script type="text/javascript" src="145-komputer-diii_files/caption.js"></script>
<script type="text/javascript">
var DDSPEED = 10;
var DDTIMER = 15;
// main function to handle the mouse events //
function ddMenu(id,d){
var h = document.getElementById(id + '-ddheader');
var c = document.getElementById(id + '-ddcontent');
clearInterval(c.timer);
if(d == 1){
clearTimeout(h.timer);
if(c.maxh && c.maxh <= c.offsetHeight){return}
else if(!c.maxh){
c.style.display = 'block';
c.style.height = 'auto';
c.maxh = c.offsetHeight;
c.style.height = '0px';
}
c.timer = setInterval(function(){ddSlide(c,1)},DDTIMER);
}else{
h.timer = setTimeout(function(){ddCollapse(c)},50);
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
159
}
}
// collapse the menu //
function ddCollapse(c){
c.timer = setInterval(function(){ddSlide(c,-1)},DDTIMER);
}
// cancel the collapse if a user rolls over the dropdown //
function cancelHide(id){
var h = document.getElementById(id + '-ddheader');
var c = document.getElementById(id + '-ddcontent');
clearTimeout(h.timer);
clearInterval(c.timer);
if(c.offsetHeight < c.maxh){
c.timer = setInterval(function(){ddSlide(c,1)},DDTIMER);
}
}
// incrementally expand/contract the dropdown and change the opacity //
function ddSlide(c,d){
var currh = c.offsetHeight;
var dist;
if(d == 1){
dist = (Math.round((c.maxh - currh) / DDSPEED));
}else{
dist = (Math.round(currh / DDSPEED));
}
if(dist <= 1 && d == 1){
dist = 1;
}
c.style.height = currh + (dist * d) + 'px';
c.style.opacity = currh / c.maxh;
c.style.filter = 'alpha(opacity=' + (currh * 100 / c.maxh) + ')';
if((currh < 2 && d != 1) || (currh > (c.maxh - 2) && d == 1)){
clearInterval(c.timer);
}
}
</script>
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
160
<?php
$s=mysql_query("select * from modul where kategori='master'");
while($q=mysql_fetch_array($s)){
echo "<ul><li><a class=underline href=$q[link]>$q[nama_modul] </a></li>
<div class=clr></div>
";
}
echo "</ul></dd></dl>";
?>
<div class="separator">|</div>
<dl class="dropdown">
<dt id="menu3-ddheader" onMouseOver="ddMenu('menu3',1)"
onMouseOut="ddMenu('menu3',-1)">
<li><a href="#">Data Absensi</a></li>
</dt>
<dd id="menu3-ddcontent"
onMouseOver="cancelHide('menu3')" onMouseOut="ddMenu('menu3',-1)">
<?php
$s=mysql_query("select * from modul where kategori='absen'");
while($q=mysql_fetch_array($s)){
echo "<ul><li><a class=underline href=$q[link]>$q[nama_modul] </a></li>
<div class=clr></div>
";
}
echo "</ul></dd></dl>";
?>
<div class="separator">|</div><dl
class="dropdown"><dt id="menu5-ddheader" onMouseOver="ddMenu('menu5',1)"
onMouseOut="ddMenu('menu5',-1)">
<li><a href="#">Laporan</a></li></dt>
<dd id="menu5-ddcontent"
onMouseOver="cancelHide('menu5')" onMouseOut="ddMenu('menu5',-1)">
<?php
$s=mysql_query("select * from modul where kategori='laporan'");
while($q=mysql_fetch_array($s)){
echo "<ul><li><a class=underline href=$q[link]>$q[nama_modul] </a></li>
<div class=clr></div>
";
}
echo "</ul></dd></dl>";
?>
<div class="separator">|</div>
<dl class="dropdown">
<dt id="menu0-ddheader"
onMouseOver="ddMenu('menu0',1)" onMouseOut="ddMenu('menu0',-1)">
<li><a href="logout.php">Logout</a></li>
</dt>
<dd id="menu0-ddcontent"
onMouseOver="cancelHide('menu0')" onMouseOut="ddMenu('menu0',-1)">
<ul></ul>
</dd>
</dl>
</div>
</div>
<p> </p>
</div>
</body>
</html>
<div id="footer">
Copyright © 2009
</div>
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
161
<?
}
?>
Logout.php
<?php
session_start();
session_destroy();
// Apabila setelah logout langsung menuju halaman utama website, aktifkan
baris di bawah ini:
header('location:index.php');
?>
Cek_login.php
<?php
session_start();
include "../config/koneksi.php";
$pass=md5($_POST[pass]);
$nik=$_POST[nik];
$login=mysql_query("SELECT * FROM karyawan WHERE nik='$nik' AND
password='$pass' and level='admin'");
$ketemu=mysql_num_rows($login);
$r=mysql_fetch_array($login);
// Apabila username dan password ditemukan
if ($ketemu > 0){
$_SESSION[namauser]=$r[id_user];
$_SESSION[passuser]=$r[password];
header('location:media.php?modul=home');
}
else{
echo "<link href=../config/adminstyle.css rel=stylesheet type=text/css>";
echo "<center>Login gagal! username & password tidak benar<br>";
echo "<a href=index.php><b>ULANGI LAGI</b></a></center>";
}
?>
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
162
SURAT KETERANGAN
Hasil Uji Program Tugas Akhir
Yang bertanda tangan di bawah ini, menerangkan bahwa Tugas Akhir mahasiswa
Program Diploma 3 Komputer:
Nama
: MIRA BELLINA
NIM
: 062406063
Program Studi
Telah melakukan uji program Tugas Akhir mahasiswa tersebut diatas pada tanggal
.2009
Medan,.2009
Dosen Pembimbing
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.
163
Jl. Bioteknologi No.1 Kampus USU Telp. (061) 8211050 Fax (061) 8214290
MEDAN 20155, Email : Dekanat@FMIPA.USU.AC.ID
KARTU BIMBINGAN TUGAS AKHIR MAHASISWA
Nama Mahasiswa
: MIRA BELLINA
: 062406063
Dosen Pembimbing
NO
TANGGAL
BIMBINGAN
PEMBAHASAN
PADA BAB
PARAF
DOSEN
KETERANGAN
PEMBIMBING
Diketahui/Disetujui oleh
Departemen Matematika FMIPA USU
Ketua,
Dosen Pembimbing
Mira Bellina : Sistem Informasi Absensi Pegawai Pada CV. Flashindomedia Medan Berbasis Web, 2009.