You are on page 1of 173

RANCANG BANGUN SISTEM INFORMASI PENYIMPANAN BERKAS ELEKTRONIK MENGGUNAKAN VALIDASI MD5 BERBASIS CLOUD COMPUTING

SKRIPSI

OLEH NIM NAMA JENJANG STUDI PROGRAM STUDI : 090010398 : I MADE WIRA IRAWAN : STRATA SATU (S1) : SISTEM KOMPUTER

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN TEKNIK KOMPUTER (STMIK) STIKOM BALI 2013

RANCANG BANGUN SISTEM INFORMASI PENYIMPANAN BERKAS ELEKTRONIK MENGGUNAKAN VALIDASI MD5 BERBASIS CLOUD COMPUTING
SKRIPSI
DIAJUKAN SEBAGAI SALAH SATU SYARAT UNTUK MENCAPAI GELAR SARJANA PROGRAM STUDI SISTEM KOMPUTER

OLEH NIM NAMA JENJANG STUDI PROGRAM STUDI : 090010398 : I MADE WIRA IRAWAN : STRATA SATU (S1) : SISTEM KOMPUTER

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN TEKNIK KOMPUTER (STMIK) STIKOM BALI 2013

KATA PENGANTAR
Puji dan syukur penulis panjatkan kehadapan Tuhan Yang Maha Esa, karena atas berkat, rahmat dan penyertaan-Nya. Penulis dapat menyelesaikan tugas akhir (skripsi) yang judul Rancang Bangun Sistem Informasi Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing tepat pada waktunya. Dalam pelaksanaan dan penulisan tugas akhir (skripsi) ini, penulis banyak mendapat masukan dan bantuan dari berbagai pihak. Maka pada kesempatan ini, penulis ingin menyampaikan ucapan terima kasih kepada: 1. Bapak Drs.Dadang Hermawan,Ak.,M.M. selaku Ketua Sekolah Tinggi Manajemen Informatika dan Teknik Komputer (STMIK) STIKOM Bali. 2. Bapak Roy Rudolf Huizen,S.T.,M.T. selaku Pembantu Ketua I (STMIK) STIKOM Bali dan juga selaku pembimbing I yang telah memberikan masukan dalam penyelesaian tugas akhir (skripsi) ini. 3. Bapak I Made Adi Purwantara,S.T.,M.Kom. selaku Ketua Program Studi Sistem Komputer di (STMIK) STIKOM Bali dan juga selaku pembimbing II yang telah memberikan masukan dalam penyelesaian tugas akhir (skripsi) ini. 4. Seluruh Staff dan Dosen Pengajar di lingkungan (STMIK) STIKOM Bali atas bantuan dan ilmunya selama ini. 5. Orang tua, keluarga, penggurus dan staff ARDIN Provinsi Bali, temanteman KUPIT, teman-teman mahasiswa (STMIK) STIKOM Bali, serta semua pihak yang tidak dapat penulis sebutkan satu persatu disini. Penulis berharap mudah-mudahan laporan tugas akhir (skripsi) ini, dapat berguna dan bermanfaat bagi para pembaca. Akhir kata, penulis menyadari bahwa laporan tugas akhir (skripsi) ini jauh dari kata sempurna. Oleh karena itu, penulis mohon kritikan dan saran yang membangun.

Denpasar, 25 Maret 2013

Penulis

RANCANG BANGUN SISTEM INFORMASI PENYIMPANAN BERKAS ELEKTRONIK MENGGUNAKAN VALIDASI MD5 BERBASIS CLOUD COMPUTING ABSTRAK

Cloud computing merupakan suatu layanan baru dalam bidang teknologi informasi, karena menggabungkan pemanfaatan teknologi komputer dan berkembangnya internet. Salah satu contoh layanan berbasis cloud computing adalah media penyimpanan berkas elektronik. Dalam pemanfaatan layanan ini, integritas berkas merupakan suatu hal yang penting bagi pengguna layanan, karena berkas yang disimpan akan dikelola atau diketahui oleh penyedia layanan. Layanan penyimpanan berkas elektronik berbasis cloud computing ini dibuat menggunakan bahasa pemrograman PHP, serta database menggunakan MySQL, dan proses integritas berkas menggunakan validasi dari algoritma MD5 yang terdapat pada bahasa pemrograman PHP. Hasil dari uji coba sistem penyimpanan berkas elektronik menggunakan validasi MD5 berbasis cloud computing adalah sistem telah memberi jaminan integritas berkas melalui pemanfaatan algoritma MD5 melalui pencocokan nilai hash antara berkas yang di-upload dan berkas yang di-download, serta berkas yang disimpan pada sistem dapat diakses dari mana dan kapan saja oleh pengguna layanan karena sistem dibangun berbasis web.

Kata Kunci : Penyimpanan Berkas Elektronik, Cloud Computing, Algoritma MD5

ii

DESIGN INFORMATION SYSTEM ELECTRONIC FILE STORAGE USING VALIDATION MD5 BASED CLOUD COMPUTING ABSTRACT

Cloud computing is a new service in the field of information technology, because it combines the use of computer technology and the development of the Internet. One example of cloud computing-based services is the electronic file storage. In the utilization of these services, file integrity is an important thing for consumers, because the file is stored will be administered or recognized by the service provider. Electronic file storage service based cloud computing is built using PHP programming language and uses the MySQL database. The process of validation of the integrity of the files using the MD5 algorithm contained in the PHP programming language. The results of the test the electronic file storage system using MD5 validation of cloud-based computing are the system has to guarantee the integrity of the files through the use of the MD5 algorithm by matching hash value between the uploaded files and files that are downloaded, as well as files stored on the system can be accessed from anywhere and at any time by the client, because the system is web-based.

Keywords: Electronic File Storage, Cloud Computing, MD5 Algorithm

iii

DAFTAR ISI
Halaman KATA PENGANTAR ..................................................................................................... i ABSTRAK .................................................................................................................... ii DAFTAR ISI ................................................................................................................ iv DAFTAR TABEL ........................................................................................................ vii DAFTAR GAMBAR ................................................................................................... viii

BAB I PENDAHULUAN ............................................................................................ 1 1.1 1.2 1.3 1.4 1.5 1.6 Latar Belakang .......................................................................................... 1 Rumusan Masalah..................................................................................... 2 Tujuan Penelitian ....................................................................................... 2 Manfaat Penelitian ..................................................................................... 2 Ruang Lingkup Penelitian ......................................................................... 3 Metode Penelitian ...................................................................................... 4

BAB II TINJAUAN PUSTAKA ................................................................................... 6 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 Teknologi Informasi ................................................................................... 6 Teknologi Penyimpanan ............................................................................ 6 Sistem Informasi ........................................................................................ 7 Komputer Awan (Cloud Computing) .......................................................... 7 Kriptografi ................................................................................................ 10 Fungsi Hash dan Fungsi Hash Satu Arah ............................................... 11 Algoritma MD5 ......................................................................................... 13 Diagram Alir Data / DFD (Data Flow Diagram)........................................ 17 ERD (Entity Relationship Diagram) ......................................................... 18

2.10 DBMS (Database Management System) ................................................ 19 2.11 MySQL .................................................................................................... 19 2.12 HTML (HyperText Markup Language) ..................................................... 20 2.13 PHP (PHP Hypertext Preprocessor)........................................................ 20 2.14 JavaScript ................................................................................................ 21

BAB III ANALISA DAN DESAIN SISTEM ............................................................... 22 3.1 Analisa Sistem ......................................................................................... 22

iv

3.2 3.3 Sistem Flow ............................................................................................. 23 Data Flow Diagram (DFD) ....................................................................... 23 3.3.1 Diagram Konteks ........................................................................... 23 3.3.2 Diagram Level 0 ............................................................................ 24 3.3.3 Diagram Level 1 pada Proses Login Sistem ................................. 24 3.3.4 Diagram Level 1 pada Proses Pengelolaan Data dan Upload Berkas Pengguna .......................................................................... 24 3.3.5 Diagram Level 1 pada Proses Download Data dan Validasi MD5 ............................................................................................... 27 3.3.6 Diagram Level 1 pada Proses Pengelola Data Penyedia.............. 27 3.3.7 Diagram Level 1 pada Proses Keluhan/ Saran Pengguna Layanan ......................................................................................... 27 3.3.8 Diagram Level 1 pada Proses Laporan ......................................... 29 3.4 3.5 3.6 Entity Relationship Diagram (ERD) ......................................................... 29 Konseptual Database .............................................................................. 29 Struktur Tabel .......................................................................................... 32 3.6.1 Tabel Administrator ...................................................................... 32 3.6.2 Tabel Extension ............................................................................ 32 3.6.3 Tabel Jumlah Space ..................................................................... 33 3.6.4 Tabel Kategori .............................................................................. 33 3.6.5 Tabel Keluhan .............................................................................. 33 3.6.6 Tabel List Download ..................................................................... 34 3.6.7 Tabel Log Administrator ............................................................... 34 3.6.8 Tabel Log Pengguna .................................................................... 35 3.6.9 Tabel Pengguna ........................................................................... 35 3.6.10 Tabel Space ................................................................................. 36 3.6.11 Tabel Upload ................................................................................ 36 3.7 Desain Antarmuka Sistem ....................................................................... 37 3.7.1 Desain Antarmuka Pengguna Layanan ........................................ 37 3.7.2 Desain Antarmuka Penyedia Layanan ......................................... 48

BAB IV IMPLEMENTASI SISTEM ........................................................................... 55 4.1 4.2 Hardware dan Software Pendukung........................................................ 55 Pengujian Sistem .................................................................................... 55 4.2.1 Pengujian Sistem pada Halaman Pengguna Layanan .................. 55

4.2.2 Pengujian Sistem pada Halaman Penyedia Layanan ................... 65 4.2.3 Pengujian Integritas Berkas pada Sistem ...................................... 71

BAB V PENUTUP .................................................................................................... 72 5.1 5.2 Kesimpulan .............................................................................................. 72 Saran ....................................................................................................... 72

DAFTAR PUSTAKA ................................................................................................. 73 LAMPIRAN ............................................................................................................... 74

vi

DAFTAR TABEL
Tabel 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 Halaman

Tabel Administrator .......................................................................................... 32 Tabel Extension ................................................................................................ 32 Tabel Jumlah Space ......................................................................................... 33 Tabel Kategori .................................................................................................. 33 Tabel Keluhan .................................................................................................. 34 Tabel List Download ......................................................................................... 34 Tabel Log Administrator ................................................................................... 35 Tabel Log Pengguna ........................................................................................ 35 Tabel Pengguna ............................................................................................... 35

3.10 Tabel Space ..................................................................................................... 36 3.11 Tabel Upload .................................................................................................... 37 4.1 Tabel Hasil Pengujian Integritas Berkas........................................................... 71

vii

DAFTAR GAMBAR
Gambar 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 Halaman

Lima Komponen Sistem Informasi..................................................................... 7 Komputer Awan (Cloud Computing) .................................................................. 8 Layanan Komputer Awan (Cloud Computing) ................................................. 10 Contoh hashing beberapa pesan dangan panjang sembarangan................... 12 Pembuatan Message Digest dengan Algoritma MD5...................................... 13 Pengolahan blok 512 bit (Proses HMD5) ........................................................... 15 Operasi Dasar MD5 ......................................................................................... 16 Komponen DFD (Data Flow Diagram)............................................................. 18 Skema Sistem Informasi Penyimpanan Berkas Elektronik.............................. 22 Sistem Flow Umum dari Sistem ...................................................................... 23 Diagram Konteks ............................................................................................. 24 Diagram Level 0 .............................................................................................. 25 Diagram Level 1 pada Proses Login Sistem ................................................... 26 Diagram Level 1 pada Pengelolaan Data dan Upload Berkas Pengguna ....... 26 Diagram Level 1 pada Proses Proses Download Data dan Validasi MD5 ...... 27 Diagram Level 1 pada Proses Pengelola Data Penyedia............................... 28 Diagram Level 1 pada Proses Keluhan/ Saran Pengguna Layanan ............... 28

3.10 Diagram Level 1 pada Proses Laporan ........................................................... 29 3.11 Entity Relationship Diagram (ERD) ................................................................. 30 3.12 Konseptual Database ...................................................................................... 31 3.13 Desain Halaman Pengguna Layanan .............................................................. 38 3.14 Desain Menu Kiri Sebelum Login Sistem ........................................................ 38 3.15 Desain Menu Kiri Sesudah Login Sistem ........................................................ 39 3.16 Desain Form Registrasi Perusahaan Pengguna Layanan .............................. 40 3.17 Desain Halaman Login Pengguna Layanan .................................................... 40 3.18 Desain Halaman Merubah Foto Profil ............................................................. 41 3.19 Desain Halaman Merubah Data Personal ....................................................... 41 3.20 Desain Halaman Merubah Password .............................................................. 42 3.21 Desain Halaman Link Promosi ........................................................................ 42 3.22 Desain Halaman Akumulasi Space Anda ........................................................ 42 3.23 Desain Halaman Daftar Perusahaan Mendaftar Melalui Promosi ................... 43 3.24 Desain Halaman Menampilkan Data Folder/ Kategori Berkas ........................ 43

viii

3.25 Desain Halaman Menambahkan Data Folder/ Kategori Berkas ...................... 43 3.26 Desain Halaman Merubah Data Folder/ Kategori Berkas ............................... 44 3.27 Desain Halaman Menampilkan Data/ Berkas yang di-upload ......................... 44 3.28 Desain Halaman Menambah Data/ Berkas Upload ......................................... 44 3.29 Desain Halaman Merubah Data/ Berkas Upload Pada Sistem ....................... 45 3.30 Desain Halaman Menampilkan Daftar Download Terakhir.............................. 45 3.31 Desain Halaman Cek MD5 File Hasil Download ............................................. 46 3.32 Desain Halaman Menampilkan Keluhan dan Saran Pengguna Layanan........ 46 3.33 Desain Halaman Menambah/ Menyampaikan Keluhan dan Saran Pengguna Layanan ......................................................................................... 47 3.34 Desain Halaman Histori Masuk dan Keluar ..................................................... 47 3.35 Desain Halaman Login Penyedia Layanan ..................................................... 48 3.36 Desain Halaman Utama Penyedia Layanan.................................................... 49 3.37 Desain Halaman Menampilkan Data User Penyedia Layanan........................ 49 3.38 Desain Halaman Memasukan Data User Penyedia Layanan ......................... 49 3.39 Desain Halaman Merubah Data User Penyedia Layanan ............................... 50 3.40 Desain Halaman Menampilkan Data Histori User Penyedia Layanan ............ 50 3.41 Desain Halaman Menampilkan Data Space .................................................... 50 3.42 Desain Halaman Merubah Data Space ........................................................... 51 3.43 Desain Halaman Menampilkan Data Ekstensi Berkas .................................... 51 3.44 Desain Halaman Menambahkan Data Ekstensi Berkas .................................. 51 3.45 Desain Halaman Merubah Data Ekstensi Berkas ........................................... 52 3.46 Desain Halaman Menampilkan Data Keluhan/ Saran ..................................... 52 3.47 Desain Halaman Merespon Keluhan/ Saran ................................................... 52 3.48 Desain Halaman Pengguna Layanan Aktif ...................................................... 53 3.49 Desain Halaman Pengguna Layanan Belum dikonfirmasi .............................. 53 3.50 Desain Halaman Mengganti Profil Penyedia Layanan Log-in ......................... 54 3.51 Desain Halaman Mengganti Password Penyedia Layanan............................. 54 4.1 4.2 4.3 4.4 4.5 4.6 4.7 Halaman Registrasi Pengguna Layanan ......................................................... 56 Halaman Login Pengguna Layanan ................................................................ 57 Tampilan Menu Kiri Pengguna Layanan ......................................................... 57 Halaman Ganti Foto Profil Pengguna Layanan ............................................... 58 Halaman Merubah Data Perusahaan Pengguna Layanan .............................. 58 Halaman Ganti Password Pengguna Layanan................................................ 59 Tampilan Halaman Link Promosi..................................................................... 59

ix

4.8 4.9 Tampilan Halaman Akumulasi Space.............................................................. 60 Tampilan Halaman Pendaftar Melalui Link Promosi........................................ 60

4.10 Halaman Menampilkan Data Kategori/ Folder Pengguna Layanan ................ 60 4.11 Halaman Membuat Kategori/ Folder ............................................................... 61 4.12 Halaman Merubah Data Kategori/ Folder ........................................................ 61 4.13 Halaman Menampilkan Berkas Pada kategori/ Folder .................................... 61 4.14 Halaman Meng-upload Berkas ........................................................................ 62 4.15 Halaman Daftar Download Berkas Pengguna Layanan .................................. 62 4.16 Halaman Cek Hash MD5 Berkas..................................................................... 63 4.17 Halaman Daftar Keluhan/ Saran ..................................................................... 63 4.18 Halaman Menyampaikan Keluhan/ Saran Pengguna Layanan ....................... 64 4.19 Halaman Histori Masuk dan Keluar Sistem Pengguna Layanan ..................... 64 4.20 Halaman Login Penyedia Layanan.................................................................. 65 4.21 Halaman Menu Utama Penyedia Layanan ...................................................... 65 4.22 Halaman Menampilkan Data User Penyedia Layanan .................................... 66 4.23 Halaman Menambahkan Data User Penyedia Layanan ................................. 66 4.24 Halaman Merubah Data User Penyedia Layanan ........................................... 66 4.25 Halaman Menampilkan Data Histori Masuk dan Keluar Sistem Penyedia Layanan ........................................................................................... 67 4.26 Halaman Menampilkan Data Space ................................................................ 67 4.27 Halaman Merubah Data Space ....................................................................... 67 4.28 Halaman Menampilkan Data Ekstensi/ Tipe Berkas ....................................... 68 4.29 Halaman Menambah Data Ekstensi/ Tipe Berkas ........................................... 68 4.30 Halaman Merubah Data Ekstensi/ Tipe Berkas............................................... 68 4.31 Halaman Menampilkan Data Keluhan/ Saran Pengguna Layanan ................. 69 4.32 Halaman Merespon Data Keluhan/ Saran Pengguna Layanan....................... 69 4.33 Halaman Menampilkan Data Pengguna Layanan (Perusahaan) Aktif ............ 69 4.34 Halaman Menampilkan Data Pendaftar Belum dikonfirmasi ........................... 70 4.35 Halaman Merubah Data Profil Penyedia Layanan Login................................. 70 4.36 Halaman Merubah Password Penyedia Layanan Login.................................. 70

BAB I PENDAHULUAN
1.1 Latar Belakang Penyimpanan berkas elektronik merupakan bagian dari teknologi penyimpanan dan menjadi salah satu komponen penting pada komputer. Penyimpanan berkas elektronik dikelompokkan dalam teknologi

penyimpanan secara eksternal (external storage) yang memiliki tugas sebagai piranti yang dapat menyimpan data secara permanen, walaupun komputer dalam keadaan mati. Berkembangnya dunia teknologi saat ini, berperan penting dalam perkembangan teknologi penyimpanan berkas elektronik. Salah satu contoh dari perkembangan tersebut adalah media penyimpanan berkas elektronik secara online (online storage). Media penyimpanan berkas elektronik secara online memiliki tujuan yang menguntungkan karena dapat mengatasi masalah penyimpanan berkas dengan baik, sehingga para pengguna dapat dengan mudah mengakses berkas mereka dari mana dan kapan saja tanpa terhalang jarak dan waktu. Internet merupakan bagian terpenting yang tidak dapat dipisahkan dari implementasi media penyimpanan berkas elektronik secara online, karena tanpa adanya internet para pengguna tidak dapat menikmati keuntungan yang dimiliki oleh media penyimpanan berkas elektronik secara online tersebut. Oleh karena itu, dengan gabungan antara pemanfaatan teknologi komputer dan berkembangnya internet

memunculkan suatu layanan baru dalam bidang teknologi informasi yang disebut dengan komputer awan (cloud computing). Cloud computing dalam media penyimpanan berkas elektronik secara online memiliki tujuan untuk menciptakan suatu layanan penyimpanan berkas elektronik yang dapat digunakan oleh penguna secara luas tanpa harus melakukan investasi, baik investasi dari segi hardware maupun software

pendukungnya. Selain keuntungan yang dimiliki dari implementasi tersebut, pasti juga terdapat kekurangannya. Salah satu kekurangannya adalah masalah keutuhan/ integritas data, dimana data yang pengguna simpan dalam

2 media penyimpanan berkas elektronik ini akan dikelola atau diketahui oleh para penyedia layanan. Oleh karena itu untuk menjaga keutuhan/ integritas data, maka penyedia layanan dapat memanfaatkan algoritma MD5 (Message-Digest Algorithm 5) untuk validasinya. Algoritma MD5 ini berfungsi untuk menjamin keutuhan/ integritas data, agar data yang diupload dan di-download oleh para pengguna pada media penyimpanan berkas elektronik tetap sama dan dapat dipertanggungjawabkan

keutuhannya. Sehingga dengan demikian, pada penelitian ini mengambil tema Rancang Bangun Sistem Informasi Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing.

1.2

Rumusan Masalah Berdasarkan uraian pada latar belakang penelitian, maka rumusan masalah pada penelitian ini adalah bagaimana merancang dan membangun sistem informasi penyimpanan berkas elektronik

menggunakan validasi MD5 berbasis cloud computing?

1.3

Tujuan Penelitian Tujuan penelitian yang ingin dicapai, sesuai dengan rumusan masalah diatas adalah untuk merancang dan membangun sistem informasi penyimpanan berkas elektronik berbasis cloud computing yang dilengkapi dengan fasilitas jaminan keutuhan/ integritas berkas

menggunakan validasi dari algoritma MD5.

1.4

Manfaat Penelitian Manfaat yang ingin didapat dari tujuan penelitian terhadap sistem yang dibangun untuk para pengguna layanan pada penelitian ini, antara lain sebagai berikut: 1. Sistem yang dibangun dapat digunakan oleh pengguna layanan secara luas tanpa harus membeli hardware maupun software pendukung sebelum menggunakan layanan penyimpanan berkas elektronik. 2. Sistem yang dibangun dapat memberikan jaminan keutuhan/ integritas berkas kepada pengguna layanan, melalui pemanfaatan validasi Algoritma MD5 pada bahasa pemrograman PHP dalam

3 pencocokan nilai hash antara berkas yang di-upload dengan berkas yang di-download. 3. Berkas yang disimpan pada sistem juga dapat diakses dari mana dan kapan saja oleh pengguna layanan, karena sistem dibangun berbasis web.

1.5

Ruang Lingkup Penelitian Ruang lingkup penelitian dan pembuatan sistem Rancang Bangun Sistem Informasi Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing adalah sebagai berikut: 1. Sistem penyimpanan berkas elektronik dibangun menggunakan bahasa pemrograman PHP (PHP: Hypertext Preprocessor) dan user interface menggunakan HTML (HyperText Markup

Language). 2. Database yang dirancang pada penelitian ini, diimplementasikan dengan menggunakan database MySQL. 3. Sistem yang dibangun belum dilengkapi dengan manajemen berkas secara detail, serta proses backup dan restore berkas layaknya media penyimpanan pada umumnya. 4. Fitur validasi MD5 (Message-Digest Algorithm 5) pada sistem, memanfaatkan fungsi yang sudah ada pada bahasa pemrograman PHP, sehingga pada penelitian ini hanya membahas konsep algoritma MD5 secara umum. 5. Jenis layanan yang digunakan pada sistem, agar dapat dikatakan sebagai sistem berbasis cloud computing adalah menggunakan jenis layanan berbasis SaaS (Software as a Service). Sistem yang berbasis SaaS memiliki tujuan agar sistem dapat dimanfaatkan oleh pengguna layanan tanpa harus membeli hardware maupun software pendukung sebelum menggunakan layanan pada sistem. 6. Pada sistem ini terdapat 2 user yang saling berinteraksi, yaitu user administrator merupakan user penyedia layanan yang

menerapkan kebijakan dan user pengguna layanan merupakan perusahaan terdaftar yang sudah dikonfirmasi oleh penyedia layanan sebagai pengguna layanan aktif.

4 7. User pengguna layanan dapat mengakses berkas mereka melalui e-mail dan password yang terdaftar pada sistem dengan menggunakan web browser dan proses ini masih bersifat single user. 8. Layanan ini bersifat gratis dan space layanan didapat dari pendaftaran yang sudah dikonfirmasi oleh penyedia layanan, serta bonus space didapat melalui hasil promosi yang dilakukan oleh pengguna layanan. 9. Berkas yang boleh di-upload merupakan berkas bertipe Portable Document Format (PDF) yang bertujuan untuk meminimalkan terjadinya perubahan berkas secara mudah dan tipe berkas dapat ditambah sesuai dengan kebijakan dari penyedia layanan. 10. User administrator tidak memiliki hak akses untuk melihat berkasberkas yang di-upload oleh user pengguna layanan melalui sistem karena berkas bersifat rahasia dari pengguna layanan. 11. Fitur validasi MD5 pada sistem bertujuan agar file yang didownload oleh user pengguna, integritas dan keutuhan berkasnya sama dengan file yang tercatat pada sistem. Proses ini dilakukan melalui pencocokan hasil hash yang didapat dari file melalui pemanfaatan algoritma MD5 pada bahasa pemrograman PHP. 12. Sistem tidak memberikan konfirmasi atau pemberitahuan atas segala kegiatan yang dilakukan oleh pengguna layanan melalui email yang terdaftar pada sistem.

1.6

Metode Penelitian Dalam membantu proses penyelesaian permasalahan pada Rancang Bangun Sistem Informasi Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing, maka

menggunakan 4 teknik metode penelitian, antara lain: 1. Teknik Pengumpulan Data Teknik pengumpulan data menggunakan 2 metode pengumpulan data yaitu metode observasi dan studi literatur. Metode observasi merupakan metode yang dilakukan untuk mengumpulkan data melalui pengamatan secara langsung terhadap objek-objek terkait, seperti mengunjungi situs-situs penyimpanan berkas secara

5 online. Sedangkan metode studi literatur, merupakan metode pengumpulan data yang dilakukan melalui buku atau jurnal ilmiah yang berhubungan dengan permasalahan, seperti buku atau jurnal yang berhubungan dengan media penyimpanan, algoritma MD5, dan cloud computing agar dapat dijadikan referensi/ acuan dalam memecahkan permasalahan yang dihadapi. 2. Analisa dan Desain Pada tahap analisa dan desain sistem, dilakukan proses analisis dan desain terhadap masalah sesuai dengan batasan masalah agar mudah dipahami. Pada tahap ini akan merancang dan menghasilkan DFD (Data Flow Diagram), ERD (Entity

Relationship Diagram), serta dilanjutkan dengan merancang tampilan (interface) sebagai antarmuka antara sistem dan pengguna nantinya. 3. Implementasi dan Uji Coba Sistem Pada tahap ini, rancangan dari hasil analisa dan desain, kemudian diimplementasikan dengan menggunakan bahasa pemrograman PHP (PHP: Hypertext Preprocessor), database menggunakan MySQL, tampilan (user interface) dibangun menggunakan HTML (HyperText Markup Language). Setelah itu dilanjutkan dengan melakukan serangkaian uji coba terhadap sistem, guna

mengetahui apakah sistem yang dibangun sudah berjalan dengan benar sesuai dengan rancangan dan memperbaiki sistem jika masih terdapat kesalahan. 4. Penulisan Laporan Pada tahap penulisan laporan, akan membuat laporan yang mencakup seluruh penelitian, dari tahap awal sampai tahap akhir penelitian.

BAB II TINJAUAN PUSTAKA


2.1 Teknologi Informasi Teknologi informasi (information technology) atau yang biasa disebut TI, IT, maupun infotech secara implisit dan eksplisit tidak sekedar berupa teknologi komputer, tetapi juga mencakup teknologi telekomunikasi. Sehingga dengan kata lain, teknologi informasi adalah gabungan antara teknologi komputer dan teknologi telekomunikasi (Abdul Kadir & Terra CH. Triwahyuni, 2005). Teknologi komputer merupakan teknologi yang berhubungan dengan komputer dan termasuk peralatan-peralatan yang berhubungan dengan komputer, seperti printer, pembaca sidik jari, bahkan CD-ROM. Komputer pada dasarnya merupakan mesin serbaguna yang dapat dikontrol oleh program dan digunakan untuk mengolah data menjadi informasi. Sedangkan, teknologi komunikasi (teknologi telekomunikasi) merupakan teknologi yang berhubungan dengan komunikasi jarak jauh dan kategori yang termasuk dalam teknologi komunikasi adalah telepon, radio dan televisi. Secara lebih terperinci teknologi informasi dibagi menjadi 6 kelompok teknologi, yakni: 1. Teknologi komunikasi 2. Teknologi masukan 3. Teknologi keluaran 4. Teknologi perangkat lunak 5. Teknologi penyimpanan, dan 6. Teknologi mesin pemroses.

2.2

Teknologi Penyimpanan Teknologi penyimpanan yang merupakan salah satu dari teknologi informasi, dibedakan menjadi 2 kelompok yaitu memori internal dan penyimpanan eksternal (Abdul Kadir & Terra CH. Triwahyuni, 2005). Memori internal (main memory atau memori utama) berfungsi sebagai media penyimpanan sementara, baik data, program, maupun

7 informasi ketika proses pengolahannya dilaksanakan oleh CPU.

Sedangkan penyimpanan eksternal (external storage) dikenal juga dengan sebutan penyimpanan sekunder, merupakan segala piranti yang berfungsi untuk menyimpan data secara permanen. Permanen dapat diartikan bahwa data yang terdapat pada media penyimpanan akan tetap terpelihara dengan baik walaupun komputer sudah dalam keadaan mati (tidak mendapat aliran listrik). Contoh dari memori internal adalah ROM (Read-Only Memory) dan RAM (Random Access Memory), sedangkan contoh dari penyimpanan eksternal adalah Harddisk, Flashdisk, CD, DVD, Disket.

2.3

Sistem Informasi Sistem informasi merupakan sistem yang dibuat oleh manusia yang terdiri dari komponen-komponen atau prosedur dari organisasi untuk mencapai suatu tujuan yaitu menyajikan informasi bagi pengambil keputusan guna untuk mengendalikan suatu organisasi (Al-Bahra Bin Ladjamudin, 2005). Komponen-komponen yang terdapat pada sistem informasi dibagi menjadi 5 komponen dan diklasifikasikan sebagai berikut: 1. Hardware dan software yang berfungsi sebagai mesin. 2. People dan Procedures yang merupakan manusia dan tata cara menggunakan mesin, dan 3. Data merupakan jembatan penghubung antara manusia dan mesin agar terjadi suatu proses pengolahan data.

Hardware (Perangkat keras)

Software (Perangkat Lunak)

DATA

Procedures (Prosedur)

People (Manusia)

Mesin

Manusia

Gambar 2.1 Lima Komponen Sistem Informasi

2.4

Komputer Awan (Cloud Computing) Komputer awan (cloud computing) merupakan gabungan antara pemanfaatan teknologi komputer dengan perkembangan berbasis internet. Awan (cloud) adalah metafora dari internet, sebagaimana awan

8 yang sering digambarkan pada diagram jaringan komputer. Sehingga awan dalam cloud computing merupakan abstraksi dari infrastruktur kompleks yang disembunyikan (Elcom, 2012). Cloud computing menerapkan suatu metode komputasi yang kapabilitasnya terkait dengan teknologi informasi yang disajikan sebagai suatu layanan/ service sehingga pengguna dapat mengaksesnya melalui internet tanpa mengetahui apa yang ada di dalamnya.

Gambar 2.2 Komputer Awan (Cloud Computing) Sejarah cloud computing berawal dari tahun 1960-an, saat John McCarthy seorang pakar komputasi MIT yang dikenal juga sebagai salah satu pionir intelejensia buatan, menyampaikan visi bahwa Suatu hari nanti komputasi akan menjadi infrastruktur publik seperti listrik dan telepon. Cloud computing mempunyai 3 jenis layanan yaitu IaaS (Infrastructure as a Service), PaaS (Platform as a Service) dan SaaS (Software as a Service) dengan arti sebagai berikut (Elcom, 2012): 1. IaaS (Infrastructure as a Service) IaaS terletak pada level paling bawah. IaaS adalah sebuah layanan yang menyewakan sumber daya teknologi informasi dasar yang meliputi media penyimpanan, processing power, memory, sistem operasi, kapasitas jaringan. IaaS digunakan pengguna untuk menjalankan aplikasi yang dibuatnya. Model

9 bisnisnya mirip dengan penyedia data center yang menyewakan ruangan untuk co-location, tetapi lebih ke level mikronya dan pengguna tidak perlu tahu dengan mesin apa dan bagaimana caranya penyedia layanan menyediakan layanan IaaS, sehingga yang terpenting adalah permintaan mereka atas sumber daya dasar teknologi informasi itu dapat dipenuhi. 2. PaaS (Platform as a Service) PaaS merupakan layanan yang menyediakan modul-modul siap pakai dan dapat digunakan untuk mengembangkan sebuah aplikasi. Pengguna layanan PaaS tidak memiliki kendali terhadap sumber daya komputasi dasar karena semua akan diatur oleh provider layanan ini. Contoh Layanan PaaS adalah Google AppEngine yang menyediakan tools untuk mengembangkan aplikasi diatas platform Google dengan menggunakan bahasa pemrograman Phyton dan Django. 3. SaaS (Software as a Service) SaaS merupakan layanan cloud computing yang paling dulu populer. Software as a Service ini merupakan evolusi lebih lanjut dari konsep ASP (Aplication Service Provider). Sesuai dengan namanya, SaaS memberikan kemudahan bagi pengguna untuk dapat memanfaatkan sumber daya perangkat lunak dengan cara berlangganan, sehingga pengguna tidak perlu mengeluarkan biaya investasi software dan hardware pendukung. Pengguna layanan ini berlangganan melalui web, sehingga dapat langsung menggunakan berbagai fitur yang disediakan oleh penyedia layanan dan pengguna tidak memiliki kendali penuh atas aplikasi yang mereka sewa, tetapi hanya mengendalikan fitur-fitur aplikasi yang telah disediakan oleh penyedia layananan. Arsitektur SaaS bersifat multi-tenant maka memaksa penyedia untuk menyediakan fitur yang bersifat umum dan tidak spesifik terhadap kebutuhan pengguna tertentu. Contoh layanan SaaS adalah CRM Online, Word Processor seperti Google Docs, Project Management, hingga Invoicing Online.

10

Gambar 2.3 Layanan Komputer Awan (Cloud Computing) Layanan internet yang disebut atau dapat dikatakan sebagai cloud computing, harus memenuhi beberapa syarat antara lain (Elcom, 2012): 1. Layanan bersifat On Demand yaitu pengguna dapat berlangganan sesuai dengan kebutuhan dan hanya membayar untuk yang digunakan. 2. Layanan bersifat elastis/scalable, yaitu pengguna kapan saja dapat menambah atau mengurangi jenis dan kapasitas layanan yang diinginkan, serta sistem selalu mengakomodasi perubahan tersebut. 3. Layanan sepenuhnya dikelola oleh penyedia/ provider, sehingga pengguna hanyalah membutuhkan komputer personal/ notebook dengan koneksi internet.

2.5

Kriptografi Kriptografi (cryptography) berasal dari bahasa yunani cryptos artinya secret (rahasia) dan graphein artinya writing (tulisan), sehingga kriptografi merupakan tulisan rahasia (secret writing). Selain itu kriptografi juga diartikan sebagai ilmu dan seni untuk menjaga keamanan pesan atau merupakan ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi seperti kerahasiaan, integritas data, serta otentikasi (Rinaldi Munir, 2006).

11 Kata seni di dalam definisi diatas berasal dari fakta sejarah bahwa pada masa-masa awal sejarah kriptografi setiap orang mungkin mempunyai cara yang unik untuk merahasiakan pesan. Cara-cara unik tersebut berbeda-beda pada setiap pelaku kriptografi, sehingga setiap cara menulis pesan rahasia mempunyai nilai estetika tersendiri. Oleh karena itu kriptografi berkembang menjadi sebuah seni merahasiakan pesan. Tujuan yang dapat dirangkum mengenai kriptografi dalam memberikan layanan keamanan atau yang juga dapat dinamakan sebagai aspek-aspek keamanan antara lain: 1. Kerahasiaan (confidentiality) adalah layanan yang ditujukan untuk menjaga agar pesan tidak dapat dibaca oleh pihak-pihak yang tidak berhak. 2. Integritas data (data integrity) adalah layanan yang menjamin bahwa pesan masih asli/ utuh atau belum pernah dimanipulasi selama pengiriman. 3. Otentikasi (authentication) adalah layanan yang berhubungan dengan identifikasi, baik mengidentifikasi kebenaran pihak-pihak yang berkomunikasi (user authentication atau entity authentication) maupun mengidentifikasi kebenaran sumber pesan (data origin authentication). 4. Nirpenyangkalan mencegah entitas (non-repudiation) yang adalah layanan untuk untuk berkomunikasi melakukan

penyangkalan, yaitu pengirim pesan menyangkal melakukan pengiriman atau penerima pesan menyangkal telah menerima pesan.

2.6

Fungsi Hash dan Fungsi Hash Satu Arah Fungsi hash merupakan sebuah fungsi yang sesuai untuk aplikasi keamanan seperti otentikasi dan integritas pesan. Fungsi ini sering juga disebut dengan fungsi hash kriptografi. Fungsi hash akan menerima masukan string yang panjangnya sembarangan dan mengkonversinya menjadi string keluaran yang panjangnya tetap (fixed) dan umumnya berukuran jauh lebih kecil daripada ukuran string semula (Rinaldi Munir,2006).

12

Keterangan: h = nilai hash atau message digest. H = fungsi hash yang mengkompresi sembarang pesan. M = pesan yang berukuran sembarangan

M asu k an

N ila i h a s h

H a lo

F ungsi hash

a a 6 d f5 7 fb 6 fe 3 7 7 d 8 0 b4a257b4a92cba

N o m o r te le p o n k u 08122113451

F ungsi hash

0 9 c 8 8 f0 b 9 1 d 7 4 b 2 9 2 e 6 f8 9 5 8 7 a b 6 3 9 2 1

" T s u n a m i" m e n ja d i k a ta y a n g p o p u le r d i In d o n e s ia s a a t in i

F ungsi hash

a9 9 6d e11 8c6 1 ea c4 9 63989aa2d73e67e

Gambar 2.4 Contoh hashing beberapa pesan dangan panjang sembarangan Fungsi hash satu arah (one-way hash) adalah hash yang bekerja dalam satu arah. Pesan yang sudah diubah menjadi message digest tidak dapat dikembalikan lagi menjadi pesan semula. Pada fungsi hash satu arah ini, dua pesan yang berbeda akan selalu menghasilkan nilai hash yang berbeda pula (Rinaldi Munir, 2006). Sifat-sifat fungsi hash satu arah adalah sebagai berikut: 1. Fungsi H dapat diterapkan pada blok data berukuran berapa saja. 2. H menghasilkan nilai (h) dengan panjang tetap (fixed-lenght output). 3. H(x) mudah dihitung untuk setiap x yang diberikan. 4. Untuk setiap h yang diberikan, tidak mungkin menemukan x sedemikian sehingga H(x) = h. Itulah sebabnya fungsi H dikatakan fungsi hash satu arah (one-way hash function). 5. Untuk setiap x yang diberikan, tidak mungkin mencari y x sedemikian sehingga H(y) = H(x). 6. Tidak mungkin (secara komputasi) mencari pasangan x dan y sedemikian sehingga H(x) = H(y).

13 Fungsi hash adalah publik (tidak dirahasiakan), dan keamanannya terletak pada sifat satu arahnya. Fungsi hash satu arah yang sudah pernah dibuat orang, antara lain: MD2, MD4, MD5, Secure Hash Function (SHA), RIPMEND, WHIRLPOOL, tetapi fungsi hash satu-arah yang banyak digunakan dalam kriptografi adalah MD5 dan SHA.

2.7

Algoritma MD5 Algoritma MD5 adalah fungsi hash satu arah yang dibuat oleh Ronald Rivest pada tahun 1991. MD5 merupakan perbaikan dari MD4 setelah MD4 berhasil diserang oleh kriptanalis. Algoritma MD5 menerima masukan berupa pesan dengan ukuran sembarangan dan menghasilkan message digest yang panjangnya 128 bit (Rinaldi Munir,2006).

Gambar 2.5 Pembuatan Message Digest dengan Algoritma MD5 Langkah-langkah pembuatan message digest secara garis besar adalah: 1. Penambahan bit-bit pengganjal (padding bits). Pesan ditambahkan dengan sejumlah bit pengganjal sehingga panjang pesan (dalam satuan bit) kongruen dengan 448 modulo 512. Ini berarti panjang pesan setelah ditambah bit-bit pengganjal adalah 64 bit kurang dari kelipatan 512. Angka 512 muncul karena MD5 memproses pesan dalam blok-blok yang berukuran 512. Pesan dengan panjang 448 bit pun tetap ditambah dengan bit-bit pengganjal. Jika panjang pesan 448 bit, maka pesan tersebut

14 ditambah dengan 512 bit menjadi 960 bit. Jadi, panjang bit-bit penganjal adalah antara 1 sampai 512. Bit-bit penganjal terdiri dari sebuah bit 1 diikuti dengan sisanya bit 0. 2. Penambahan nilai panjang pesan semula. Pesan yang telah diberi bit-bit pengganjal, selanjutnya ditambah lagi dengan 64 bit yang menyatakan panjang pesan semula. Jika panjang pesan > 264, maka yang diambil adalah panjangnya dalam modulo 264. Sehingga dengan kata lain, jika panjang pesan semula adalah K bit, maka 64 bit yang ditambahkan menyatakan K modulo 264. Setelah ditambahkan dengan 64 bit, panjang pesan sekarang menjadi kelipatan 512 bit. 3. Inisialisasi penyangga (buffer) MD. MD5 membutuhkan 4 buah penyangga (buffer) yang masingmasing panjangnya 32 bit. Total panjangnya penyangga adalah (4x32) = 128 bit. Keempat penyangga ini menampung hasil antara dan hasil akhir dan keempat penyangga ini diberi nama A,B,C,D sehingga setiap penyangga diinisialisasi dengan nilai-nilai (dalam notasi HEX) sebagai berikut: A = 01234567 B = 89ABCDEF C = FEDCBA98 D = 76543210 Tetapi ada beberapa versi MD5 yang menggunakan nilai inisialisasi berbeda, yaitu: A = 67452301 B = EFCDAB89 C = 98BADCFE D = 1032467) 4. Pengolahan pesan dalam blok berukuran 512 bit. Pesan dibagi menjadi L buah blok yang sama-sama panjangnya 512 bit (Y0 sampai YL-1). Setiap blok 512 bit diproses bersama dengan penyangga MD menjadi keluaran 128 bit, dan ini disebut dengan proses HMD5.

15

Gambar 2.6 Pengolahan blok 512 bit (Proses HMD5) Proses HMD5 terdiri dari 4 buah putaran, dan masing-masing putaran melakukan operasi dasar MD5 sebanyak 16 kali dan setiap operasi dasar memakai sebuah elemen T, sehingga setiap putaran memakai 16 elemen tabel T. Pada gambar diatas (Gambar 2.6), Yq menyatakan blok 512 bit ke-q dari pesan yang telah ditambah bit-bit pengganjal dan tambahan 64 bit nilai panjang pesan semula. MDq adalah message digest 128 bit dari proses HMD5 ke-q dan pada awal proses MDq berisi nilai inisialisasi penyangga MD. Fungsi-fungsi fF, fG, fH, fI pada (Gambar 2.6) diatas, masingmasing berisi 16 kali operasi dasar terhadap masukan, setiap operasi dasar menggunakan elemen Tabel T.

16

Gambar 2.7 Operasi Dasar MD5 Operasi dasar MD5 yang diperlihatkan pada (Gambar 2.7) dapat ditulis dengan sebuah persamaan sebagai berikut: a b + CLSs(a + g(b,c,d) + X[k] + T[i]) yang dalam hal ini:
a,b,c,d = empat buah peubah penyangga 32 bit (berisi nilai penyangga A,B,C,D). g CLSs X[k] T[i] + = salah satu fungsi F,G,H,I. = circular left shift sebanyak s bit (notasi:<<< s). = kelompok 32 bit ke-k dari blok 512 bit message ke-q. Nilai k=0 sampai 15. = elemen Tabel T ke-i (32 bit). = operasi penjumlahan modulo 232.

17 Karena ada 16 kali operasi dasar, maka setiap kali selesai satu operasi dasar, penyangga-penyangga itu digeser ke kanan secara sirkuler dengan cara pertukaran sebagai berikut: temp d dc cb ba a temp Pergeseran tersebut, dalam hal ini nilai penyangga a yang baru disalin ke dalam penyangga b, nilai penyangga b (yang lama) disalin ke dalam penyangga c, nilai penyangga c (yang lama) disalin ke dalam penyangga d, dan nilai penyangga d (yang lama) disalin ke dalam penyangga a.

2.8

Diagram Alir Data / DFD (Data Flow Diagram) Diagram alir data/ DFD (Data Flow Diagram) merupakan model dari sistem untuk menggambarkan pembagian sistem ke modul yang lebih kecil. Salah satu keuntungan menggunakan diagram alir data adalah memudahkan pemakai atau user yang kurang menguasai bidang komputer untuk mengerti sistem yang akan dikerjakan (Al-Bahra Bin Ladjamudin, 2005). Dalam diagram alir data terdapat beberapa diagram yang terbagi menjadi 3 diagram, antara lain sebagai berikut: 1. Diagram Konteks Diagram konteks merupakan diagram yang terdiri dari suatu proses dan menggambarkan ruang lingkup suatu sistem. Diagram konteks merupakan diagram level tertinggi dari DFD karena menggambarkan keseluruhan dari masukan ke sistem dan keluaran dari sistem dan dalam pembuatan diagram konteks tidak boleh ada data store. 2. Diagram Nol / Zero (Overview Diagram) Diagram Nol merupakan diagram yang menggambarkan proses dari data flow diagram. Diagram nol ini memberikan pandangan secara aliran menyeluruh data, dan mengenai sistem Pada yang level ditangani, ini sudah menunjukkan tentang fungsi-fungsi utama atau proses yang ada, eksternal entity.

18 dimungkinkan adanya/ digambarkannya data store yang

digunakan dan untuk proses yang tidak dirinci lagi pada level selanjutnya, dapat menggunakan simbol * atau P (Functional Primitive) yang dapat ditambahkan pada akhir dari tiap nomer proses. Keseimbangan input dan output (balancing) antara diagram 0 dengan diagram konteks terpelihara. 3. Diagram Rinci (Level Diagram) Diagram rinci merupakan diagram yang menguraikan proses apa yang ada dalam diagram zero atau diagram level diatasnya.

Gambar 2.8 Komponen DFD (Data Flow Diagram)

2.9

ERD (Entity Relationship Diagram) Diagram Hubungan Entitas (entity relation diagram) adalah model data berupa notasi grafis dalam pemodelan data konseptual yang menggambarkan hubungan antara penyimpan (Edhy Sutanta, 2004). Model data ini merupakan sekumpulan cara, peralatan untuk mendeskripsikan data-data yang berhubungan antara data yang satu dengan yang lain, semantiknya, serta batasan konsistensi. Model data pada entity relation diagram terdiri dari tiga komponen yaitu entitas, atribut, dan kerelasian antara entitas. Secara garis besar entitas merupakan obyek dasar yang terlibat dalam sistem. Atribut berperan sebagai penjelasan entitas dan kerelasian yang menunjukkan hubungan yang terjadi diantara dua entitas tersebut.

19 2.10 DBMS (Database Management System) Database Management System (DBMS) merupakan perangkat lunak sistem yang memungkinkan para pemakai membuat, memelihara, mengontrol dan mengakses basis data dengan cara yang praktis dan efisien. DBMS dapat digunakan untuk mengakomodasikan berbagai macam pemakai yang memiliki kebutuhan akses yang berbeda-beda (Abdul Kadir, 2003). Software yang tergolong kedalam DBMS antara lain, Microsoft SQL, MySQL, Oracle, MS. Access, dan lain sebagainya.

2.11

MySQL MySQL merupakan sebuah program database server yang mampu menerima dan mengirim datanya dengan sangat cepat, multi user, serta menggunakan perintah standar SQL (Structured Query Language) (Bunafit Nugroho, 2005). MySQL memiliki dua bentuk lisensi yang juga merupakan keuntungan para penggunanya, yaitu FreeSoftware dan Shareware. MySQL License). Kelebihan yang dimiliki oleh MySQL dibandingkan database lainnya adalah sebagai berikut: 1. MySQL sebagai Database Management System (DBMS). 2. MySQL sebagai Relational Database Management System (RDBMS). 3. MySQL merupakan sebuah software database yang OpenSource. 4. MySQL merupakan sebuah database server. 5. MySQL juga merupakan sebuah database client. 6. MySQL mampu menerima query yang bertumpuk dalam satu perintah atau yang disebut dengan Multi-Threading. 7. MySQL merupakan database yang menyimpan data dengan kapasitas besar. 8. MySQL didukung oleh driver ODBC. 9. MySQL adalah database menggunakan enskripsi password. 10. MySQL merupakan database server yang multi user, dll. yang sering digunakan pada umumnya adalah MySQL FreeSoftware yang berada di bawah lisensi GNU/GLP (General Public

20

2.12

HTML (HyperText Markup Language) HTML (HyperText Markup Language) merupakan sebuah bahasa markah yang digunakan untuk membuat sebuah halaman web statis (Abdul Kadir, 2003). Pada saat ini, versi terbaru dari HTML adalah HTML 5 yang merupakan perkembangan dari HTML 4 dengan mengalami perbaikan yang cukup signifikan yang dapat mempermudah pengembangan website. Keuntungan yang didapat saat menggunakan HTML 5, antara lain sebagai berikut: 1. Fiturnya masih berdasarkan pada HTML, CSS, DOM, dan JavaScript. 2. Mengurangi penggunaan plugin dari pihak ketiga, seperti: Flash dan Ms. Silverlight. 3. Penanganan kesalahan lebih mudah diatasi. 4. Lebih Markup dan Scripting. 5. Lebih independen, dan 6. Pengembangan ke publik yang lebih baik.

2.13

PHP (PHP Hypertext Preprocessor) PHP (PHP Hypertext Preprocessor) yang digunakan sebagai bahasa script server-side dalam pengembangan web yang disisipkan pada dokumen HTML. Penggunaan PHP memungkinkan web dapat dibuat dengan dinamis sehingga maintenance situs web tersebut menjadi lebih mudah dan efisien (Kasiman Peranginangin, 2006). PHP memiliki banyak kelebihan yang tidak dimiliki oleh bahasa script sejenisnya karena PHP difokuskan pada pembuatan script serverside yang bisa melakukan apa saja yang dapat dilakukan oleh CGI (Common Gateway Interface), seperti mengumpulkan data di form, menghasilkan isi halaman web dinamis, dan kemampuan mengirim serta menerima cookies, bahkan lebih daripada kemampuan CGI. CGI sendiri merupakan skrip tertua dalam bidang pemrograman web dan suatu standar untuk menghubungkan berbagai program aplikasi ke halaman web.

21 PHP dapat digunakan pada semua sistem operasi, antara lain Linux, Unix (termasuk variannya HP-UX, Solaris, dan OpenBSD), Microsoft Windows, Mac OS X, RISC OS. PHP juga mendukung banyak web server, seperti Apache, Microsoft Internet Information Server (MIIS), Personal Web Server (PWS), Netscape and iPlanet Servers, dll.

2.14

JavaScript JavaScript merupakan bahasa yang digunakan untuk membuat program agar dokumen HTML yang ditampilkan dalam browser menjadi lebih interaktif dan tidak sekedar indah (Betha Sidik, 2011). JavaScript memberikan beberapa fungsionalitas ke dalam halaman web, sehingga dapat menjadi sebuah program yang disajikan dengan menggunakan antarmuka web. JavaScript merupakan bahasa script yang tidak memerlukan kompiler untuk menjalankannya karena cukup dengan menggunakan interpreter. JavaScript merupakan bahasa script yang ringan dan mudah digunakan, sehingga dengan adanya JavaScript maka halaman web tidak sekedar menjadi halaman data atau informasi saja, tetapi juga dapat menjadi suatu program aplikasi dengan antarmuka web.

BAB III ANALISA DAN DESAIN SISTEM


3.1 Analisa Sistem Pada tahap analisa dan desain sistem akan membahas tentang sistem informasi penyimpanan berkas elektronik menggunakan validasi MD5 berbasis cloud computing. Sistem yang akan dibangun, datanya akan disimpan pada suatu server (cloud) yang dapat diakses dari mana saja dan secara bebas oleh para pengguna yang telah terdaftar pada sistem melalui komputer personal/ notebook yang memiliki koneksi internet dan terinstall aplikasi web browser, karena sistem dibangun berbasis web. Sistem ini juga dilengkapi dengan validasi MD5 yang bertujuan untuk memberi jaminan keutuhan/ integritas berkas para pengguna (perusahaan yang terdaftar pada sistem), sehingga berkas yang di-upload ke sistem sama dengan berkas yang di-download dari sistem.

Gambar 3.1 Skema Sistem Informasi Penyimpanan Berkas Elektronik

22

23

3.2

Sistem Flow Sistem Flow merupakan bagan yang menggambarkan hubungan antara input, proses dan output dari sistem yang akan diimplementasikan ke sistem komputer. Bagan ini menjelaskan urutan prosedur-prosedur yang ada di dalam sistem.

Gambar 3.2 Sistem Flow Umum dari Sistem

3.3

Data Flow Diagram (DFD) Data flow diagram (DFD) atau yang sering disebut diagram alir data berfungsi untuk menunjukkan aliran data yang terjadi pada sistem. Data flow diagram ini pada umumnya terdiri dari beberapa level, yaitu Diagram Konteks, Level 0, Level 1 dan seterusnya.

3.3.1

Diagram Konteks Diagram konteks merupakan sebuah diagram sederhana yang menggambarkan hubungan antara entitas luar, masukan dan keluaran dari sistem (Gambar 3.3).

24

3.3.2

Diagram Level 0 Diagram level 0 ini berfungsi untuk mengetahui proses yang ada pada diagram konteks. Proses pada diagram konteks dipecah menjadi 8 proses dan terdapat 11 data store. (Gambar 3.4).

3.3.3

Diagram Level 1 pada Proses Login Sistem Diagram level 1 pada proses login sistem, dikembangkan menjadi 2 proses yaitu proses login pengguna sistem dan proses login penyedia sistem. Perkembangan dari proses ini, merupakan perkembangan dari proses login sistem yang terdapat diagram level 0 (Gambar 3.5).

3.3.4

Diagram Level 1 pada Proses Pengelolaan Data dan Upload Berkas Pengguna Diagram level 1 pada proses pengelolaan data dan upload berkas pengguna, dikembangkan menjadi 2 proses yaitu proses

pengelolaan data pengguna (data profil) dan proses upload berkas pengguna. Perkembangan dari proses ini, merupakan

perkembangan dari proses pengelolaan data dan upload berkas pengguna yang terdapat diagram level 0 (Gambar 3.6).

Gambar 3.3 Diagram Konteks

25

Gambar 3.4 Diagram Level 0

26

Gambar 3.5 Diagram Level 1 pada Proses Login Sistem

Gambar 3.6 Diagram Level 1 pada Pengelolaan Data dan Upload Berkas Pengguna

27

3.3.5

Diagram Level 1 pada Proses Download Data dan Validasi MD5 Diagram level 1 pada proses download data dan validasi MD5, dikembangkan menjadi 2 proses yaitu proses download data dan proses validasi MD5. Perkembangan dari proses ini, merupakan perkembangan dari proses download data dan validasi MD5 yang terdapat diagram level 0 (Gambar 3.7).

Gambar 3.7 Diagram Level 1 pada Proses Proses Download Data dan Validasi MD5

3.3.6

Diagram Level 1 pada Proses Pengelola Data Penyedia Diagram level 1 pada proses pengelola data penyedia (data master), dikembangkan menjadi 3 proses yaitu proses pengelola data administrator, pengelola data extension, dan pengelola data space. Perkembangan dari proses ini, merupakan perkembangan dari proses pengelola data penyedia yang terdapat diagram level 0 (Gambar 3.8).

3.3.7

Diagram Level 1 pada Proses Keluhan/ Saran Pengguna Layanan Diagram level 1 pada proses keluhan/ saran pengguna layanan, dikembangkan menjadi 2 proses yaitu proses penyampaian data keluhan/saran dari pengguna sistem dan proses respon data keluhan/ saran dari penyedia sistem. Perkembangan dari proses

28 ini, merupakan perkembangan dari proses keluhan/ saran pengguna layanan yang terdapat diagram level 0 (Gambar 3.9).

Gambar 3.8 Diagram Level 1 pada Proses Pengelola Data Penyedia

Gambar 3.9 Diagram Level 1 pada Proses Keluhan/ Saran Pengguna Layanan

29 3.3.8 Diagram Level 1 pada Proses Laporan Diagram level 1 pada proses laporan, dikembangkan menjadi 2 proses yaitu proses laporan data upload kepada pengguna layanan dan proses laporan space terpakai kepada penyedia layanan. Perkembangan dari proses ini, merupakan

perkembangan dari proses laporan yang terdapat diagram level 0 (Gambar 3.10).

Gambar 3.10 Diagram Level 1 pada Proses Laporan

3.4

Entity Relationship Diagram (ERD) Entity Relationship Diagram (ERD) merupakan model konseptual yang mendeskripsikan hubungan antara penyimpanan yang terdapat pada DFD. ERD sendiri menggunakan sejumlah notasi dan simbol untuk menggambarkan struktur dan hubungan antara data (Gambar 3.11).

3.5

Konseptual Database Konseptual database merupakan suatu media penyimpanan yang digunakan untuk menyimpan data-data penunjang sebagai masukan sistem dan kemudian diolah menjadi data keluaran sistem (Gambar 3.12).

30

Gambar 3.11 Entity Relationship Diagram (ERD)

31

Gambar 3.12 Konseptual Database

32 3.6 Struktur Tabel Struktur tabel yang terdapat pada database sistem informasi penyimpanan berkas elektronik menggunakan validasi MD5 berbasis cloud computing adalah sebagai berikut:

3.6.1

Tabel Administrator Nama Tabel Fungsi : tb_administrator : untuk menyimpan data profil administrator.

Tabel 3.1 Tabel Administrator No 1 Nama Field id_administrator Tipe Data int(10) Keterangan Primary Key Auto Increment 2 3 4 5 6 7 nm_administrator mail_administrator pass_administrator hak_administrator security_question answer_question varchar(30) varchar(100) varchar(50) char(1) varchar(100) varchar(100) -

3.6.2

Tabel Extension Nama Tabel Fungsi : tb_extension : untuk menyimpan data extension yang boleh diupload ke sistem beserta besar ukuran file per extension.

Tabel 3.2 Tabel Extension No 1 Nama Field id_extension Tipe Data int(10) Keterangan Primary Key Auto Increment 2 3 4 nm_extension extension_file maximum_size_file vachar(30) varchar(5) int(10) -

33 3.6.3 Tabel Jumlah Space Nama Tabel Fungsi : tb_jml_space : untuk menyimpan jumlah space yang didapat oleh pengguna layanan baik space pendaftaran maupun space bonus.

Tabel 3.3 Tabel Jumlah Space No 1 Nama Field id_jml_space Tipe Data int(10) Keterangan Primary Key Auto Increment 2 3 4 tgl_jml_space id_space id_pengguna datetime int(10) int(10) Foreign Key Foreign Key

3.6.4

Tabel Kategori Nama Tabel Fungsi : tb_kategori : untuk menyimpan data kategori/ folder dari data yang akan di-upload.

Tabel 3.4 Tabel Kategori No 1 Nama Field id_kategori Tipe Data int(10) Keterangan Primary Key Auto Increment 2 3 4 nm_kategori tgl_buat_kategori id_pengguna vachar(100) datetime int(10) Foreign Key

3.6.5

Tabel Keluhan Nama Tabel Fungsi : tb_keluhan : untuk menyimpan data keluhan/ saran dari pengguna, serta menyimpan data respon dari penyedia berdasarkan keluhan/ saran pengguna sistem.

34

Tabel 3.5 Tabel Keluhan No 1 Nama Field id_keluhan Tipe Data int(10) Keterangan Primary Key Auto Increment 2 3 4 5 6 7 8 id_pengguna tgl_keluhan judul_keluhan keluhan tgl_tanggapan tanggapan id_administrator int(10) datetime varchar(50) text datetime text int(10) Foreign Key Foreign Key

3.6.6

Tabel List Download Nama Tabel Fungsi : tb_list_download : untuk menyimpan history data yang di-download oleh pengguna layanan.

Tabel 3.6 Tabel List Download No 1 Nama Field id_download Tipe Data int(10) Keterangan Primary Key Auto Increment 2 3 4 tgl_download id_upload id_pengguna datetime int(10) int(10) Foreign Key Foreign Key

3.6.7

Tabel Log Administrator Nama Tabel Fungsi : tb_log_administrator : untuk menyimpan history log-in dan log-out dari administrator atau penyedia layanan.

35 Tabel 3.7 Tabel Log Administrator No 1 Nama Field id_log_administrator Tipe Data int(10) Keterangan Primary Key Auto Increment 2 3 4 id_administrator log_date status_log int(10) datetime varchar(3) Foreign Key -

3.6.8

Tabel Log Pengguna Nama Tabel Fungsi : tb_log_pengguna : untuk menyimpan history log-in dan log-out dari pengguna layanan.

Tabel 3.8 Tabel Log Pengguna No 1 Nama Field id_log_pengguna Tipe Data int(10) Keterangan Primary Key Auto Increment 2 3 4 id_pengguna log_date status_log int(10) datetime varchar(3) Foreign Key -

3.6.9

Tabel Pengguna Nama Tabel Fungsi : tb_pengguna : untuk menyimpan data-data profil pengguna layanan.

Tabel 3.9 Tabel Pengguna No 1 Nama Field id_pengguna Tipe Data int(10) Keterangan Primary Key Auto Increment 2 3 tgl_registrasi nm_pengguna datetime varchar(50) -

36 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 nm_pimpinan alamat_pengguna telp_pengguna no_siup mail_pengguna pass_pengguna fb_pengguna twitter_pengguna tanya_pengguna jawab_pengguna img_pengguna status_konfirmasi tgl_konfirmasi rekomendasi id_administrator varchar(50) varchar(100) varchar(20) varchar(50) varchar(50) varchar(50) varchar(50) varchar(50) varchar(100) varchar(100) varchar(100) char(1) datetime int(10) int(10) Foreign Key

3.6.10 Tabel Space Nama Tabel Fungsi : tb_space : untuk menyimpan data master space layanan.

Tabel 3.10 Tabel Space No 1 Nama Field id_space Tipe Data int(10) Keterangan Primary Key Auto Increment 2 3 ket_space space varchar(100) int(10) -

3.6.11 Tabel Upload Nama Tabel Fungsi : Tabel Upload : untuk menyimpan data yang di-upload oleh pengguna layanan.

37 Tabel 3.11 Tabel Upload No 1 Nama Field id_upload Tipe Data int(10) Keterangan Primary Key Auto Increment 2 3 4 5 6 7 8 9 10 nm_upload ket_upload id_kategori type_file size_file file md5_file id_pengguna tgl_upload varchar(100) text int(10) varchar(100) varchar(100) varchar(100) varchar(100) int(10) datetime Foreign Key Foreign Key -

3.7

Desain Antarmuka Sistem Desain antarmuka sistem (User Interface) merupakan bagian dari sistem informasi yang digunakan sebagai media atau alat komunikasi antara user dan system. Desain antarmuka dari sistem informasi penyimpanan berkas elektronik menggunakan validasi MD5 berbasis cloud computing adalah sebagai berikut:

3.7.1

Desain Antarmuka Pengguna Layanan Desain antarmuka (User Interface) pengguna layanan, dirancang guna mempermudah pengguna dalam menggunakan sistem informasi ini. Desain antarmuka pengguna layanan antara lain sebagai berikut ini: 1. Desain Halaman Pengguna Layanan. Desain halaman pengguna layanan ini, merupakan desain secara keseluruhan dari halaman pengguna layanan.

38

Gambar 3.13 Desain Halaman Pengguna Layanan 2. Desain Menu Kiri Halaman Pengguna Layanan. Desain menu kiri halaman pengguna layanan terdiri dari 2 jenis desain, yaitu desain pada saat pengguna layanan belum login dan pada saat pengguna layanan setelah login.

Gambar 3.14 Desain Menu Kiri Sebelum Login Sistem

39

Gambar 3.15 Desain Menu Kiri Sesudah Login Sistem

3. Desain Form Registrasi Pengguna Layanan Desain form registrasi pengguna layanan diperuntukkan bagi pengguna yang tertarik dan ingin mendaftarkan diri sebagai pengguna layanan (Gambar 3.16).

4. Desain Halaman Login Pengguna Layanan. Desain halaman login pengguna layanan digunakan sebagai halaman awal untuk mengakses data dari pengguna layanan dengan cara memasukan alamat e-mail dan password yang telah didaftarkan sebelumnya (Gambar 3.17).

40

Gambar 3.16 Desain Form Registrasi Perusahaan Pengguna Layanan

SELAMAT DATANG HALAMAN PERUSAHAAN PENGGUNA LAYANAN E-Mail Perusahaan Password Masuk Ke Halaman Pengguna Belum Memiliki ACCOUNT, Silahkan Registrasi Dulu Lupa Password, Lakukan Proses Forget Password

Gambar 3.17 Desain Halaman Login Pengguna Layanan

41 5. Desain Halaman Maintenance Data Pengguna Layanan. Desain halaman maintenance data pengguna layanan diperuntukkan untuk mengganti foto profil, dan merubah data personal pengguna layanan, ganti password

pengguna layanan.

Gambar 3.18 Desain Halaman Merubah Foto Profil

Gambar 3.19 Desain Halaman Merubah Data Personal

42

Gambar 3.20 Desain Halaman Merubah Password 6. Desain Halaman Informasi Space Anda. Desain halaman informasi space anda, terdiri dari halaman link promosi, akumulasi space anda, dan pendaftar yang menggunakan promosi anda.

Gambar 3.21 Desain Halaman Link Promosi

Gambar 3.22 Desain Halaman Akumulasi Space Anda

43

Gambar 3.23 Desain Halaman Daftar Perusahaan Mendaftar Melalui Promosi

7. Desain Halaman Upload Berkas. Desain halaman upload berkas, terdiri dari desain halaman menampilkan, menambah, merubah data folder/ kategori berkas, serta menampilkan, menambah, merubah data berkas yang di-upload pada sistem.

Gambar 3.24 Desain Halaman Menampilkan Data Folder/ Kategori Berkas

Gambar 3.25 Desain Halaman Menambahkan Data Folder/ Kategori Berkas

44

Gambar 3.26 Desain Halaman Merubah Data Folder/ Kategori Berkas

Gambar 3.27 Desain Halaman Menampilkan Data/ Berkas yang di-upload

Gambar 3.28 Desain Halaman Menambah Data/ Berkas Upload

45

Nama File Keterangan Folder Kategori Upload File


Rubah Data BROWSE

Gambar 3.29 Desain Halaman Merubah Data/ Berkas Upload Pada Sistem

8. Desain Halaman Menampilkan Daftar Download Terakhir. Desain halaman menampilkan Daftar Download Terakhir ini digunakan untuk menampilkan data yang pernah didownload oleh para pengguna layanan pada sistem.

Gambar 3.30 Desain Halaman Menampilkan Daftar Download Terakhir 9. Desain Halaman Cek MD5 File Hasil Download. Desain halaman cek MD5 File hasil download digunakan untuk melakukan proses pengecekan dan pencocokan antara hasil data yang di-download dengan data yang diupload pada sistem.

46

Gambar 3.31 Desain Halaman Cek MD5 File Hasil Download

10. Desain Halaman Keluhan dan Saran. Desain halaman keluhan dan saran ini digunakan untuk penyampaian keluhan dan saran kepada penyedia layanan melalui menu keluhan dan saran yang terdapat pada pengguna layanan.

Gambar 3.32 Desain Halaman Menampilkan Keluhan dan Saran Pengguna Layanan

47

Gambar 3.33 Desain Halaman Menambah/ Menyampaikan Keluhan dan Saran Pengguna Layanan

11. Desain Halaman Histori Masuk dan Keluar Sistem. Desain halaman histori masuk dan keluar sistem

digunakan untuk menampilkan data histori masuk dan keluar sistem pengguna layanan.

Gambar 3.34 Desain Halaman Histori Masuk dan Keluar

48 3.7.2 Desain Antarmuka Penyedia Layanan Desain antarmuka (User Interface) penyedia layanan, dirancang guna mempermudah penyedia layanan dalam

menggunakan sistem informasi ini. Desain antarmuka penyedia layanan antara lain sebagai berikut ini:

1. Desain Halaman Login Sistem Penyedia Layanan Desain halaman login sistem penyedia layanan merupakan halaman pertama sebelum memasuki menu-menu pada halaman penyedia layanan. Halaman ini berfungsi sebagai pengenal, apakah email dan password yang dimasukkan memang merupakan data yang terdaftar atau tidak.

SELAMAT DATANG HALAMAN ADMINISTRATOR Alamat E-Mail Password Masuk Ke Halaman Administrator Lupa Password

Gambar 3.35 Desain Halaman Login Penyedia Layanan

2. Desain Halaman Utama Penyedia Layanan Desain halaman utama penyedia layanan merupakan menu utama yang berisi menu-menu yang dimiliki oleh penyedia layanan (Gambar 3.36).

3. Desain Halaman Data User Penyedia Layanan Desain halaman data user penyedia layanan berfungsi untuk mengelola data-data user penyedia layanan

(Gambar 3.37 Gambar 3.40).

49

Gambar 3.36 Desain Halaman Utama Penyedia Layanan

DATA USER ADMINISTRATOR

Daftar Data | Input Data Baru | Menampilkan Log Administrator NO | NAMA LENGKAP | E-MAIL | HAK AKSES | PERTANYAAN | JAWABAN | MENU ADMIN

DATA TABEL

Gambar 3.37 Desain Halaman Menampilkan Data User Penyedia Layanan

Gambar 3.38 Desain Halaman Memasukan Data User Penyedia Layanan

50

Gambar 3.39 Desain Halaman Merubah Data User Penyedia Layanan

Gambar 3.40 Desain Halaman Menampilkan Data Histori User Penyedia Layanan

4. Desain Halaman Setting Space Desain halaman setting space pada halaman penyedia layanan berfungsi untuk menerapkan kebijakan jumlah space yang diberikan pada saat pendaftaran pertama dan bonus promosi.

Gambar 3.41 Desain Halaman Menampilkan Data Space

51

Gambar 3.42 Desain Halaman Merubah Data Space

5. Desain Halaman Setting Ekstensi Berkas Desain halaman setting ekstensi berkas merupakan halaman untuk mengelola data-data ekstensi yang boleh di-upload oleh pengguna layanan.

Gambar 3.43 Desain Halaman Menampilkan Data Ekstensi Berkas

Gambar 3.44 Desain Halaman Menambahkan Data Ekstensi Berkas

52

Gambar 3.45 Desain Halaman Merubah Data Ekstensi Berkas

6. Desain Halaman Keluhan/ Saran Penyedia Layanan Desain halaman keluhan/ saran pada halaman penyedia layanan untuk menampilkan data-data keluhan/ saran dari pengguna layanan, serta membalas atau memberikan respon tanggapan mengenai keluhan/ saran tersebut.

Gambar 3.46 Desain Halaman Menampilkan Data Keluhan/ Saran

Gambar 3.47 Desain Halaman Merespon Keluhan/ Saran

53 7. Desain Halaman Menampilkan Data Pengguna Layanan Desain halaman menampilkan data pengguna layanan merupakan halaman untuk menampilkan data-data

pengguna layanan (perusahaan terdaftar) baik data yang sudah dikonfirmasi oleh penyedia layanan atau data yang belum aktif (belum dikonfirmasi).

Gambar 3.48 Desain Halaman Pengguna Layanan Aktif

Gambar 3.49 Desain Halaman Pengguna Layanan Belum dikonfirmasi

8. Desain Halaman Merubah Data Penyedia Layanan Log-in Desain halaman merubah data penyedia layanan log-in merupakan halaman untuk merubah data personal

penyedia layanan secara pribadi dan untuk mengganti password mereka.

54

Gambar 3.50 Desain Halaman Mengganti Profil Penyedia Layanan Log-in

Gambar 3.51 Desain Halaman Mengganti Password Penyedia Layanan

BAB IV
IMPLEMENTASI

SISTEM

4.1

Hardware dan Software Pendukung Hardware atau perangkat keras yang dibutuhkan pada rancang bangun sistem informasi penyimpanan berkas elektronik menggunakan validasi MD5 berbasis cloud computing tidaklah terlalu tinggi. Spesifikasi yang digunakan masih tergolong terjangkau untuk komputer pada umumnya. Perangkat keras yang merupakan kebutuhan dari

implementasi sistem adalah sebagai berikut: 1. Personal Komputer dengan processor dual core atau sejenisnya. 2. Memori 1 GB. 3. Hardisk 320 GB. 4. Monitor. 5. Mouse dan Keyboard.

Sedangkan, untuk software atau perangkat lunak yang dibutuhkan oleh sistem ini antara lain: 1. Sistem Operasi, Seperti Windows (Windows Xp Sp 2 dan Windows 7). 2. Aplikasi Web Server, seperti Xampp versi 1.6.8 dengan Apache 2.2.9, dan database MySQL 5.0.67 (Community Server). 3. Web Browser, seperti Mozilla Firefox Versi 19.0.2 atau Google Chrome Versi 25.0.1364.172 m.

4.2

Pengujian Sistem Pengujian sistem ini, dilakukan pada komputer yang telah ditentukan dan terdapat 2 halaman sistem yaitu halaman pengguna layanan (halaman perusahaan yang telah terdaftar) dan halaman penyedia layanan (halaman administrator).

4.2.1

Pengujian Sistem pada Halaman Pengguna Layanan Pengujian sistem pada halaman pengguna layanan antara lain sebagai berikut:

55

56 1. Halaman Registrasi Pengguna Layanan. Halaman registrasi pengguna layanan diperuntukkan bagi pengguna yang ingin mendaftarkan diri sebagai pengguna layanan.

Gambar 4.1 Halaman Registrasi Pengguna Layanan

2. Halaman Login Pengguna Layanan Halaman login pengguna layanan merupakan halaman login untuk pengguna layanan, sebelum dapat mengakses berkas mereka pada sistem. Halaman ini membutuhkan

57 alamat e-mail dan password yang telah didaftarkan sebelumnya.

Gambar 4.2 Halaman Login Pengguna Layanan

3. Tampilan Menu Kiri Pengguna Layanan Tampilan menu kiri pengguna layanan merupakan

tampilan menu-menu yang dapat diakses oleh pengguna layanan dan pada tampilan ini, juga terdapat informasi space pengguna layanan.

Gambar 4.3 Tampilan Menu Kiri Pengguna Layanan

4. Halaman Ganti Photo Profil Pengguna Layanan Halaman ganti photo profil pengguna layanan digunakan untuk mengganti photo profil pengguna layanan.

58

Gambar 4.4 Halaman Ganti Foto Profil Pengguna Layanan

5. Halaman Merubah Data Perusahaan Pengguna Layanan Halaman merubah data perusahaan pengguna layanan digunakan untuk mengganti data profil perusahaan

pengguna layanan.

Gambar 4.5 Halaman Merubah Data Perusahaan Pengguna Layanan

59 6. Halaman Ganti Password Pengguna Layanan Halaman ganti password pengguna layanan diperuntukkan bagi pengguna layanan yang ingin mengganti password mereka.

Gambar 4.6 Halaman Ganti Password Pengguna Layanan

7. Halaman Informasi Space Anda Halaman informasi space anda merupakan halaman untuk menampilkan link promosi untuk pengguna lain yang ingin mendaftar, akumulasi space anda serta informasi

pengguna yang terdaftar menggunakan link promosi pengguna layanan.

Gambar 4.7 Tampilan Halaman Link Promosi

60

Gambar 4.8 Tampilan Halaman Akumulasi Space

Gambar 4.9 Tampilan Halaman Pendaftar Melalui Link Promosi

8. Halaman Upload Berkas Pengguna Layanan Halaman upload berkas terdiri dari membuat dan

menampilkan data kategori atau folder berkas, serta menampilkan dan menambah berkas yang ingin di-upload.

Gambar 4.10 Halaman Menampilkan Data Kategori/ Folder Pengguna Layanan

61

Gambar 4.11 Halaman Membuat Kategori/ Folder

Gambar 4.12 Halaman Merubah Data Kategori/ Folder

Gambar 4.13 Halaman Menampilkan Berkas Pada kategori/ Folder

62

Gambar 4.14 Halaman Meng-upload Berkas

9. Halaman Daftar Download Berkas Pengguna Layanan Halaman daftar download berkas pengguna layanan digunakan untuk menampilkan data berkas yang pernah di-download oleh pengguna layanan.

Gambar 4.15 Halaman Daftar Download Berkas Pengguna Layanan

10. Halaman Cek Hash MD5 Berkas Halaman cek hash MD5 berkas digunakan untuk

mengecek, apakah hasil berkas yang di-download sudah sama dengan berkas yang terdapat pada server melalui hasil hash MD5.

63

Gambar 4.16 Halaman Cek Hash MD5 Berkas

11. Halaman Keluhan/ Saran Pengguna Layanan Halaman keluhan/ saran pengguna layanan merupakan halaman untuk mengelola data keluhan atau saran. Pada halaman ini terdapat halaman untuk menyampaikan serta daftar keluhan atau saran yang telah disampaikan kepada penyedia layanan.

Gambar 4.17 Halaman Daftar Keluhan/ Saran

64

Gambar 4.18 Halaman Menyampaikan Keluhan/ Saran Pengguna Layanan

12. Halaman Histori Masuk dan Keluar Sistem Pengguna Layanan Halaman histori masuk dan keluar sistem untuk pengguna layanan digunakan untuk menampilkan data masuk dan keluar sistem pengguna layanan.

Gambar 4.19 Halaman Histori Masuk dan Keluar Sistem Pengguna Layanan

65 4.2.2 Pengujian Sistem pada Halaman Penyedia Layanan Pengujian sistem pada halaman penyedia layanan antara lain sebagai berikut:

1. Halaman Login Penyedia Layanan Halaman login penyedia layanan digunakan sebagai halaman akses penyedia layanan untuk masuk ke halaman penyedia layanan. Login penyedia layanan ini,

memerlukan alamat e-mail dan password yang telah terdaftar pada sistem.

Gambar 4.20 Halaman Login Penyedia Layanan

2. Halaman Menu Utama Penyedia Layanan Halaman menu utama penyedia layanan merupakan halaman yang berisikan menu-menu yang dapat diakses oleh penyedia layanan untuk mengakses data-data pada sistem.

Gambar 4.21 Halaman Menu Utama Penyedia Layanan

66 3. Halaman Data User Penyedia Layanan Halaman data user penyedia layanan digunakan untuk menampilkan data-data user penyedia layanan, menambahkan, merubah serta menghapus data user penyedia layanan.

Gambar 4.22 Halaman Menampilkan Data User Penyedia Layanan

Gambar 4.23 Halaman Menambahkan Data User Penyedia Layanan

Gambar 4.24 Halaman Merubah Data User Penyedia Layanan

67

Gambar 4.25 Halaman Menampilkan Data Histori Masuk dan Keluar Sistem Penyedia Layanan

4. Halaman Setting Data Space Halaman setting data space digunakan untuk setting data space awal pendaftaran dan bonus space dari link promosi pengguna layanan.

Gambar 4.26 Halaman Menampilkan Data Space

Gambar 4.27 Halaman Merubah Data Space

68 5. Halaman Setting Data Ekstensi/ Tipe Berkas Halaman setting data ekstensi/ tipe berkas digunakan untuk menambah, merubah dan menampilkan data

ekstensi/ tipe berkas yang boleh diupload oleh pengguna layanan.

Gambar 4.28 Halaman Menampilkan Data Ekstensi/ Tipe Berkas

Gambar 4.29 Halaman Menambah Data Ekstensi/ Tipe Berkas

Gambar 4.30 Halaman Merubah Data Ekstensi/ Tipe Berkas

6. Halaman Data Keluhan/ Saran Pada Penyedia Layanan Halaman data keluhan/ saran pada penyedia layanan digunakan untuk mengelola data keluhan/ saran dari pengguna layanan. Pengelolaan tersebut, seperti

menampilkan data keluhan/ saran, serta merespon data keluhan/ saran dari pengguna layanan.

69

Gambar 4.31 Halaman Menampilkan Data Keluhan/ Saran Pengguna Layanan

Gambar 4.32 Halaman Merespon Data Keluhan/ Saran Pengguna Layanan 7. Halaman Menampilkan Data Pengguna Layanan Aktif Halaman menampilkan data pengguna layanan

(perusahaan) aktif digunakan untuk menampilkan datadata pengguna layanan (perusahaan) aktif yang telah dikonfirmasi penyedia layanan.

Gambar 4.33 Halaman Menampilkan Data Pengguna Layanan (Perusahaan) Aktif

70 8. Halaman Menampilkan Data Pendaftar Belum dikonfirmasi Halaman menampilkan data pendaftar belum dikonfirmasi digunakan untuk menampilkan data-data pendaftar yang belum di konfirmasi oleh penyedia layanan. Pada halaman ini, juga dilengkapi dengan proses konfirmasi pendaftaran oleh penyedia layanan.

Gambar 4.34 Halaman Menampilkan Data Pendaftar Belum dikonfirmasi

9. Halaman Merubah Data User Penyedia Layanan Login Halaman merubah data user penyedia layanan login merupakan halaman untuk merubah data profil dan password penyedia layanan yang sedang login ke sistem.

Gambar 4.35 Halaman Merubah Data Profil Penyedia Layanan Login

Gambar 4.36 Halaman Merubah Password Penyedia Layanan Login

71 4.2.3 Pengujian Integritas Berkas pada Sistem Pengujian integritas berkas pada sistem dilakukan dengan pemanfaatan algoritma MD5 pada bahasa pemrograman PHP dengan cara melakukan pencocokan antara nilai hash antara berkas yang di-upload dengan berkas yang di-download.

Pengujian integritas berkas yang dilakukan mendapatkan hasil seperti tabel dibawah ini (Tabel 4.1).

Tabel 4.1 Hasil Integritas Berkas


No 1 2 3 4 5 Nama Berkas Data 1.pdf Data 2.pdf Data 3.pdf Data 4.pdf Data 5.pdf Nilai Hash Berkas pada saat di-upload fcbb04111924070f1684af 82f67d8849 e44a9eb655182ff1ce366a a5d787518e f747d64e8cbaf7f40158fe8 58eb94944 cd709b5838f50716bfa78a 353edd8fee b593e1d0478855c5e4560 59ab849118f Nilai Hash Berkas pada saat di-download fcbb04111924070f1684af 82f67d8849 e44a9eb655182ff1ce366a a5d787518e f747d64e8cbaf7f40158fe8 58eb94944 cd709b5838f50716bfa78a 353edd8fee b593e1d0478855c5e4560 59ab849118f

dari hasil nilai hash antara berkas yang di-upload dengan berkas yang di-download pada sistem melalui tabel diatas (Tabel 4.1), maka sistem sudah dapat memberikan jaminan integritas berkas kepada pengguna layanan melalui pemanfaatan validasi algoritma MD5 yang terdapat pada bahasa pemrograman PHP dengan cara melakukan pencocokan nilai hash antara berkas yang di-upload dan berkas yang di-download.

BAB V PENUTUP
5.1 Kesimpulan Kesimpulan yang didapat dari hasil perancang dan pembuatan sistem informasi penyimpanan berkas elektronik menggunakan validasi MD5 berbasis cloud computing adalah sebagai berikut: 1. Sistem dapat digunakan oleh pengguna layanan melalui registrasi, sehingga Pengguna layanan tidak perlu membeli hardware maupun software pendukung atau membuat aplikasi sendiri, sebelum menggunakan atau memanfaatkan layanan media

penyimpanan berkas elektronik. 2. Sistem dapat memberikan jaminan integritas berkas antara berkas yang di-upload dan di-download melalui pemanfaatan validasi Algoritma MD5 dalam bahasa pemrograman PHP. 3. Pengguna layanan dapat mengakses berkas yang disimpan pada sistem dari mana dan kapan saja melalui komputer yang terinstall aplikasi web browser karena sistem dibangun berbasis web.

5.2

Saran Sistem informasi penyimpanan berkas elektronik menggunakan validasi MD5 berbasis cloud computing dapat dikembangkan lagi agar menjadi sistem yang lebih kompleks, pengembangan sistem yang dapat dilakukan antara lain: 1. Menambahkan sistem multi user pada halaman pengguna layanan, agar berkas yang disimpan pada sistem dapat diakses oleh team kerja dari pengguna layanan. 2. Sistem dapat dikembangkan dengan menambahkan manajemen berkas secara detail, serta proses backup dan restore berkas layaknya media penyimpanan pada umumnya. 3. Sistem dapat dikembangkan menjadi sistem berbayar.

72

DAFTAR PUSTAKA
Bin Ladjamudin, Al-Bahra. 2005. Analisis dan Desain Sistem Informasi. Yogyakarta: Penerbit Graha Ilmu. Elcom. 2012. Cloud Computing Aplikasi Berbasis Web yang Mengubah Cara Kerja dan Kolaborasi Anda Secara Online. Yogyakarta: Penerbit Andi. Kadir, Abdul. 2003. Pengenalan Sistem Informasi. Yogyakarta: Penerbit Andi Kadir, Abdul dan Triwahyuni, Terra CH. 2005. Pengenalan Teknologi Informasi. Yogyakarta: Penerbit Andi. Khafidli, M. Firgiawan, 2011. Trik Menguasai HTML 5 CSS3 PHP Aplikatif. Yogyakarta: Penerbit Lokamedia Munir, Rinaldi. 2006. Kriptografi. Badung: Penerbit Informatika. Nugroho, Bunafit. 2005. Database Relasional dengan MySQL. Yogyakarta: Penerbit Andi. Peranginangin, Kasiman. 2006. Aplikasi WEB dengan PHP dan MySQL. Yogyakarta: Penerbit Andi. Sidik, Betha. 2011. JavaScript. Badung: Penerbit Informatika. Sutanta, Edhy. 2004. Sistem Basis Data. Yogyakarta: Penerbit Graha Ilmu.

73

LAMPIRAN SOURCE CODE PROGRAM


Nama File : cek_md5_file.php <?php include_once("cek_status_login.php"); include_once("configuration_pengguna.php"); include_once("koneksi.php"); $id_upload=$_GET['id_upload']; $sql_detail_data="select a.*, b.* from tb_upload a, tb_pengguna b where a.id_pengguna=b.id_pengguna and a.id_upload='$id_upload'"; $hasil_detail_data=mysql_query($sql_detail_data); $row_detail_data=mysql_fetch_assoc($hasil_detail_data); ?> <link href="css/style_pengguna_2.css" rel="stylesheet" type="text/css" /> <table width="500" border="0" align="center" bgcolor="#FFFFFF"> <tr> <td colspan="3" align="center" background="images/background-kiri.png" class="textjudul" height="33"><strong>INFORMASI FILE</strong></td> </tr> <tr> <td width="154" valign="top">&nbsp;</td> <td width="3" valign="top">&nbsp;</td> <td width="329" valign="top">&nbsp;</td> </tr> <tr> <td valign="top"><strong>Nama File</strong></td> <td valign="top"><strong>:</strong></td> <td valign="top"> <?php //************************* menampilkan tipe file $data_fileupload=$row_detail_data['file']; //echo "$data_fileupload"; $pecah_nama_fileupload = explode(".", $data_fileupload); $jml_pecahan_nama_fileupload = count($pecah_nama_fileupload)-1; // jumlah pecahan -1 u/ mengetahui pecahan terakhir //echo $jml_pecahan_nama_fileupload; $hasil_ekstensi_fileupload = $pecah_nama_fileupload[$jml_pecahan_nama_fileupload]; //echo "$hasil_ekstensi_fileupload"; echo "$row_detail_data[nm_upload].$hasil_ekstensi_fileupload"; ?> </td> </tr> <tr> <td valign="top"><strong>Type File</strong></td> <td valign="top"><strong>:</strong></td> <td valign="top"><?php echo $row_detail_data['type_file']; ?></td> </tr> <tr>

74

75
<td valign="top"><strong>Size</strong></td> <td valign="top"><strong>:</strong></td> <td valign="top"> <?php $size_file=$row_detail_data['size_file']; if($size_file>=1048576) { $size_file_01=number_format(($size_file/1048576),2); echo "$size_file_01 MB"; } else if ($size_file>=1024) { $size_file_01=number_format(($size_file/1024),2); echo "$size_file_01 KB"; } else { $size_file_01=number_format(($total_space_bytes),2); echo "$size_file_01 bytes"; } ?> </td> </tr> <tr> <td valign="top"><strong>Pemilik File</strong></td> <td valign="top"><strong>:</strong></td> <td valign="top">(<?php echo $row_detail_data['id_pengguna']; ?>) <?php echo $row_detail_data['nm_pengguna']; ?> </td> </tr> <tr> <td valign="top"><strong>Tanggal Upload</strong></td> <td valign="top"><strong>:</strong></td> <td valign="top"><?php echo date("d-m-Y h:i:s",strtotime($row_detail_data['tgl_upload'])); ?></td> </tr> <tr> <td valign="top"><strong>MD5 File</strong></td> <td valign="top"><strong>:</strong></td> <td valign="top"><strong><?php echo $row_detail_data['md5_file']; ?></strong> </td> </tr> <tr> <td valign="top">&nbsp;</td> <td valign="top">&nbsp;</td> <td valign="top">&nbsp;</td> </tr> </table> <?php $me = isset($_REQUEST['me']) ? $_REQUEST['me'] : ""; switch ($me) { case "": ?> <table width="500" border="0" cellpadding="0" cellspacing="0" align="center" bgcolor="#FFFFFF"> <tr> <td colspan="3" background="images/background-kiri.png" class="textjudul" height="33" align="center"><strong>CEK KEASLIAN DATA</strong></td> </tr> <tr valign="top">

76
<td>&nbsp;</td> <td>&nbsp;</td> <td>&nbsp;</td> </tr> <tr valign="top"> <td>Hasil File yang Download</td> <td>:</td> <td> <script language="JavaScript"> <!-function validasi() { //-- untuk pengecekan validasi email document.form1.submit.disabled=true; document.form1.submit.value='Mohon Tunggu, Sedang di Proses'; } // --> </script> <form name="form1" method="post" action="<?=$_SERVER['PHP_SELF']?>?id_upload=<?php echo $id_upload?>" enctype="multipart/form-data" onSubmit="return validasi();"> <input type="hidden" name="id_upload" value="<?php echo $id_upload; ?>"> <input type="hidden" name="md5_file" value="<?php echo $row_detail_data['md5_file']; ?>"> <input type="file" class="textinput" name="file_upload" id="file_upload" required /><br /> <input name="submit" type="submit" value="Cek Data" class="textinput"/> <input name="me" type="hidden" id="me" value="cek" /> </form> </td> </tr> <tr valign="top"> <td>&nbsp;</td> <td>&nbsp;</td> <td>&nbsp;</td> </tr> </table>

<? //============---- Proses Cek break; case "cek": $id_upload=$_POST['id_upload']; $md5_file=$_POST['md5_file']; $nm_file_cek=$_FILES["file_upload"]["name"]; $tmp_file_cek=$_FILES["file_upload"]["tmp_name"]; $tujuan_folder_file_cek="data_cek_file/"; if(move_uploaded_file($tmp_file_cek,"$tujuan_folder_file_cek".$nm_file_cek)) { $file_cek_url="data_cek_file/$nm_file_cek"; $md5_file_cek=md5_file($file_cek_url); if($md5_file_cek!="") {

77
unlink($file_cek_url); } } ?> <table width="500" border="0" cellpadding="0" cellspacing="0" align="center" bgcolor="#FFFFFF"> <tr> <td colspan="3" background="images/background-kiri.png" class="textjudul" height="33" align="center">HASIL PENGECEKAN</td> </tr> <tr valign="top"> <td width="44">&nbsp;</td> <td width="254">&nbsp;</td> <td width="202">&nbsp;</td> </tr> <tr valign="top"> <td colspan="3" align="center"> <?php if($md5_file==$md5_file_cek) { echo "<img src=\"images/oke.png\" /> <br> Nama File yang Anda Cek <br> <strong>$nm_file_cek</strong> <br><br> Hasil File yang Anda Download <strong>SAMA</strong> dengan di server <br> MD5 File = <strong>$md5_file_cek</strong> "; } else { echo"<img src=\"images/block_data.png\" /> <br> Nama File yang Anda Cek <br> <strong>$nm_file_cek</strong> <br><br> Hasil File yang Anda Download <strong>BERBEDA</strong> dengan di server <br> MD5 File = <strong>$md5_file_cek</strong> "; } ?> </td> </tr> <tr valign="top"> <td colspan="3" align="center">[ <a href="cek_md5_file.php?id_upload=<?php echo $id_upload; ?>">KEMBALI KE HALAMAN PENGECEKAN</a> ]</td> </tr> </table> <? } ?> Nama File : cek_status_login.php <?php session_start(); if(!isset($_SESSION['login'])) { header("location:index.php"); exit; } ?> Nama File : configuration_pengguna.php <?php $nama_website = "Penyimpanan Berkas STIKOM Bali"; //---======= Tanggal hari ini waktu indonesia =====----------

78
date_default_timezone_set("Asia/Jakarta"); $format_tgl_sekarang = date("Y-m-d H:i:s", mktime(date("H")+1, date("i"), date("s"), date("m"), date("d"), date("Y"))); //---==============================================---------?> Nama File : download_data.php <?php session_start(); include_once("configuration_pengguna.php"); include_once("koneksi.php"); // membaca id file dari link $id_upload=$_POST['id_upload']; $id_pengguna=$_SESSION['id_pengguna']; $date_sekarang=$format_tgl_sekarang; // ******************membaca informasi file dari tabel berdasarkan id nya $sql_data_upload = "select a.*,b.* from tb_upload a, tb_pengguna b where a.id_pengguna=b.id_pengguna and a.id_pengguna='$id_pengguna' and id_upload='$id_upload'"; $hasil_data_upload = mysql_query($sql_data_upload); $jml_file_ketemu=mysql_num_rows($hasil_data_upload);

if($jml_file_ketemu>=1) { //***************************** memasukan data di tb_list_download $sql_input_download = "insert into tb_list_download (tgl_download,id_upload,id_pengguna)values ('$date_sekarang','$id_upload','$id_pengguna')"; //echo $sql_input_download; $hasil_input_download = mysql_query($sql_input_download); //******************************** $row_data_upload = mysql_fetch_assoc($hasil_data_upload); //******************mencari ekstensi $pecah_nama_file = explode(".", $row_data_upload['file']); $jml_pecahan_nama_file = count($pecah_nama_file)-1; // jumlah pecahan -1 u/ mengetahui pecahan terakhir $hasil_ekstensi_file = $pecah_nama_file[$jml_pecahan_nama_file]; //Ex : docx // header yang menunjukkan nama file yang akan didownload header("Content-Disposition: attachment; filename=\"$row_data_upload[nm_upload].$hasil_ekstensi_file\""); // header yang menunjukkan ukuran file yang akan didownload header("Content-length: ".$row_data_upload['size_file']); // header yang menunjukkan jenis file yang akan didownload header("Content-type: ".$row_data_upload['type_file']); // proses membaca isi file yang akan didownload dari folder 'data'

79
$fp = fopen("data_pengguna/".$row_data_upload['mail_pengguna']."/".$row_data_upload['file'], 'r'); $content = fread($fp, filesize("data_pengguna/".$row_data_upload['mail_pengguna']."/".$row_data_upload['file'] )); fclose($fp); // menampilkan isi file yang akan didownload echo $content; exit; } ?> Nama File : download_list.php <?php include_once("cek_status_login.php"); include_once("configuration_pengguna.php"); include_once("koneksi.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=iso-8859-1" /> <title>Selamat Datang <?php echo $_SESSION['nm_pengguna']; ?> di <?php echo $nama_website; ?></title> <link href="css/style_pengguna.css" rel="stylesheet" type="text/css" /> </head> <body> <table width="915" border="0" cellspacing="0" cellpadding="0" align="center" style="margin-top:0px; border:1px solid #CCC;" bgcolor="#FFFFFF"> <tr> <td height="51" colspan="2" valign="top" align="center"><?php include('header.php'); ?></td> </tr> <tr> <td width="252" height="540" valign="top" align="right"><?php include('menu-kiri.php'); ?></td> <td width="648" valign="top" align="center"><?php include('download_list_inc.php'); ?></td> </tr> <tr> <td height="49" colspan="2" align="center" valign="top"><?php include('footer.php'); ?></td> </tr> </table> </body> </html> Nama File : download_list_inc.php <?php

80
include_once("cek_status_login.php"); include_once("configuration_pengguna.php"); include_once("koneksi.php"); $id_kategori=$_GET['id_kategori']; $id_pengguna=$_SESSION['id_pengguna']; $mail_pengguna=$_SESSION['mail_pengguna']; function pesan($msg) { echo "<script>alert(\"Error: $msg\");location.href = 'upload_data.php?me=new' </script>"; exit(); } function pesan2($msg) { echo "<script>alert(\"Error: $msg\");location.href = 'javascript:history.go(1)' </script>"; exit(); } ?> <script src="alah_facebook/jquery-1.2.2.pack.js" type="text/javascript"></script> <link href="alah_facebook/facebox.css" media="screen" rel="stylesheet" type="text/css" /> <script src="alah_facebook/facebox.js" type="text/javascript"></script> <script type="text/javascript"> jQuery(document).ready(function($) { $('a[rel*=facebox]').facebox() }) </script> <script LANGUAGE="JavaScript"> <!-function confirmDelete() { var agree=confirm("Apakah Anda YAKIN Menghapus Data ini?"); if (agree) return true ; else return false ; } // --> </script> <script language="javascript" type="text/javascript"> <!-- Pop Up /**************************************************** Author: Eric King Url: http://redrival.com/eak/index.shtml This script is free to use as long as this info is left in Featured on Dynamic Drive script library (http://www.dynamicdrive.com) ****************************************************/ var win=null; function NewWindow(mypage,myname,w,h,scroll,pos){

81
if(pos=="random"){LeftPosition=(screen.width)?Math.floor(Math.random()*(screen.widthw)):100;TopPosition=(screen.height)?Math.floor(Math.random()*((screen.height-h)75)):100;} if(pos=="center"){LeftPosition=(screen.width)?(screen.widthw)/2:100;TopPosition=(screen.height)?(screen.height-h)/2:100;} else if((pos!="center" && pos!="random") || pos==null){LeftPosition=0;TopPosition=20} settings='width='+w+',height='+h+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+s croll+',location=no,directories=no,status=no,menubar=no,toolbar=no,resizable=no'; win=window.open(mypage,myname,settings);} // --> </script> <table width="620" border="0" cellspacing="0" cellpadding="0" align="center"> <tr> <td colspan="4" class="garisputus">&nbsp;</td> </tr> <tr> <td height="34" colspan="4" align="center" class="garisputus"><div class="textjudul">DAFTAR DOWNLOAD BERKAS TERAKHIR</div></td> </tr> <tr> <td colspan="4">&nbsp;</td> </tr> </table> <?php $me = isset($_REQUEST['me']) ? $_REQUEST['me'] : ""; switch ($me) { case "": ?> <table width="620" border="0" cellspacing="2" cellpadding="2" align="center"> <tr align="center" bgcolor="#E8F8FC"> <td width="26" height="30"><strong>NO</strong></td> <td width="96" height="30"><strong>TANGGAL DOWNLOAD</strong></td> <td><strong>NAMA BERKAS</strong></td> <td width="100"><strong>DOWNLOAD LAGI</strong></td> <td width="180"><strong>MD5 FILE</strong></td> </tr> <?php $hal= (isset($_GET['hal'])) ? $_GET['hal'] : 1; $bph=25;//Baris Per Halaman $start=$hal*$bph-$bph; //=========---- SQL $sq="select a.*,b.*,c.* from tb_list_download a,tb_upload b,tb_pengguna c where a.id_upload=b.id_upload and b.id_pengguna=c.id_pengguna and a.id_pengguna='$id_pengguna' order by a.tgl_download desc"; //========= $hs=mysql_query($sq); $jum_baris=mysql_num_rows($hs); $halaman=ceil($jum_baris/$bph); $i=0; //=========---- SQL

82
$sql_list_download="select a.*,b.*,c.* from tb_list_download a,tb_upload b,tb_pengguna c where a.id_upload=b.id_upload and b.id_pengguna=c.id_pengguna and a.id_pengguna='$id_pengguna' order by a.tgl_download desc limit $start,$bph";

//====================================================== $hasil_list_download=mysql_query($sql_list_download); while($row_list_download=mysql_fetch_assoc($hasil_list_download)) { // blok pengulangan kategori $i++; $no=($hal-1)*$bph+$i; if($no % 2==0) { $warna="#E8F8FC"; } else { $warna="#CCCCCC"; } ?> <tr valign="top" bgcolor="<?php echo $warna;?>"> <td align="right"><?php echo $no; ?>.</td> <td align="left"><?php echo date("d-m-Y h:i:s",strtotime($row_list_download['tgl_download'])); ?></td> <td width="186" valign="top"><?php //******************mencari ekstensi $pecah_nama_file = explode(".", $row_list_download['file']); $jml_pecahan_nama_file = count($pecah_nama_file)-1; // jumlah pecahan -1 u/ mengetahui pecahan terakhir $hasil_ekstensi_file = $pecah_nama_file[$jml_pecahan_nama_file]; //Ex : docx echo "<a href=\"#\" onclick=\"NewWindow('cek_md5_file.php?id_upload=$row_list_download[id_upload]','my win','530','460','no','center');return false\" onfocus=\"this.blur()\"><strong>$row_list_download[nm_upload].$hasil_ekstensi_file</str ong></a><br>"; ?></td> <td align="center"> <form name="form1" method="post" action="download_data.php" target="_blank" enctype="multipart/form-data"> <input type="hidden" name="id_upload" value="<?php echo $row_list_download['id_upload']; ?>"> <input name="submit" type="image" src="images/download.png" width="30" height="30"/> </form> </td> <td align="center"><?php echo $row_list_download['md5_file'];?></td> </tr> <? } ?> <tr valign="top" bgcolor="#FF99CC"> <td colspan="5" align="left">

83
<strong>Keterangan :</strong> <br /> Klik <strong>Nama File</strong> Untuk Cek Keaslian Data yang di download </td> </tr> </table> <table width="620" border="0" cellspacing="0" cellpadding="0" align="center"> <tr> <td align="center" height="5"></td> </tr> <tr> <td align="center"> <?php $link_no="download_list.php?"; if($hal>1) { echo "&nbsp;&nbsp;[ <a href=\"$link_no&hal=1\">First</a> ]"; } if($hal>1) { $hal_back=$hal-1; echo"&nbsp;&nbsp;[ <a href=\"$link_no&hal=$hal_back\">Back</a> ]"; } $n_hal=0; while($n_hal<$halaman) { $n_hal++; if($n_hal==$hal) { echo "&nbsp;[ <strong>$n_hal</strong> ]"; } else { echo "&nbsp;[ <a href=\"$link_no&hal=$n_hal\">$n_hal</a> ]"; } } if($hal<$halaman) { $hal_next=$hal+1; echo"&nbsp;&nbsp;[ <a href=\"$link_no&hal=$hal_next\">Next</a> ]"; } if($hal<$halaman) { echo"&nbsp;&nbsp;[ <a href=\"$link_no&hal=$halaman\">Last</a> ]"; } ?> </td>

84
</tr> <tr> <td align="justify">&nbsp;</td> </tr> </table> <?php } ?> Nama File : edit_data_pengguna_inc.php <?php include_once("cek_status_login.php"); include_once("configuration_pengguna.php"); include_once("koneksi.php"); $id_pengguna=$_SESSION['id_pengguna']; function pesan($msg) { echo "<script>alert(\"Error: $msg\");location.href = 'edit_data_pengguna.php' </script>"; exit(); } function pesan2($msg) { echo "<script>alert(\"Error: $msg\");location.href = 'edit_data_pengguna.php?me=ganti_password' </script>"; exit(); } function pesan3($msg) { echo "<script>alert(\"Error: $msg\");location.href = 'edit_data_pengguna.php?me=ganti_photo' </script>"; exit(); } ?> <table width="620" border="0" cellspacing="0" cellpadding="0" align="center"> <tr> <td width="900" class="garisputus">&nbsp;</td> </tr> <tr> <td height="34" class="garisputus" align="center"><div class="textjudul">MENU DATA PERUSAHAAN <br /> ( PENGGUNA LAYANAN )</div></td> </tr> <td>&nbsp;</td> </tr> </table> <?php $me = isset($_REQUEST['me']) ? $_REQUEST['me'] : ""; switch ($me) { case "":

85

$sql_update_profil="select a.*,b.* from tb_pengguna a, tb_administrator b where a.id_administrator=b.id_administrator and a.id_pengguna='$id_pengguna'"; //echo $sql_update_profil; $hasil_update_profil=mysql_query($sql_update_profil); $row_update_profil=mysql_fetch_assoc($hasil_update_profil); ?> <script language="JavaScript"> <!-function validasi() { //-- untuk pengecekan validasi email document.form1.submit.disabled=true; document.form1.submit.value='Mohon Tunggu, Sedang di Proses'; } // --> </script> <form name="form1" method="post" action="<?=$_SERVER['PHP_SELF']?>" enctype="multipart/form-data" onSubmit="return validasi();"> <input type="hidden" name="mail_lama" value="<?php echo $row_update_profil['mail_pengguna']; ?>"> <table width="620" border="0" cellspacing="2" cellpadding="2" align="center"> <tr> <td colspan="3"><strong>Data Personal Perusahaan</strong></td> </tr> <tr> <td colspan="3">&nbsp;</td> </tr> <tr> <td width="138">Nama Perusahaan</td> <td width="6">:</td> <td width="356"> <input name="nama" type="text" id="nama" size="25" maxlength="50" class="textinput" value="<?php echo $row_update_profil['nm_pengguna']; ?>" placeholder="Nama Pengguna" autofocus required /> </td> </tr> <tr> <td width="138">Nama Pimpinan</td> <td width="6">:</td> <td width="356"> <input name="pimpinan" type="text" id="pimpinan" size="25" maxlength="50" class="textinput" value="<?php echo $row_update_profil['nm_pimpinan']; ?>" placeholder="Nama Pengguna" required /> </td> </tr> <tr> <td height="89">Alamat</td> <td>:</td> <td> <textarea name="alamat" placeholder="Alamat E-Mail" class="textinput" cols="30" rows="5" required><?php echo $row_update_profil['alamat_pengguna']; ?></textarea> </td> </tr> <tr>

86
<td>Telp</td> <td>:</td> <td> <input name="telp" type="text" id="telp" size="20" maxlength="50" class="textinput" value="<?php echo $row_update_profil['telp_pengguna']; ?>" placeholder="Telp Pengguna" required /> </td> </tr> <tr> <td>No. SIUP</td> <td>:</td> <td> <input name="siup" type="text" id="siup" size="20" maxlength="50" class="textinput" value="<?php echo $row_update_profil['no_siup']; ?>" placeholder="Telp Pengguna" required /> </td> </tr> <tr> <td width="138">E-Mail Perusahaan</td> <td width="6">:</td> <td width="356"> <input name="mail_baru" type="email" id="mail" size="25" maxlength="50" class="textinput" value="<?php echo $row_update_profil['mail_pengguna']; ?>" placeholder="E-Mail Login" required /> </td> </tr> <tr> <td colspan="3">&nbsp;</td> </tr> <tr> <td colspan="3"><strong>Situs Jejaring Sosial </strong></td> </tr> <tr> <td colspan="3">&nbsp;</td> </tr> <tr> <td width="138">Facebook</td> <td width="6">:</td> <td width="356"> <input name="fb" type="text" id="fb" size="25" maxlength="50" class="textinput" value="<?php echo $row_update_profil['fb_pengguna']; ?>" placeholder="http://" /> <font color="#FF0000">*</font> </td> </tr> <tr> <td>Twitter</td> <td>:</td> <td> <input name="tw" type="text" id="tw" size="25" maxlength="50" class="textinput" value="<?php echo $row_update_profil['twitter_pengguna']; ?>" placeholder="http://" /> <font color="#FF0000">*</font> </td> </tr> <tr> <td colspan="3"><em><font color="#FF0000">* boleh tidak diisi </font></em></td> </tr> <tr> <td colspan="3">&nbsp;</td>

87
</tr> <tr> <td colspan="3"><strong>Data Keamanan </strong></td> </tr> <tr> <td colspan="3">&nbsp;</td> </tr> <tr> <td width="138">Pertanyaan Keamanan </td> <td width="6">:</td> <td width="356"> <input name="tanya" type="text" id="tanya" size="25" maxlength="50" class="textinput" value="<?php echo $row_update_profil['tanya_pengguna']; ?>" placeholder="Pertanyaan" required /> ? </td> </tr> <tr> <td>Jawaban </td> <td>:</td> <td> <input name="jawab" type="text" id="jawab" size="25" maxlength="50" class="textinput" value="<?php echo $row_update_profil['jawab_pengguna']; ?>" placeholder="Jawaban" required /> </td> </tr> <tr> <td colspan="3">&nbsp;</td> </tr> <tr> <td>&nbsp;</td> <td>&nbsp;</td> <td> <input name="submit" type="submit" value="Ganti Profil" class="textinput"/> <input name="me" type="hidden" id="me" value="ganti_profil" /> </td> </tr> <tr> <td colspan="3">&nbsp;</td> </tr> <tr> <td colspan="3"><strong>Informasi Tambahan</strong></td> </tr> <tr> <td colspan="3">&nbsp;</td> </tr> <tr> <td width="138">Tanggal Registrasi</td> <td width="6">:</td> <td width="356"><?php echo date("d-m-Y h:i:s",strtotime($row_update_profil['tgl_registrasi']));?></td> </tr> <tr> <td width="138">Status Konfirmasi</td> <td width="6">:</td> <td width="356"> <?php if ($row_update_profil['status_konfirmasi']=='y')

88
{ echo "Perusahaan ini Sudah <strong>DIKONFIRMASI</strong> Oleh ADMINISTRATOR"; } ?> </td> </tr> <tr> <td width="138">Tanggal Konfirmasi</td> <td width="6">:</td> <td width="356"><?php echo date("d-m-Y h:i:s",strtotime($row_update_profil['tgl_konfirmasi']));?></td> </tr> <tr> <td>Petugas Konfirmasi</td> <td>:</td> <td><?php echo "( ".$row_update_profil['id_administrator']." ) ".$row_update_profil['nm_administrator'] ; ?></td> </tr> <tr> <td colspan="3">&nbsp;</td> </tr> </table> </form> <?php //=================- Ganti Profil break; case "ganti_profil": $nama=$_POST['nama']; $pimpinan=$_POST['pimpinan']; $alamat=$_POST['alamat']; $telp=$_POST['telp']; $siup=$_POST['siup']; $mail_baru=$_POST['mail_baru']; $mail_lama=$_POST['mail_lama']; $fb=$_POST['fb']; $tw=$_POST['tw']; $tanya=$_POST['tanya']; $jawab=$_POST['jawab']; $sql_ganti_profil = "update tb_pengguna set nm_pengguna='$nama',nm_pimpinan='$pimpinan',alamat_pengguna='$alamat',telp_pen gguna='$telp',no_siup='$siup',mail_pengguna='$mail_baru',fb_pengguna='$fb',twitter_pe ngguna='$tw',tanya_pengguna='$tanya',jawab_pengguna='$jawab' where id_pengguna='$id_pengguna'"; $hasil_ganti_profil = mysql_query($sql_ganti_profil) or die(mysql_error()); if($hasil_ganti_profil) { rename("data_pengguna/$mail_lama", "data_pengguna/$mail_baru"); $_SESSION['mail_pengguna']="$mail_baru"; $_SESSION['nm_pengguna']="$nama"; echo "

89
<p align=\"center\">Please Wait <br> Data BERHASIL disimpan </p> <p align=\"center\"><img src=\"images/ajax-loader.gif\"></p> <script type=\"text/javascript\"><!-setTimeout('Redirect()',3000); function Redirect() { location.href = 'edit_data_pengguna.php'; } // --></script> "; } else { pesan("Maaf, Data GAGAL disimpan, Mohon Cek Lagi "); } ?> <?php //=================- Ganti Profil break; case "ganti_password": ?> <script language="JavaScript"> <!-function validasi() { //-- untuk pengecekan validasi email document.form1.submit.disabled=true; document.form1.submit.value='Mohon Tunggu, Sedang di Proses'; } // --> </script> <form name="form1" method="post" action="<?=$_SERVER['PHP_SELF']?>" enctype="multipart/form-data" onSubmit="return validasi();"> <table width="620" border="0" cellspacing="2" cellpadding="2" align="center"> <tr> <td width="171">Password Lama </td> <td width="10">:</td> <td width="523"><input name="pass1" type="password" size="20" maxlength="30" class="textinput" value="" placeholder="Password Lama Anda" autofocus required /></td> </tr> <tr> <td>Password Baru </td> <td>:</td> <td><input name="pass2" type="password" size="20" maxlength="30" class="textinput" value="" placeholder="Password Baru Anda" required /></td> </tr> <tr> <td>Ulangi Sekali Lagi </td> <td>:</td> <td><input name="pass3" type="password" size="20" maxlength="30" class="textinput" value="" placeholder="Password Baru Sekali Lagi" required /></td> </tr>

90
<tr> <td>&nbsp;</td> <td>&nbsp;</td> <td> <input name="submit" type="submit" value="Ganti Password" class="textinput"/> <input name="me" type="hidden" id="me" value="password_baru" /> </td> </tr> </table> </form> <?php //=================- Ganti Profil break; case "password_baru": $pass1=md5($_POST['pass1']); $pass2=$_POST['pass2']; $pass3=$_POST['pass3']; if($pass2!=$pass3) { pesan2("Password Baru dan Konfirmasi TIDAK Sama"); } else { $sql_passlama="select * from tb_pengguna where id_pengguna='$id_pengguna'"; //echo $sql_passlama; $hasil_passlama=mysql_query($sql_passlama); $row_passlama=mysql_fetch_assoc($hasil_passlama); $pass_lama=$row_passlama['pass_pengguna']; //echo "<br> $pass_lama"; //echo "$pass1"; if($pass_lama!=$pass1) { pesan2("Password Lama anda SALAH"); } else { $sql_ganti_password = "update tb_pengguna set pass_pengguna=md5('$pass2') where id_pengguna='$id_pengguna'"; $hasil_ganti_password = mysql_query($sql_ganti_password) or die(mysql_error()); if($hasil_ganti_password) { echo " <p align=\"center\">Please Wait <br> Data BERHASIL disimpan </p> <p align=\"center\"><img src=\"images/ajax-loader.gif\"></p> <script type=\"text/javascript\"><!-setTimeout('Redirect()',3000); function Redirect()

91
{ location.href = 'edit_data_pengguna.php'; } // --></script> "; } else { pesan2("Maaf, Data GAGAL disimpan, Mohon Cek Lagi "); } } } ?> <?php //=================- Ganti Photo Profil break; case "ganti_photo": ?> <script language="JavaScript"> <!-function validasi() { //-- untuk pengecekan validasi email document.form1.submit.disabled=true; document.form1.submit.value='Mohon Tunggu, Sedang di Proses'; } // --> </script> <form name="form1" method="post" action="<?=$_SERVER['PHP_SELF']?>" enctype="multipart/form-data" onSubmit="return validasi();"> <table width="620" border="0" cellspacing="2" cellpadding="2" align="center"> <tr> <td width="171">Photo Profil Sekarang </td> <td width="10">:</td> <td width="523"> <?php if($_SESSION['img_pengguna']!="") { echo "<img src=\"data_pengguna/$_SESSION[mail_pengguna]/$_SESSION[img_pengguna]\" width=\"80\" height=\"80\" />"; } else { echo "<img src=\"images/face_kosong.jpg\" width=\"80\" height=\"80\" />"; } ?> </td> </tr> <tr> <td>Ganti Photo Profil </td> <td>:</td>

92
<td><input type="file" name="photo" id="photo" class="textinput" required /> <br /> <strong>Hanya Menerima File (.jpg, .png)</strong></td> </tr> <tr> <td>&nbsp;</td> <td>&nbsp;</td> <td> <input name="submit" type="submit" value="Ganti Photo Profil" class="textinput"/> <input name="me" type="hidden" id="me" value="photo_baru" /> </td> </tr> </table> </form> <?php //========================----------break; case "photo_baru": $nama_foto_baru=$_FILES["photo"]["name"]; $size_foto_baru=$_FILES["photo"]["name"]; // pecah nama file $pecah_nama_file = explode(".", $nama_foto_baru); $jml_pecahan_nama_file = count($pecah_nama_file)-1; // jumlah pecahan -1 u/ mengetahui pecahan terakhir $hasil_ekstensi_file = $pecah_nama_file[$jml_pecahan_nama_file]; if ($hasil_ekstensi_file!="jpg" && $hasil_ekstensi_file!="png") { pesan3("Tipe File Tidak Diterima. File Anda = $hasil_ekstensi_file"); } if($size_foto_baru>3145728) { $ukuran_file_baru=($size_foto_baru/1048576); pesan3("File Anda Lebih dari 3 MB. Ukuran File Anda = $ukuran_file_baru MB "); } //************** $no_acak=rand(0000000,9999999); $nm_photo_baru=$no_acak."-Foto-Profil.".$hasil_ekstensi_file; $tempat_foto_baru=$_FILES["photo"]["tmp_name"]; $mail_pengguna=$_SESSION['mail_pengguna']; $foto_lama=$_SESSION['img_pengguna']; $tempat_foto_lama="data_pengguna/$mail_pengguna/$foto_lama"; if($foto_lama!="" && file_exists("$tempat_foto_lama")) { unlink($tempat_foto_lama); }

93

move_uploaded_file($tempat_foto_baru,"data_pengguna/$mail_pengguna/".$nm _photo_baru); $sql_ganti_photo = "update tb_pengguna set img_pengguna='$nm_photo_baru' where id_pengguna='$id_pengguna'"; $hasil_ganti_photo= mysql_query($sql_ganti_photo) or die(mysql_error()); if($hasil_ganti_photo) { $_SESSION['img_pengguna']=$nm_photo_baru; echo " <p align=\"center\">Please Wait <br> Data BERHASIL disimpan </p> <p align=\"center\"><img src=\"images/ajaxloader.gif\"></p> <script type=\"text/javascript\"><!-setTimeout('Redirect()',3000); function Redirect() { location.href = 'edit_data_pengguna.php?me=ganti_photo'; } // --></script> "; } else { pesan3("Maaf, Data GAGAL disimpan, Mohon Cek Lagi "); }

?> <?php //=================- History break; case "history": ?> <table width="620" border="0" cellspacing="2" cellpadding="2" align="center"> <tr align="center" bgcolor="#E8F8FC"> <td width="42" height="30"><strong>NO</strong></td> <td width="455"><strong>TGL. AKTIFITAS </strong></td> <td width="103"><strong>STATUS</strong></td> </tr> <?php $hal= (isset($_GET['hal'])) ? $_GET['hal'] : 1; $bph=50;//Baris Per Halaman $start=$hal*$bph-$bph; //=========---- SQL $sq="select * from tb_log_pengguna where id_pengguna='$id_pengguna' order by id_log_pengguna desc"; //========= $hs=mysql_query($sq);

94
$jum_baris=mysql_num_rows($hs); $halaman=ceil($jum_baris/$bph); $i=0; //=========---- SQL $sql="select * from tb_log_pengguna where id_pengguna='$id_pengguna' order by id_log_pengguna desc limit $start,$bph"; //====================================================== $hasil=mysql_query($sql); while($row=mysql_fetch_assoc($hasil)) { // blok pengulangan kategori $i++; $no=($hal-1)*$bph+$i; if($no % 2==0) { $warna="#E8F8FC"; } else { $warna="#CCCCCC"; } ?> <tr valign="top" bgcolor="<?php echo $warna;?>"> <td align="right"><?php echo $no; ?>.</td> <td> <?php $tgl_log=$row['log_date']; echo date("d-m-Y h:i:s",strtotime($tgl_log)); ?> </td> <td><strong><?php echo strtoupper($row['status_log']); ?></strong></td> </tr> <? } ?> </table> <table width="620" border="0" cellspacing="0" cellpadding="0" align="center"> <tr> <td align="center" height="5"></td> </tr> <tr> <td align="center"> <?php $link_no="edit_data_pengguna.php?me=history"; if($hal>1) { echo "&nbsp;&nbsp;[ <a href=\"$link_no&hal=1\">First</a> ]"; } if($hal>1) {

95
$hal_back=$hal-1; echo"&nbsp;&nbsp;[ <a href=\"$link_no&hal=$hal_back\">Back</a> ]"; } $n_hal=0; while($n_hal<$halaman) { $n_hal++; if($n_hal==$hal) { echo "&nbsp;[ <strong>$n_hal</strong> ]"; } else { echo "&nbsp;[ <a href=\"$link_no&hal=$n_hal\">$n_hal</a> ]"; } } if($hal<$halaman) { $hal_next=$hal+1; echo"&nbsp;&nbsp;[ <a href=\"$link_no&hal=$hal_next\">Next</a> ]"; } if($hal<$halaman) { echo"&nbsp;&nbsp;[ <a href=\"$link_no&hal=$halaman\">Last</a> ]"; } ?> </td> </tr> <tr> <td align="center">&nbsp;</td> </tr> </table> <?php } ?> Nama File : index.php <?php session_start(); include_once("configuration_pengguna.php"); include_once("koneksi.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=iso-8859-1" /> <title>Selamat Datang <?php echo $_SESSION['nm_pengguna']; ?> di <?php echo $nama_website; ?></title> <link href="css/style_pengguna.css" rel="stylesheet" type="text/css" />

96
</head> <body> <table width="915" border="0" cellspacing="0" cellpadding="0" align="center" style="margin-top:0px; border:1px solid #CCC;" bgcolor="#FFFFFF"> <tr> <td height="51" colspan="2" valign="top" align="center"><?php include('header.php'); ?></td> </tr> <tr> <td width="252" height="540" valign="top" align="right"><?php include('menu-kiri.php'); ?></td> <td width="648" valign="top" align="center"> <?php if($_SESSION['login']=="ok" && $_SESSION['id_pengguna']!="") { include('upload_kategori_inc.php'); } else { include('index_login.inc.php'); } ?> </td> </tr> <tr> <td height="49" colspan="2" align="center" valign="top"><?php include('footer.php'); ?></td> </tr> </table> </body> </html> Nama File : index_login.inc.php <?php include_once("configuration_pengguna.php"); include_once("koneksi.php"); function pesan($msg) { echo "<script>alert(\"Error: $msg\");location.href = 'index.php' </script>"; exit(); } ?> <?php $me = isset($_REQUEST['me']) ? $_REQUEST['me'] : ""; switch ($me) { case "": ?> <script language="JavaScript"> <!-function validasi() { //-- untuk pengecekan validasi email

97
document.form1.submit.disabled=true; document.form1.submit.value='Mohon Tunggu, Sedang di Proses'; } // --> </script> <form name="form1" method="post" action="<?=$_SERVER['PHP_SELF']?>" enctype="multipart/form-data" onSubmit="return validasi();"> <table width="500" border="0" cellspacing="0" cellpadding="0"> <tr> <td colspan="3" align="center"><br /><br /> <div style="font-size:20px;">SELAMAT DATANG <br /> <strong>HALAMAN PERUSAHAAN PENGGUNA LAYANAN </strong> </div> </td> </tr> <tr> <td colspan="3">&nbsp;</td> </tr> <tr> <td width="138">E-Mail Perusahaan</td> <td width="6">:</td> <td width="356"> <input name="mail" type="text" class="textinput" id="mail" value="" size="20" maxlength="30" autofocus required /> </td> </tr> <tr> <td>Password </td> <td>:</td> <td> <input name="pass" type="password" class="textinput" id="pass" value="" size="25" maxlength="100" required /> </td> </tr> <tr> <td colspan="3">&nbsp;</td> </tr> <tr> <td align="center">&nbsp;</td> <td align="center">&nbsp;</td> <td align="left"> <input name="submit" type="submit" value="Masuk Ke Halaman Pengguna" class="textinput"/> <input name="me" type="hidden" id="me" value="login" /> </td> </tr> <tr> <td>&nbsp;</td> <td>&nbsp;</td> <td>&nbsp;</td> </tr> <tr> <td>&nbsp;</td> <td>&nbsp;</td> <td>Belum Memiliki ACCOUNT, Silahkan <a href="registrasipengguna.php">Registrasi</a> Dulu </td> </tr> <tr> <td>&nbsp;</td>

98
<td>&nbsp;</td> <td>Lupa Password, Lakukan Proses <a href="lupa_password.php">Forget Password</a> </td> </tr> </table> </form> <?php //===========----- Proses Simpan break; case "login": $mail=$_POST['mail']; $pass=md5($_POST['pass']); $sql_login="select * from tb_pengguna where mail_pengguna='$mail' and pass_pengguna='$pass'"; //echo $sql_login; $hasil_login=mysql_query($sql_login); $jml_login=mysql_num_rows($hasil_login); if ($jml_login==1) { $row_login=mysql_fetch_assoc($hasil_login); if($row_login['status_konfirmasi']!='y') { pesan("Mohon Maaf, Account Anda Belum di Konfirmasi Pemilik Layanan"); } //================---------------- Membuat Session $_SESSION['login']="ok"; $_SESSION['id_pengguna']=$row_login['id_pengguna']; $_SESSION['nm_pengguna']=$row_login['nm_pengguna']; $_SESSION['mail_pengguna']= $row_login['mail_pengguna']; $_SESSION['img_pengguna']= $row_login['img_pengguna'];

//echo $_SESSION['id_pengguna']; //echo $_SESSION['nm_pengguna']; //echo $_SESSION['mail_pengguna'];

//================------------- Input Data ke tb_log_administrator $id_pengguna=$_SESSION['id_pengguna']; $date_sekarang=$format_tgl_sekarang; $sql_input_log="insert into tb_log_pengguna (id_pengguna,log_date,status_log) values ('$id_pengguna','$date_sekarang','in')"; mysql_query($sql_input_log); echo " <p align=\"center\">Alamat E-Mail & Password Anda Benar <br> Tunggu Sebentar</p> <p align=\"center\"><img src=\"images/ajax-loader.gif\"></p> <script type=\"text/javascript\"> <!--

99
setTimeout('Redirect()',2000); function Redirect() { location.href = 'menu_utama.php'; } // --> </script> "; } else { unset($_SESSION['login']); pesan("Mohon Maaf, Alamat E-Mail dan Password Tidak Terdaftar"); }

?>

<?php } ?> Nama File : keluhan_pengguna_detail.php <? include_once("cek_status_login.php"); include_once("configuration_pengguna.php"); include_once("koneksi.php"); $id_pengguna=$_SESSION['id_pengguna']; $id_keluhan=$_GET['id_keluhan']; $sql_keluhan_detail="select a.*,b.*,c.* from tb_keluhan a, tb_pengguna b, tb_administrator c where a.id_pengguna=b.id_pengguna and a.id_administrator=c.id_administrator and a.id_keluhan='$id_keluhan' and a.id_pengguna='$id_pengguna'"; //echo $sql_keluhan_detail; $hasil_keluhan_detail=mysql_query($sql_keluhan_detail); $row_keluhan_detail=mysql_fetch_assoc($hasil_keluhan_detail); $jml_keluhan_detail=mysql_num_rows($hasil_keluhan_detail); if($jml_keluhan_detail==0) { echo "Tidak Anda Data"; exit(); } ?> <table width="500" border="0" cellspacing="2" cellpadding="2" align="center"> <tr valign="top"> <td colspan="3" class="textjudul" align="center">DETAIL KELUHAN/ SARAN<br /></td> </tr> <tr valign="top"> <td width="142">ID Keluhan/ Saran</td> <td width="7">:</td> <td width="451" align="justify"><?php echo $row_keluhan_detail['id_keluhan']; ?></td>

100
</tr> <tr valign="top"> <td>Tanggal </td> <td>:</td> <td align="justify"> <?php echo date("d-m-Y h:i:s",strtotime($row_keluhan_detail['tgl_keluhan'])); ?> </td> </tr> <tr valign="top"> <td> Dari</td> <td>:</td> <td align="justify"> (<?php echo $row_keluhan_detail['id_pengguna']; ?>) <?php echo $row_keluhan_detail['nm_pengguna']; ?> </td> </tr> <tr valign="top"> <td>Judul </td> <td>:</td> <td align="justify"><?php echo $row_keluhan_detail['judul_keluhan']; ?></td> </tr> <tr valign="top"> <td>Isi Pesan</td> <td>:</td> <td align="justify"> <?php echo nl2br($row_keluhan_detail['keluhan']); ?></td> </tr> <tr valign="top" class="garisputus"> <td>&nbsp;</td> <td>&nbsp;</td> <td align="justify">&nbsp;</td> </tr> <tr valign="top"> <td>Tanggal Tanggapan </td> <td>:</td> <td align="justify"> <?php echo date("d-m-Y h:i:s",strtotime($row_keluhan_detail['tgl_tanggapan'])); ?> </td> </tr> <tr valign="top"> <td>Tanggapan Oleh </td> <td>:</td> <td align="justify"> (<?php echo $row_keluhan_detail['id_administrator']; ?>) <?php echo $row_keluhan_detail['nm_administrator']; ?> </td> </tr> <tr valign="top"> <td><strong>Tanggapan</strong></td> <td><strong>:</strong></td> <td align="justify"><strong><?php echo nl2br($row_keluhan_detail['tanggapan']); ?></strong></td> </tr> <tr valign="top"> <td>&nbsp;</td> <td>&nbsp;</td> <td align="justify">&nbsp;</td> </tr> </table> Nama File : keluhan_pengguna_inc.php

101

<?php include_once("cek_status_login.php"); include_once("configuration_pengguna.php"); include_once("koneksi.php"); $id_pengguna=$_SESSION['id_pengguna']; function pesan($msg) { echo "<script>alert(\"Error: $msg\");location.href = 'edit_data_pengguna.php' </script>"; exit(); } ?> <script src="alah_facebook/jquery-1.2.2.pack.js" type="text/javascript"></script> <link href="alah_facebook/facebox.css" media="screen" rel="stylesheet" type="text/css" /> <script src="alah_facebook/facebox.js" type="text/javascript"></script> <script type="text/javascript"> jQuery(document).ready(function($) { $('a[rel*=facebox]').facebox() }) </script> <script LANGUAGE="JavaScript"> <!-function confirmDelete() { var agree=confirm("Apakah Anda YAKIN Menghapus Data ini?"); if (agree) return true ; else return false ; } // --> </script> <table width="620" border="0" cellspacing="0" cellpadding="0" align="center"> <tr> <td width="900" class="garisputus">&nbsp;</td> </tr> <tr> <td height="34" class="garisputus" align="center"><div class="textjudul">DATA KELUHAN/ SARAN <br /> PERUSAHAAN (PENGGUNA LAYANAN) </div></td> </tr> <tr> <td class="garisputus"><a href="keluhan_pengguna.php">Daftar Keluhan/ Saran </a> | <a href="keluhan_pengguna.php?me=new">Input Data Keluhan/ Saran </a></td> </tr> <tr> <td>&nbsp;</td> </tr>

102
</table> <?php $me = isset($_REQUEST['me']) ? $_REQUEST['me'] : ""; switch ($me) { case "": ?> <table width="620" border="0" cellspacing="2" cellpadding="2" align="center"> <tr align="center" bgcolor="#E8F8FC"> <td width="32" height="30"><strong>NO</strong></td> <td width="82"><strong>TANGGAL KIRIM</strong></td> <td width="325"><strong>JUDUL PESAN </strong></td> <td width="88"><strong>TANGGAL BALAS </strong></td> <td><strong>MENU ADMIN </strong></td> </tr> <?php $hal= (isset($_GET['hal'])) ? $_GET['hal'] : 1; $bph=50;//Baris Per Halaman $start=$hal*$bph-$bph; //=========---- SQL $sq="select * from tb_keluhan where id_pengguna='$id_pengguna' order by id_keluhan desc"; //========= $hs=mysql_query($sq); $jum_baris=mysql_num_rows($hs); $halaman=ceil($jum_baris/$bph); $i=0; //=========---- SQL $sql_keluhan="select * from tb_keluhan where id_pengguna='$id_pengguna' order by id_keluhan desc limit $start,$bph";

//====================================================== $hasil_keluhan=mysql_query($sql_keluhan); while($row_keluhan=mysql_fetch_assoc($hasil_keluhan)) { // blok pengulangan kategori $i++; $no=($hal-1)*$bph+$i; if($row_keluhan['tanggapan']!="") { $warna="#E8F8FC"; } else { $warna="#CCCCCC"; } ?> <tr valign="top" bgcolor="<?php echo $warna;?>">

<td align="right"><?php echo $no; ?>.</td>

103
<td> <?php echo date("d-m-Y h:i:s",strtotime($row_keluhan['tgl_keluhan'])); ?> </td> <td> <?php if($row_keluhan['tanggapan']!="") { echo "<a href=\"keluhan_pengguna_detail.php?id_keluhan=$row_keluhan[id_keluhan]\" rel=\"facebox\">"; } echo "$row_keluhan[judul_keluhan] </a>"; ?> </td> <td> <?php if($row_keluhan['tanggapan']!="") { echo date("d-m-Y h:i:s",strtotime($row_keluhan['tgl_tanggapan'])); } else { echo "<strong>Belum direspon</strong>"; } ?> </td> <td width="61" align="center"><a href="keluhan_pengguna.php?me=hapus&id_keluhan=<? echo $row_keluhan['id_keluhan']; ?>" onclick="return confirmDelete()"><img src="images/hapus.png" width="16" height="16" border="0" /> <br /> Hapus</a> </td> </tr> <? } ?> </table> <table width="620" border="0" cellspacing="0" cellpadding="0" align="center"> <tr> <td align="center" height="5"></td> </tr> <tr> <td align="center"> <?php $link_no="keluhan_pengguna.php?"; if($hal>1) { echo "&nbsp;&nbsp;[ <a href=\"$link_no&hal=1\">First</a> ]"; } if($hal>1)

104
{ $hal_back=$hal-1; echo"&nbsp;&nbsp;[ <a href=\"$link_no&hal=$hal_back\">Back</a> ]"; } $n_hal=0; while($n_hal<$halaman) { $n_hal++; if($n_hal==$hal) { echo "&nbsp;[ <strong>$n_hal</strong> ]"; } else { echo "&nbsp;[ <a href=\"$link_no&hal=$n_hal\">$n_hal</a> ]"; } } if($hal<$halaman) { $hal_next=$hal+1; echo"&nbsp;&nbsp;[ <a href=\"$link_no&hal=$hal_next\">Next</a> ]"; } if($hal<$halaman) { echo"&nbsp;&nbsp;[ <a href=\"$link_no&hal=$halaman\">Last</a> ]"; } ?> </td> </tr> <tr> <td align="center">&nbsp;</td> </tr> </table> <?php //===============-------------- Input Baru break; case "new": ?> <script language="JavaScript"> <!-function validasi() { //-- untuk pengecekan validasi email document.form1.submit.disabled=true; document.form1.submit.value='Mohon Tunggu, Sedang di Proses'; } // --> </script>

105
<form name="form1" method="post" action="<?=$_SERVER['PHP_SELF']?>" enctype="multipart/form-data" onSubmit="return validasi();"> <table width="620" border="0" cellspacing="2" cellpadding="2" align="center"> <tr> <td width="149">Judul Pesan</td> <td width="8">:</td> <td width="448" align="justify"><input name="judul" id="judul" title="Judul Pesan" size="35" class="textinput" autofocus required /></td> </tr> <tr> <td width="149">Isi Pesan</td> <td width="8">:</td> <td width="448" align="justify"> <textarea name="keluhan" cols="45" rows="10" class="textinput" id="keluhan" required></textarea> <br /> <em>Mohon Menggunakan Kata-Kata SOPAN dan Tidak Mengandung unsur SARA</em></td> </tr> <tr> <td>&nbsp;</td> <td>&nbsp;</td> <td> <input name="submit" type="submit" value="Simpan Data" class="textinput"/> <input name="me" type="hidden" id="me" value="simpan" /> </td> </tr> </table> </form> <?php //===========----- Proses Simpan break; case "simpan": $judul=$_POST['judul']; $keluhan=$_POST['keluhan']; $date_sekarang=$format_tgl_sekarang; $sql_input="insert into tb_keluhan (id_pengguna,tgl_keluhan,judul_keluhan,keluhan)values ('$id_pengguna','$date_sekarang','$judul','$keluhan')"; //echo $sql_input; $hasil_input=mysql_query($sql_input); if($hasil_input) { echo " <p align=\"center\">Please Wait <br> Data BERHASIL disimpan <br> Terimakasih</p> <p align=\"center\"><img src=\"images/ajax-loader.gif\"></p> <script type=\"text/javascript\"><!-setTimeout('Redirect()',1000); function Redirect() { location.href = 'keluhan_pengguna.php'; } // --></script> ";

106
} else { pesan("Data GAGAL disimpan"); } ?> <?php //====------------ Hapus Data break; case "hapus": $id_keluhan=$_GET['id_keluhan']; $sql_del="delete from tb_keluhan where id_keluhan='$id_keluhan' and id_pengguna='$id_pengguna'"; $hasil_del=mysql_query($sql_del); if($hasil_del) { echo " <p align=\"center\">Please Wait <br> Data BERHASIL dihapus</p> <p align=\"center\"><img src=\"images/ajax-loader.gif\"></p> <script type=\"text/javascript\"><!-setTimeout('Redirect()',1000); function Redirect() { location.href = 'keluhan_pengguna.php'; } // --></script> "; } else { pesan("Data GAGAL dihapus. Terima Kasih"); } ?> <?php } ?> Nama File : koneksi.php <?php $db_name = "dbpenyimpananberkas"; $db_username = "root"; $db_password = ""; $db_host = "localhost"; $connection = mysql_connect($db_host, $db_username, $db_password)or die("Database connection error!!"); mysql_select_db($db_name, $connection) or die("Database select error!!"); ?> Nama File : laporan_data_pengguna_data.php <?php

107
include_once("cek_status_login.php"); include_once("configuration_pengguna.php"); include_once("koneksi.php"); $id_pengguna=$_SESSION['id_pengguna']; $date_sekarang=$format_tgl_sekarang; $sql_data_pengguna="select * from tb_pengguna where id_pengguna='$id_pengguna'"; $hasil_data_pengguna=mysql_query($sql_data_pengguna); $row_data_pengguna=mysql_fetch_assoc($hasil_data_pengguna); ?> <table width="100%" border="0" align="center"> <tr> <td colspan="2" align="center"><strong>LAPORAN BERKAS TERSIMPAN</strong></td> </tr> <tr> <td colspan="2" align="center">&nbsp;</td> </tr> <tr> <td colspan="2" align="center"><strong>Tanggal Download Laporan : <?php echo $date_sekarang; ?></strong></td> </tr> <tr> <td colspan="2" align="left"><strong>Data Perusahaan </strong></td> </tr> <tr> <td width="197" align="left">Nama Perusahaan</td> <td width="443" align="left">: <?php echo "$row_data_pengguna[id_pengguna] ( $row_data_pengguna[nm_pengguna] )"; ?></td> </tr> <tr> <td align="left">Nama Pimpinan</td> <td align="left">: <?php echo "$row_data_pengguna[nm_pimpinan]"; ?></td> </tr> <tr> <td align="left">Alamat</td> <td align="left">: <?php echo "$row_data_pengguna[alamat_pengguna]"; ?></td> </tr> <tr> <td align="left">Telp</td> <td align="left">: <?php echo "$row_data_pengguna[telp_pengguna]"; ?></td> </tr> <tr> <td align="left">No. SIUP</td> <td align="left">: <?php echo "$row_data_pengguna[no_siup]"; ?></td> </tr> <tr> <td align="left">Tanggal Registrasi</td> <td align="left">: <?php echo date("d-m-Y h:i:s",strtotime($row_data_pengguna['tgl_registrasi'])); ?></td> </tr> <tr> <td align="left">Tanggal Konfirmasi</td>

108
<td align="left">: <?php echo date("d-m-Y h:i:s",strtotime($row_data_pengguna['tgl_konfirmasi'])); ?></td> </tr> <tr> <td align="left">&nbsp;</td> <td align="left">&nbsp;</td> </tr> </table> <?php $i=0; $sql_data_kategori="select * from tb_kategori where id_pengguna='$id_pengguna' order by nm_kategori asc"; $hasil_data_kategori=mysql_query($sql_data_kategori); while($row_data_kategori=mysql_fetch_assoc($hasil_data_kategori)) { //echo "Nama Folder : $row_data_kategori[nm_kategori] ( Tanggal : $row_data_kategori[tgl_buat_kategori] )"; ?> <table width="100%" border="0" align="center" cellpadding="0" cellspacing="0"> <tr align="center"> <td width="317">&nbsp;</td> <td width="333">&nbsp;</td> </tr> <tr align="left"> <td colspan="2"><strong><?php echo " NAMA FOLDER : $row_data_kategori[nm_kategori] ( ". date("d-m-Y h:i:s",strtotime($row_data_kategori['tgl_buat_kategori'])) ." )"; ?></strong></td> </tr> <tr align="center"> <td>&nbsp;</td> <td>&nbsp;</td> </tr> </table> <table width="100%" border="1" align="center" cellpadding="0" cellspacing="0"> <tr align="center"> <td width="47" align="center"><strong>NO</strong></td> <td width="154"><strong>TGL. UPLOAD</strong></td> <td width="134"><strong>NAMA BERKAS</strong></td> <td width="69"><strong>UKURAN</strong></td> <td width="234"><strong>MD5</strong></td> </tr> <?php $j=0; $id_kategori=$row_data_kategori['id_kategori']; $sql_data_upload="select * from tb_upload where id_kategori='$id_kategori' and id_pengguna='$id_pengguna' order by nm_upload asc"; $hasil_data_upload=mysql_query($sql_data_upload); while($row_data_upload=mysql_fetch_assoc($hasil_data_upload)) { $j++; ?> <tr align="left"> <td align="center"><?php echo "$j"; ?></td>

109
<td align="left"><?php echo date("d-m-Y h:i:s",strtotime($row_data_upload['tgl_upload'])); ?></td> <td> <?php $file=$row_data_upload['file']; $pecah_nama_file = explode(".", $file); $jml_pecahan_nama_file = count($pecah_nama_file)-1; // jumlah pecahan -1 u/ mengetahui pecahan terakhir $hasil_ekstensi_file = $pecah_nama_file[$jml_pecahan_nama_file]; //docx echo "$row_data_upload[nm_upload].$hasil_ekstensi_file"; ?> </td> <td> <?php $size_file=$row_data_upload['size_file']; if($size_file>=1048576) { $size_file_01=number_format(($size_file/1048576),2); echo "$size_file_01 MB"; } else if ($size_file>=1024) { $size_file_01=number_format(($size_file/1024),2); echo "$size_file_01 KB"; } else { $size_file_01=number_format(($total_space_bytes),2); echo "$size_file_01 bytes"; } ?> </td> <td><?php echo $row_data_upload['md5_file']; ?></td> </tr> <?php } ?> </table> <?php } ?>

Nama File : laporan_data_pengguna_pdf.php <?php include_once("cek_status_login.php"); include_once("configuration_pengguna.php");

110
include_once("koneksi.php"); $date_sekarang=$format_tgl_sekarang; $nm_pengguna=$_SESSION['nm_pengguna']; // activate Output-Buffer: ob_start(); include "laporan_data_pengguna_data.php"; $htmlbuffer=ob_get_contents(); ob_end_clean(); require('html2fpdf/html2fpdf.php'); try { $pdf=new HTML2FPDF; $pdf->AddPage(); $pdf->WriteHTML($htmlbuffer, isset($_GET['vuehtml'])); $pdf->Output('Laporan Berkas '.$nm_pengguna.' (Tanggal '.date("d-m-Y h:i:s",strtotime($date_sekarang)).').pdf','I'); } catch(HTML2PDF_exception $e) { echo $e; } ?> Nama File : logout.php <?php session_start(); include("koneksi.php"); include_once("configuration_pengguna.php"); //================------------- Input Data ke tb_log_administrator $id_pengguna=$_SESSION['id_pengguna']; $date_sekarang=$format_tgl_sekarang; $sql_input_log="insert into tb_log_pengguna (id_pengguna,log_date,status_log) values ('$id_pengguna','$date_sekarang','out')"; mysql_query($sql_input_log); session_destroy(); header("location:index.php"); ?> Nama File : lupa_password.inc.php <?php include_once("configuration_pengguna.php"); include_once("koneksi.php"); function pesan($msg) { echo "<script>alert(\"Error: $msg\");location.href = 'lupa_password.php' </script>"; exit(); } ?> <?php $me = isset($_REQUEST['me']) ? $_REQUEST['me'] : "";

111
switch ($me) { case "": ?> <script language="JavaScript"> <!-function validasi() { //-- untuk pengecekan validasi email document.form1.submit.disabled=true; document.form1.submit.value='Mohon Tunggu, Sedang di Proses'; } // --> </script> <form name="form1" method="post" action="<?=$_SERVER['PHP_SELF']?>" enctype="multipart/form-data" onSubmit="return validasi();"> <table width="500" border="0" cellspacing="2" cellpadding="2" align="center" bgcolor="#FFFFFF"> <tr> <td colspan="3">&nbsp;</td> </tr> <tr> <td colspan="3" align="center"> <div style="font-size:20px;">SELAMAT DATANG <br /> <strong>HALAMAN PENGGUNA LAYANAN </strong> </div> <br /> <div style="font-size:14px; color:#AA0000;"> (Lupa Password isi form form dibawah ini) </div><br /> </td> </tr> <tr> <td width="124">Alamat E-Mail </td> <td width="3">:</td> <td width="273"> <input name="mail" type="email" id="mail" size="25" maxlength="100" class="textinput" placeholder="Alamat E-Mail" autofocus required /> </td> </tr> <tr> <td>&nbsp;</td> <td>&nbsp;</td> <td> <input name="submit" type="submit" value="Cek Alamat E-Mail" class="textinput"/> <input name="me" type="hidden" id="me" value="cek_email" /> </td> </tr> <tr> <td colspan="3" align="right">&nbsp;</td> </tr> <tr> <td colspan="3" align="right">[<a href="index.php">Kembali Ke Halaman Log-In</a>]</td> </tr> <tr> <td colspan="3">&nbsp;</td> </tr> </table>

112
</form> <?php //==============- Cek Berdasarkan E-Mail break; case "cek_email": $mail=$_POST['mail']; $sql_cek_email="select * from tb_pengguna where mail_pengguna='$mail'"; $hasil_cek_email=mysql_query($sql_cek_email); $jml_cek_email=mysql_num_rows($hasil_cek_email); if ($jml_cek_email==1) { $row_cek_email=mysql_fetch_assoc($hasil_cek_email); //================---------------- Membuat Session $_SESSION['nm_pengguna']=$row_cek_email['nm_pengguna']; $_SESSION['mail_pengguna']= $row_cek_email['mail_pengguna']; echo " <p align=\"center\">Mohon Tunggu, Alamat E-Mail DITEMUKAN</p> <p align=\"center\"><img src=\"images/ajax-loader.gif\"></p> <script type=\"text/javascript\"> <!-setTimeout('Redirect()',2000); function Redirect() { location.href = 'lupa_password.php?me=pertanyaan_pengaman'; } // --> </script> "; } else { session_destroy(); pesan("Mohon Maaf, Alamat E-Mail TIDAK Terdaftar"); } //=========================================-------------------------------------------------?> <?php //==============- Halaman Pertanyaan break; case "pertanyaan_pengaman": $mail_pengguna=$_SESSION['mail_pengguna']; $nm_pengguna=$_SESSION['nm_pengguna']; // sql pertanyaan $sql_pertanyaan_pengaman = "select * from tb_pengguna where mail_pengguna='$mail_pengguna'"; $hasil_pertanyaan_pengaman=mysql_query($sql_pertanyaan_pengaman);

113
$row_pertanyaan_pengaman=mysql_fetch_assoc($hasil_pertanyaan_pengaman ); ?> <script language="JavaScript"> <!-function validasi() { //-- untuk pengecekan validasi email document.form1.submit.disabled=true; document.form1.submit.value='Mohon Tunggu, Sedang di Proses'; } // --> </script> <form name="form1" method="post" action="<?=$_SERVER['PHP_SELF']?>" enctype="multipart/form-data" onSubmit="return validasi();"> <table width="500" border="0" cellspacing="2" cellpadding="2" align="center" bgcolor="#FFFFFF"> <tr> <td colspan="3">&nbsp;</td> </tr> <tr> <td colspan="3" align="center"> <div style="font-size:20px;">SELAMAT DATANG <br /> <strong>" <?php echo "$nm_pengguna"; ?> " </strong> </div> <br /> <div style="font-size:14px; color:#AA0000;"> (mohon jawab pertanyaan dibawah ini) </div> <br /> </td> </tr> <tr> <td width="124"><strong>Pertanyaan</strong> </td> <td width="3">:</td> <td width="273"><strong><?php echo $row_pertanyaan_pengaman['tanya_pengguna']; ?>? </strong></td> </tr> <tr> <td width="124"><strong>Jawaban Anda</strong> </td> <td width="3">:</td> <td width="273"> <input name="jawaban" type="text" id="mail" size="25" maxlength="100" class="textinput" placeholder="Jawaban Anda" autofocus required /> </td> </tr> <tr> <td>&nbsp;</td> <td>&nbsp;</td> <td> <input name="submit" type="submit" value="Proses Tahap Selanjutnya" class="textinput"/> <input name="me" type="hidden" id="me" value="jawab_pertanyaan" /> </td> </tr> <tr> <td colspan="3" align="right">&nbsp;</td>

114
</tr> <tr> <td colspan="3" align="right">[<a href="index.php">Kembali Ke Halaman Log-In</a>]</td> </tr> <tr> <td colspan="3">&nbsp;</td> </tr> </table> </form> <?php //==============- Proses Jawab Pertanyaan Berdasarkan E-Mail break; case "jawab_pertanyaan": $mail_pengguna=$_SESSION['mail_pengguna']; $jawab_pengguna=strtolower($_POST['jawaban']); $sql_cek_jawaban="select * from tb_pengguna where mail_pengguna='$mail_pengguna' and jawab_pengguna='$jawab_pengguna'"; $hasil_cek_jawaban=mysql_query($sql_cek_jawaban); $jml_cek_jawaban=mysql_num_rows($hasil_cek_jawaban); if ($jml_cek_jawaban==1) { echo " <p align=\"center\">Jawaban BENAR Mohon Tunggu Sebentar</p> <p align=\"center\"><img src=\"images/ajax-loader.gif\"></p> <script type=\"text/javascript\"> <!-setTimeout('Redirect()',2000); function Redirect() { location.href = 'lupa_password.php?me=password_baru'; } // --> </script> "; } else { session_destroy(); pesan("Mohon Maaf, Jawaban Anda SALAH. Ulangi Proses"); } //=========================================-------------------------------------------------?> <?php //==============- Reset Password break; case "password_baru": $mail_pengguna=$_SESSION['mail_pengguna']; $nm_pengguna=$_SESSION['nm_pengguna'];

115
?> <script language="JavaScript"> <!-function validasi() { //-- untuk pengecekan validasi email document.form1.submit.disabled=true; document.form1.submit.value='Mohon Tunggu, Sedang di Proses'; } // --> </script> <form name="form1" method="post" action="<?=$_SERVER['PHP_SELF']?>" enctype="multipart/form-data" onSubmit="return validasi();"> <table width="500" border="0" cellspacing="2" cellpadding="2" align="center" bgcolor="#FFFFFF"> <tr> <td colspan="3">&nbsp;</td> </tr> <tr> <td colspan="3" align="center"> <div style="font-size:20px;">SELAMAT DATANG <br /> <strong>" <?php echo "$nm_pengguna"; ?> " </strong> </div> <br /> <div style="font-size:14px; color:#AA0000;"> (masukan password baru anda) </div> <br /> </td> </tr> <tr> <td width="137"><strong>Password Baru </strong> </td> <td width="9">:</td> <td width="234"> <input name="pass1" type="password" id="pass1" size="20" maxlength="100" class="textinput" placeholder="Password Baru" autofocus required /></td> </tr> <tr> <td width="137"><strong>Ulangi Sekali Lagi </strong> </td> <td width="9">:</td> <td width="234"> <input name="pass2" type="password" id="pass2" size="20" maxlength="100" class="textinput" placeholder="Ulangi Sekali Lagi" required /> </td> </tr> <tr> <td>&nbsp;</td> <td>&nbsp;</td> <td> <input name="submit" type="submit" value="Rubah Password" class="textinput"/> <input name="me" type="hidden" id="me" value="rubah_password" /> </td> </tr> <tr> <td colspan="3" align="right">&nbsp;</td> </tr> <tr>

116
<td colspan="3" align="right">[<a href="index.php">Kembali Ke Halaman Log-In</a>]</td> </tr> <tr> <td colspan="3">&nbsp;</td> </tr> </table> </form> <?php //==============- Proses Rubah Passwords break; case "rubah_password": $mail_pengguna=$_SESSION['mail_pengguna']; $pass1=$_POST['pass1']; $pass2=$_POST['pass2']; if($pass1!=$pass2) { session_destroy(); pesan("Mohon Maaf, Password TIDAK Sama. Silahkan Ulangi Prosesnya"); } else { $sql_ganti_password = "update tb_pengguna set pass_pengguna=md5('$pass1') where mail_pengguna='$mail_pengguna'"; $hasil_ganti_password = mysql_query($sql_ganti_password) or die(mysql_error()); if($hasil_ganti_password) { echo " <p align=\"center\">Password Baru Anda Berhasil DISIMPAN. Terima Kasih </p> <p align=\"center\"><img src=\"images/ajaxloader.gif\"></p> <script type=\"text/javascript\"><!-setTimeout('Redirect()',3000); function Redirect() { location.href = 'index.php'; } // --></script> "; } else { session_destroy(); pesan("Password Baru GAGAL disimpan"); } } //=========================================-------------------------------------------------?> <?php

117
} ?> Nama File : menu-kiri.php <?php $id_pengguna=$_SESSION['id_pengguna']; if($_SESSION['login']=="ok" && $_SESSION['id_pengguna']!="") { ?> <table width="250" border="0" cellspacing="2" cellpadding="0"> <tr> <td height="33" colspan="2" background="images/background-kiri.png" align="center"><strong>DATA PENGGUNA SISTEM </strong></td> </tr> <tr> <td>&nbsp;</td> <td valign="top"> Selamat Datang, <br /><strong><?php echo $_SESSION['nm_pengguna']; ?></strong> <br /> <strong>ID : </strong> (<?php echo $_SESSION['id_pengguna']; ?>) <br /><br /> </td> </tr> <tr> <td width="19">&nbsp;</td> <td width="225" valign="top"> <?php if($_SESSION['img_pengguna']!="") { echo "<img src=\"data_pengguna/$_SESSION[mail_pengguna]/$_SESSION[img_pengguna]\" width=\"80\" height=\"80\" />"; } else { echo "<img src=\"images/face_kosong.jpg\" width=\"80\" height=\"80\" />"; } ?> </td> </tr> <tr> <td>&nbsp;</td> <td valign="top">&nbsp;</td> </tr> <tr> <td colspan="2"><strong>Pencarian Data Berkas :</strong></td> </tr> <tr> <td colspan="2"> <form name="form_cari" method="get" action="upload_data.php" enctype="multipart/form-data"> <input name="cari" type="text" class="textboxcari" id="cari" value="<?php echo $_GET['cari']; ?>" size="20" maxlength="100" placeholder="Key Word Pencarian"/> </form> </td> </tr> <tr> <td>&nbsp;</td>

118
<td valign="top">&nbsp;</td> </tr> <tr> <td><img src="images/edit.gif" width="12" height="13" /></td> <td valign="top"><a href="edit_data_pengguna.php?me=ganti_photo">Ganti Foto Profil </a></td> </tr> <tr> <td><img src="images/edit.gif" width="12" height="13" /></td> <td valign="top"><a href="edit_data_pengguna.php">Informasi Data Perusahaan</a></td> </tr> <tr> <td><img src="images/edit.gif" width="12" height="13" /></td> <td valign="top"><a href="edit_data_pengguna.php?me=ganti_password">Ganti Password </a></td> </tr> <tr> <td><img src="images/edit.gif" width="12" height="13" /></td> <td valign="top"><a href="space_layanan.php">Informasi Space Anda </a></td> </tr> <tr> <td>&nbsp;</td> <td valign="top">&nbsp;</td> </tr> <tr> <td><img src="images/edit.gif" width="12" height="13" /></td> <td valign="top"><a href="upload_kategori.php">Upload Berkas </a></td> </tr> <tr> <td><img src="images/edit.gif" width="12" height="13" /></td> <td valign="top"><a href="download_list.php">Daftar Download Terakhir </a></td> </tr> <tr> <td><img src="images/edit.gif" width="12" height="13" /></td> <td valign="top"><a href="laporan_data_pengguna_pdf.php" target="_blank">Laporan Berkas Secara Keseluruhan</a></td> </tr> <tr> <td>&nbsp;</td> <td valign="top">&nbsp;</td> </tr> <tr> <td><img src="images/edit.gif" width="12" height="13" /></td> <td valign="top"><a href="keluhan_pengguna.php">Keluhan & Saran</a></td> </tr> <tr> <td><img src="images/edit.gif" width="12" height="13" /></td> <td valign="top"><a href="edit_data_pengguna.php?me=history">History Masuk &amp; Keluar Sistem </a></td> </tr> <tr> <td>&nbsp;</td> <td valign="top">&nbsp;</td> </tr> <tr> <td><img src="images/log-out-icon.gif" width="12" height="13" /></td> <td valign="top"><a href="logout.php">Keluar Halaman </a></td>

119
</tr> <tr> <td>&nbsp;</td> <td valign="top">&nbsp;</td> </tr> <tr> <td valign="top" colspan="2"> <?php //************************************************************* Posisi Grafik Space ?> <table width="245" border="0"> <tr> <td colspan="3" align="right"> <strong>Total Space Anda :</strong> <?php //************** Total Space $sql_total_space_01="select sum(b.space) as space from tb_jml_space a,tb_space b where a.id_space=b.id_space and a.id_pengguna='$id_pengguna'"; $hasil_total_space_01=mysql_query($sql_total_space_01); $row_total_space_01=mysql_fetch_assoc($hasil_total_space_01);

$total_space_bytes=$row_total_space_01['space']; // Variabel Space Awal if($total_space_bytes>=1048576) { $total_space_akhir=number_format(($total_space_bytes/1048576),2); echo "$total_space_akhir MB"; } else if ($total_space_bytes>=1024) { $total_space_akhir=number_format(($total_space_bytes/1024),2); echo "$total_space_akhir KB"; } else { $total_space_akhir=number_format(($total_space_bytes),2); echo "$total_space_akhir bytes"; } ?> </td> </tr> <tr> <td colspan="3" bgcolor="#0099FF" height="20"> <?php $sql_space_terpakai_01="select sum(size_file) as size_terpakai_01 from tb_upload where id_pengguna='$id_pengguna'"; $hasil_space_terpakai_01=mysql_query($sql_space_terpakai_01); $row_space_terpakai_01=mysql_fetch_assoc($hasil_space_terpakai_01);

120

$space_terpakai=$row_space_terpakai_01['size_terpakai_01']; $lebar_persen_terpakai = number_format((($space_terpakai/$total_space_bytes)*100),2); // Variabel Prosestase Space Terpakai echo "<img src=\"images/terpakai.png\" height=\"20px\" width=\"$lebar_persen_terpakai%\"/>"; ?> </td> </tr> <tr> <td colspan="3" align="left"><strong>Keterangan : </strong></td> </tr> <tr> <td width="19" bgcolor="#790101">&nbsp;</td> <td width="86">Space Terpakai</td> <td width="126">: <?php //echo ==-----------------$space_terpakai; if($space_terpakai>=1048576) { $total_space_terpakai_a1=number_format(($space_terpakai/1048576),2); echo "$total_space_terpakai_a1 MB"; } else if ($space_terpakai>=1024) { $total_space_terpakai_a1=number_format(($space_terpakai/1024),2); echo "$total_space_terpakai_a1 KB"; } else { $total_space_terpakai_a1=number_format(($space_terpakai),2); echo "$total_space_terpakai_a1 bytes"; } echo " ($lebar_persen_terpakai %)"; ?> </td> </tr> <tr> <td bgcolor="#0099FF">&nbsp;</td> <td>Sisa Space</td> <td>: <?php //echo ==-----------------$sisa space $sisa_space_kosong=$total_space_bytes$space_terpakai; if($sisa_space_kosong>=1048576) { $total_sisa_space_a1=number_format(($sisa_space_kosong/1048576),2); echo "$total_sisa_space_a1 MB"; } else if ($sisa_space_kosong>=1024) {

121

$total_sisa_space_a1=number_format(($sisa_space_kosong/1024),2); echo "$total_sisa_space_a1 KB"; } else { $total_sisa_space_a1=number_format(($sisa_space_kosong),2); echo "$total_sisa_space_a1 bytes"; }

$persen_sisa_space_a1=number_format((($sisa_space_kosong/$total_space_b ytes)*100),2); echo " ($persen_sisa_space_a1 %)"; ?> </td> </tr> </table> <?php //******************************************************** Posisi Grafik Space END ?> </td> </tr> <tr> <td>&nbsp;</td> <td valign="top">&nbsp;</td> </tr> </table> <?php } else { ?> <table width="250" border="0" cellspacing="2" cellpadding="0"> <tr> <td height="33" colspan="2" background="images/background-kiri.png" align="center"><strong>DATA PENGGUNA SISTEM </strong></td> </tr> <tr> <td width="8">&nbsp;</td> <td width="242" valign="top"> Selamat Datang Pengunjung, <br /> <strong>Belum Memiliki ACCOUNT </strong><br /><br /> <a href="registrasi-pengguna.php">DAFTAR SEKARANG JUGA</a> <br /><br /> <strong>Sudah Memiliki ACCOUNT </strong><br /><br /> <a href="index.php">SILAHKAN LOG-IN </a> <br /> </td> </tr> <tr> <td>&nbsp;</td> <td valign="top">&nbsp;</td> </tr> </table> <?php } ?>

122
<br /> <table width="250" border="0" cellspacing="2" cellpadding="0"> <tr> <td height="33" colspan="2" background="images/background-kiri.png" align="center"><strong>10 PENGGUNA BARU YANG MENDAFTAR </strong></td> </tr> <?php $sql_baru_regis="select * from tb_pengguna where status_konfirmasi='y' order by id_pengguna desc limit 0,10"; $hasil_baru_regis=mysql_query($sql_baru_regis); while($row_baru_regis=mysql_fetch_assoc($hasil_baru_regis)) { ?> <tr> <td width="23"><img src="images/chat-icon.gif" width="15" height="14" /></td> <td width="221" valign="top"><?php echo $row_baru_regis['nm_pengguna']; ?></td> </tr> <tr> <td>&nbsp;</td> <td valign="top"> <em> <?php $tgl_baru_regis=$row_baru_regis['tgl_registrasi']; echo date("d M Y h:i:s",strtotime($tgl_baru_regis)); ?> </em> </td> </tr> <?php } ?> </table> <br /> Nama File : registrasi-pengguna.inc.php <?php session_start(); include_once("configuration_pengguna.php"); include_once("koneksi.php"); function pesan($msg) { echo "<script>alert(\"Error: $msg\");location.href = 'registrasipengguna.php' </script>"; exit(); } ?> <?php $me = isset($_REQUEST['me']) ? $_REQUEST['me'] : ""; switch ($me) { case "": $rekomendasi=$_GET['rekomendasi']; ?> <script src="alah_facebook/jquery-1.2.2.pack.js" type="text/javascript"></script>

123
<link href="alah_facebook/facebox.css" media="screen" rel="stylesheet" type="text/css" /> <script src="alah_facebook/facebox.js" type="text/javascript"></script> <script type="text/javascript"> jQuery(document).ready(function($) { $('a[rel*=facebox]').facebox() }) </script> <script> var checkobj function agreesubmit(el) { checkobj=el if (document.all||document.getElementById) { for (i=0;i<checkobj.form.length;i++) { //hunt down submit button var tempobj=checkobj.form.elements[i] if(tempobj.type.toLowerCase()=="submit") tempobj.disabled=!checkobj.checked } } } function defaultagree(el) { if (!document.all&&!document.getElementById) { if (window.checkobj&&checkobj.checked) return true else { alert("Please read/accept terms to submit form") return false } } } </script> <script language="JavaScript"> <!-function validasi() { //-- untuk pengecekan validasi email document.form1.submit.disabled=true; document.form1.submit.value='Mohon Tunggu, Sedang di Proses'; } // --> </script> <form name="form1" method="post" action="<?=$_SERVER['PHP_SELF']?>" enctype="multipart/form-data" onSubmit="return validasi();"> <input name="rekomendasi" type="hidden" id="rekomendasi" size="25" maxlength="50" class="textinput" value="<?php echo $rekomendasi; ?>" /> <table width="500" border="0" cellspacing="0" cellpadding="0"> <tr>

124
<td colspan="3" height="35" align="center" class="textjudul"><br /><strong>REGISTRASI PERUSAHAAN <br /> ( PENGGUNA LAYANAN )</strong></td> </tr> <tr> <td colspan="3">&nbsp;</td> </tr> <tr> <td colspan="3"><strong>Data Personal Perusahaan</strong></td> </tr> <tr> <td colspan="3">&nbsp;</td> </tr> <tr> <td width="138">Nama Perusahaan </td> <td width="6">:</td> <td width="356"> <input name="nama" type="text" id="nama" size="25" maxlength="50" class="textinput" autofocus required /> </td> </tr> <tr> <td width="138">Nama Pimpinan</td> <td width="6">:</td> <td width="356"> <input name="pimpinan" type="text" id="pimpinan" size="25" maxlength="50" class="textinput" required /> </td> </tr> <tr> <td height="89">Alamat</td> <td>:</td> <td> <textarea name="alamat" class="textinput" cols="30" rows="5" required></textarea></td> </tr> <tr> <td>Telp</td> <td>:</td> <td> <input name="telp" type="text" id="telp" size="20" maxlength="50" class="textinput" required /> </td> </tr> <tr> <td>No. SIUP</td> <td>:</td> <td> <input name="siup" type="text" id="siup" size="20" maxlength="50" class="textinput" required /> </td> </tr> <tr> <td colspan="3">&nbsp;</td> </tr> <tr> <td colspan="3"><strong>Data Login Perusahaan </strong></td> </tr> <tr> <td colspan="3">&nbsp;</td> </tr> <tr>

125
<td width="138">E-Mail Perusahaan</td> <td width="6">:</td> <td width="356"> <input name="mail" type="email" id="mail" size="25" maxlength="50" class="textinput" required /> </td> </tr> <tr> <td>Password</td> <td>:</td> <td> <input name="pass1" type="password" id="pass1" size="20" maxlength="50" class="textinput" required /> </td> </tr> <tr> <td>Konfirmasi Password </td> <td>:</td> <td> <input name="pass2" type="password" id="pass2" size="20" maxlength="50" class="textinput" required /> </td> </tr> <tr> <td colspan="3">&nbsp;</td> </tr> <tr> <td colspan="3"><strong>Data Situs Jejaring Sosial </strong></td> </tr> <tr> <td colspan="3">&nbsp;</td> </tr> <tr> <td width="138">Link Facebook</td> <td width="6">:</td> <td width="356"> <input name="fb" type="text" id="fb" size="25" maxlength="50" class="textinput" /> <font color="#FF0000">*</font> </td> </tr> <tr> <td>Link Twitter</td> <td>:</td> <td> <input name="tw" type="text" id="tw" size="25" maxlength="50" class="textinput" /> <font color="#FF0000">*</font> </td> </tr> <tr> <td colspan="3"><em><font color="#FF0000">* Boleh tidak mengisinya</font></em></td> </tr> <tr> <td colspan="3">&nbsp;</td> </tr> <tr> <td colspan="3"><strong>Data Keamanan </strong></td> </tr> <tr> <td colspan="3">&nbsp;</td> </tr>

126
<tr> <td width="138">Pertanyaan Keamanan </td> <td width="6">:</td> <td width="356"> <input name="tanya" type="text" id="tanya" size="25" maxlength="50" class="textinput" required /> ? </td> </tr> <tr> <td>Jawaban </td> <td>:</td> <td> <input name="jawab" type="text" id="jawab" size="25" maxlength="50" class="textinput" required /></td> </tr> <tr> <td colspan="3">&nbsp;</td> </tr> <tr> <td colspan="3"><strong>Space yang anda dapatkan: </strong></td> </tr> <?php $sql_space="select * from tb_space where id_space='1' order by space asc"; $hasil_space=mysql_query($sql_space); while($row_space=mysql_fetch_assoc($hasil_space)) { ?> <tr> <td width="138" align="right"><input type="radio" name="id_space" value="<?php echo $row_space['id_space']; ?>" checked="checked"></td> <td width="6">&nbsp;</td> <td width="356" valign="middle"><?php echo "$row_space[ket_space] <strong>( ".($row_space[space]/1048576) ." MB )</strong>"; ?> </td> </tr> <?php } ?> <tr> <td colspan="3">&nbsp;</td> </tr> <tr> <td align="right"> <input name="agreecheck" type="checkbox" onClick="agreesubmit(this)"></td> <td>&nbsp;</td> <td> <a href="registrasi-pengguna-prosedur.php" rel="facebox">Saya sudah membaca persyaratan registrasi pengguna layanan</a> </td> </tr> <tr> <td colspan="3">&nbsp;</td> </tr> <tr> <td colspan="3" align="center">

127
<input name="submit" type="submit" value="Melanjutkan Proses Pendaftaran" class="textinput" disabled/> <input name="me" type="hidden" id="me" value="save_data" /> </td> </tr> <tr> <td>&nbsp;</td> <td>&nbsp;</td> <td>&nbsp;</td> </tr> </table> </form> <?php //===========----- Proses Simpan break; case "save_data": $date_sekarang=$format_tgl_sekarang; $nama=$_POST['nama']; $pimpinan=$_POST['pimpinan']; $alamat=$_POST['alamat']; $telp=$_POST['telp']; $siup=$_POST['siup']; $mail=$_POST['mail']; $pass1=md5($_POST['pass1']); $pass2=md5($_POST['pass2']); $fb=$_POST['fb']; $tw=$_POST['tw']; $tanya=$_POST['tanya']; $jawab=strtolower($_POST['jawab']); $rekomendasi=$_POST['rekomendasi']; //echo $rekomendasi; if($pass1!=$pass2) { pesan("Password dan Konfirmasi Password BERBEDA"); } else { if($rekomendasi!="") { $sql_cek_rekomendasi="select * from tb_pengguna where id_pengguna='$rekomendasi' and status_konfirmasi='y'"; //echo $sql_cek_rekomendasi; $hasil_cek_rekomendasi=mysql_query($sql_cek_rekomendasi); $jml_cek_rekomendasi=mysql_num_rows($hasil_cek_rekomendasi); $row_cek_rekomendasi=mysql_fetch_assoc($hasil_cek_rekomendasi); if($jml_cek_rekomendasi>=1) {

128

$rekomendasi_id=$row_cek_rekomendasi['id_pengguna']; } else { $rekomendasi_id=0; } } else { $rekomendasi_id=0; } //echo $rekomendasi_id; $sql_registrasi="insert into tb_pengguna (tgl_registrasi,nm_pengguna,nm_pimpinan,alamat_pengguna,telp_pengguna,no_siup,ma il_pengguna,pass_pengguna,fb_pengguna,twitter_pengguna,tanya_pengguna,jawab_pe ngguna,rekomendasi)values ('$date_sekarang','$nama','$pimpinan','$alamat','$telp','$siup','$mail','$pass1','$fb','$tw','$t anya','$jawab','$rekomendasi_id')"; //echo $sql_input; $hasil_registrasi=mysql_query($sql_registrasi); if($hasil_registrasi) { mkdir("data_pengguna/$mail",0755); echo " <p align=\"center\">Please Wait <br> Data BERHASIL disimpan <br> Terimakasih</p> <p align=\"center\"><img src=\"images/ajax-loader.gif\"></p> <script type=\"text/javascript\"><!-setTimeout('Redirect()',1000); function Redirect() { location.href = 'index.php'; } // --></script> "; } else { pesan("Data GAGAL disimpan"); } } ?> <?php } ?> Nama File : space_layanan_inc.php <?php include_once("cek_status_login.php"); include_once("configuration_pengguna.php"); include_once("koneksi.php");

129
$id_pengguna=$_SESSION['id_pengguna']; $mail_pengguna=$_SESSION['mail_pengguna']; function pesan($msg) { echo "<script>alert(\"Error: $msg\");location.href = 'ganti_space.php' </script>"; exit(); } ?> <script src="alah_facebook/jquery-1.2.2.pack.js" type="text/javascript"></script> <link href="alah_facebook/facebox.css" media="screen" rel="stylesheet" type="text/css" /> <script src="alah_facebook/facebox.js" type="text/javascript"></script> <script type="text/javascript"> jQuery(document).ready(function($) { $('a[rel*=facebox]').facebox() }) </script> <script LANGUAGE="JavaScript"> <!-function confirmDelete() { var agree=confirm("Apakah Anda YAKIN Menghapus Data ini?"); if (agree) return true ; else return false ; } // --> </script> <script language="javascript" type="text/javascript"> <!-- Pop Up /**************************************************** Author: Eric King Url: http://redrival.com/eak/index.shtml This script is free to use as long as this info is left in Featured on Dynamic Drive script library (http://www.dynamicdrive.com) ****************************************************/ var win=null; function NewWindow(mypage,myname,w,h,scroll,pos){ if(pos=="random"){LeftPosition=(screen.width)?Math.floor(Math.random()*(screen.widthw)):100;TopPosition=(screen.height)?Math.floor(Math.random()*((screen.height-h)75)):100;} if(pos=="center"){LeftPosition=(screen.width)?(screen.widthw)/2:100;TopPosition=(screen.height)?(screen.height-h)/2:100;} else if((pos!="center" && pos!="random") || pos==null){LeftPosition=0;TopPosition=20} settings='width='+w+',height='+h+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+s croll+',location=no,directories=no,status=no,menubar=no,toolbar=no,resizable=no'; win=window.open(mypage,myname,settings);} // --> </script> <table width="620" border="0" cellspacing="0" cellpadding="0" align="center"> <tr>

130
<td colspan="4" class="garisputus">&nbsp;</td> </tr> <tr> <td height="34" colspan="4" align="center" class="garisputus"><div class="textjudul">INFORMASI SPACE ANDA</div></td> </tr> <tr> <td colspan="4"><a href="space_layanan.php">[Link Promosi]</a> <a href="space_layanan.php?me=akumulasi">[Akumulasi Space Anda]</a> <a href="space_layanan.php?me=list_pendaftar_promosi">[Pendaftar yang Menggunakan Promosi Anda]</a></td> </tr> </table> <?php $me = isset($_REQUEST['me']) ? $_REQUEST['me'] : ""; switch ($me) { case "": ?> <table width="620" border="0" align="center"> <tr> <td colspan="2" align="center"><br /><strong>COPY LINK PROMOSI ANDA <br /> PADA WEBSITE ATAU MEDIA PROMOSI LAINNYA</strong><br /><br /></td> </tr> <tr valign="top"> <td width="305"> <strong>URL :</strong> <br /><br /> <textarea cols="30" rows="4" readonly="readonly"> <?php echo "http://localhost/onlinestorage/registrasipengguna.php?rekomendasi=$id_pengguna" ?> </textarea> <br /><br /> <strong>Share On : </strong><br /> <a href="http://www.facebook.com/share.php?u=<?php echo "http://localhost/onlinestorage/registrasi-pengguna.php?rekomendasi=$id_pengguna" ?>" title="Share on Facebook" target="_blank"> <img src="images/fb-shared.png" border="0" width="77" height=="25" /> </a> <a href="http://twitter.com/home?status=Share URL - <?php echo "http://localhost/onlinestorage/registrasi-pengguna.php?rekomendasi=$id_pengguna" ?>" title="Share on Twitter" target="_blank"> <img src="images/twitter-shared.jpg" border="0" width="75" height=="25" /></a> </td> <td width="305"> <strong>LINK GAMBAR :</strong> <br /><br /> <textarea cols="30" rows="4" readonly="readonly"> <?php echo "<a href=\"http://localhost/onlinestorage/registrasipengguna.php?rekomendasi=$id_pengguna\" target=\"_blank\"><img src=\"http://localhost/onlinestorage/images/promosi.jpg\" border=\"0\" width=\"200\" height==\"262\" /></a>"; ?> </textarea> <br /><br /> <a href="<?php echo "http://localhost/onlinestorage/registrasipengguna.php?rekomendasi=$id_pengguna"; ?>" target="_blank"><img src="http://localhost/onlinestorage/images/promosi.jpg" border="0" width="200" height=="262" /></a>

131
</td> </tr> </table> <?php break; case "akumulasi": ?> <table width="620" border="0" cellspacing="2" cellpadding="2" align="center"> <tr align="center"> <td height="30" colspan="4"><br /><strong>AKUMULASI SPACE ANDA</strong><br /><br /></td> </tr> <tr align="center" bgcolor="#E8F8FC"> <td width="36" height="30"><strong>NO</strong></td> <td width="145"><strong>TGL </strong></td> <td width="288"><strong>KETERANGAN</strong></td> <td width="125"><strong>JML. SPACE</strong></td> </tr> <?php $hal= (isset($_GET['hal'])) ? $_GET['hal'] : 1; $bph=25;//Baris Per Halaman $start=$hal*$bph-$bph; //=========---- SQL $sq="select a.*,b.* from tb_jml_space a,tb_space b where a.id_space=b.id_space and id_pengguna='$id_pengguna' order by id_jml_space asc"; //========= $hs=mysql_query($sq); $jum_baris=mysql_num_rows($hs); $halaman=ceil($jum_baris/$bph); $i=0; $tot_space=0; //=========---- SQL $sql="select a.*,b.* from tb_jml_space a,tb_space b where a.id_space=b.id_space and id_pengguna='$id_pengguna' order by id_jml_space asc limit $start,$bph"; //====================================================== $hasil=mysql_query($sql); while($row=mysql_fetch_assoc($hasil)) { // blok pengulangan kategori $i++; $tot_space=$tot_space+$row['space']; $no=($hal-1)*$bph+$i; if($no % 2==0) { $warna="#E8F8FC"; } else { $warna="#CCCCCC"; }

132
?> <tr valign="top" bgcolor="<?php echo $warna;?>"> <td align="right"><?php echo $no; ?>.</td> <td><?php echo date("d-m-Y h:i:s",strtotime($tgl_log=$row['tgl_jml_space'])); ?> </td> <td><strong><?php echo $row['ket_space']; ?></strong></td> <td align="right"><strong><?php echo number_format(($row['space']/1048576),2)." MB"; ?></strong></td> </tr> <? } ?> </table> <table width="620" border="0" cellspacing="0" cellpadding="0" align="center"> <tr> <td align="center" height="5"></td> </tr> <tr> <td align="center"> <?php $link_no="space_layanan.php?me=akumulasi"; if($hal>1) { echo "&nbsp;&nbsp;[ <a href=\"$link_no&hal=1\">First</a> ]"; } if($hal>1) { $hal_back=$hal-1; echo"&nbsp;&nbsp;[ <a href=\"$link_no&hal=$hal_back\">Back</a> ]"; } $n_hal=0; while($n_hal<$halaman) { $n_hal++; if($n_hal==$hal) { echo "&nbsp;[ <strong>$n_hal</strong> ]"; } else { echo "&nbsp;[ <a href=\"$link_no&hal=$n_hal\">$n_hal</a> ]"; } } if($hal<$halaman) { $hal_next=$hal+1; echo"&nbsp;&nbsp;[ <a href=\"$link_no&hal=$hal_next\">Next</a> ]"; }

133
if($hal<$halaman) { echo"&nbsp;&nbsp;[ <a href=\"$link_no&hal=$halaman\">Last</a> ]"; } ?> </td> </tr> <tr> <td align="center">&nbsp;</td> </tr> </table> <table width="620" border="0" align="center"> <tr valign="top" bgcolor="#999933"> <td colspan="3" align="right"><strong>TOTAL SPACE ANDA : </strong></td> <td width="126" align="right"><strong> <?php $sql_akumulasi_space="select sum(b.space) as space from tb_jml_space a,tb_space b where a.id_space=b.id_space and id_pengguna='$id_pengguna' order by id_jml_space asc"; $hasil_akumulasi_space=mysql_query($sql_akumulasi_space); $row_akumulasi_space=mysql_fetch_assoc($hasil_akumulasi_space); ?> <?php echo number_format(($row_akumulasi_space['space']/1048576),2). "MB"; ?></strong> </td> </tr> </table> <?php break; case "list_pendaftar_promosi": ?> <table width="620" border="0" cellspacing="2" cellpadding="2" align="center"> <tr align="center"> <td height="30" colspan="5"><br /><strong>DAFTAR PERUSAHAAN <br /> MELALUI PROMOSI ANDA</strong><br /><br /></td> </tr> <tr align="center" bgcolor="#E8F8FC"> <td width="36" height="30"><strong>NO</strong></td> <td width="209"><strong>NAMA PERUSAHAAN</strong></td> <td width="224"><strong>NAMA PIMPINAN</strong></td> <td width="125"><strong>TGL. REGISTRASI</strong></td> <td width="125"><strong>TGL. KONFIRMASI</strong></td> </tr> <?php $hal= (isset($_GET['hal'])) ? $_GET['hal'] : 1; $bph=25;//Baris Per Halaman $start=$hal*$bph-$bph; //=========---- SQL $sq="select * from tb_pengguna where rekomendasi='$id_pengguna' and status_konfirmasi='y' order by nm_pengguna asc"; //=========

134
$hs=mysql_query($sq); $jum_baris=mysql_num_rows($hs); $halaman=ceil($jum_baris/$bph); $i=0; $tot_space=0; //=========---- SQL $sql="select * from tb_pengguna where rekomendasi='$id_pengguna' and status_konfirmasi='y' order by nm_pengguna asc limit $start,$bph"; //====================================================== $hasil=mysql_query($sql); while($row=mysql_fetch_assoc($hasil)) { // blok pengulangan kategori $i++; $tot_space=$tot_space+$row['space']; $no=($hal-1)*$bph+$i; if($no % 2==0) { $warna="#E8F8FC"; } else { $warna="#CCCCCC"; } ?> <tr valign="top" bgcolor="<?php echo $warna;?>"> <td align="right"><?php echo $no; ?>.</td> <td><?php echo $row['nm_pengguna']; ?></td> <td><?php echo $row['nm_pimpinan']; ?></td> <td><?php echo date("d-m-Y h:i:s",strtotime($tgl_log=$row['tgl_registrasi'])); ?></td> <td><?php echo date("d-m-Y h:i:s",strtotime($tgl_log=$row['tgl_konfirmasi'])); ?></td> </tr> <? } ?> </table> <table width="620" border="0" cellspacing="0" cellpadding="0" align="center"> <tr> <td align="center" height="5"></td> </tr> <tr> <td align="center"> <?php $link_no="space_layanan.php?me=akumulasi"; if($hal>1) { echo "&nbsp;&nbsp;[ <a href=\"$link_no&hal=1\">First</a> ]"; } if($hal>1) {

135
$hal_back=$hal-1; echo"&nbsp;&nbsp;[ <a href=\"$link_no&hal=$hal_back\">Back</a> ]"; } $n_hal=0; while($n_hal<$halaman) { $n_hal++; if($n_hal==$hal) { echo "&nbsp;[ <strong>$n_hal</strong> ]"; } else { echo "&nbsp;[ <a href=\"$link_no&hal=$n_hal\">$n_hal</a> ]"; } } if($hal<$halaman) { $hal_next=$hal+1; echo"&nbsp;&nbsp;[ <a href=\"$link_no&hal=$hal_next\">Next</a> ]"; } if($hal<$halaman) { echo"&nbsp;&nbsp;[ <a href=\"$link_no&hal=$halaman\">Last</a> ]"; } ?> </td> </tr> <tr> <td align="center">&nbsp;</td> </tr> </table> <?php } ?> Nama File : upload_data_inc.php

<?php include_once("cek_status_login.php"); include_once("configuration_pengguna.php"); include_once("koneksi.php"); $id_kategori=$_GET['id_kategori']; $cari=$_GET['cari']; $id_pengguna=$_SESSION['id_pengguna']; $mail_pengguna=$_SESSION['mail_pengguna']; function pesan($msg) {

136
echo "<script>alert(\"Error: $msg\");location.href = 'upload_data.php?me=new' </script>"; exit(); } function pesan2($msg) { echo "<script>alert(\"Error: $msg\");location.href = 'javascript:history.go(1)' </script>"; exit(); } ?> <script src="alah_facebook/jquery-1.2.2.pack.js" type="text/javascript"></script> <link href="alah_facebook/facebox.css" media="screen" rel="stylesheet" type="text/css" /> <script src="alah_facebook/facebox.js" type="text/javascript"></script> <script type="text/javascript"> jQuery(document).ready(function($) { $('a[rel*=facebox]').facebox() }) </script> <script LANGUAGE="JavaScript"> <!-function confirmDelete() { var agree=confirm("Apakah Anda YAKIN Menghapus Data ini?"); if (agree) return true ; else return false ; } // --> </script> <script language="javascript" type="text/javascript"> <!-- Pop Up /**************************************************** Author: Eric King Url: http://redrival.com/eak/index.shtml This script is free to use as long as this info is left in Featured on Dynamic Drive script library (http://www.dynamicdrive.com) ****************************************************/ var win=null; function NewWindow(mypage,myname,w,h,scroll,pos){ if(pos=="random"){LeftPosition=(screen.width)?Math.floor(Math.random()*(screen.widthw)):100;TopPosition=(screen.height)?Math.floor(Math.random()*((screen.height-h)75)):100;} if(pos=="center"){LeftPosition=(screen.width)?(screen.widthw)/2:100;TopPosition=(screen.height)?(screen.height-h)/2:100;} else if((pos!="center" && pos!="random") || pos==null){LeftPosition=0;TopPosition=20} settings='width='+w+',height='+h+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+s croll+',location=no,directories=no,status=no,menubar=no,toolbar=no,resizable=no'; win=window.open(mypage,myname,settings);} // -->

137
</script> <table width="620" border="0" cellspacing="0" cellpadding="0" align="center"> <tr> <td colspan="4" class="garisputus">&nbsp;</td> </tr> <tr> <td height="34" colspan="4" align="center" class="garisputus"><div class="textjudul">UPLOAD DATA PENGGUNA </div></td> </tr> <tr valign="top" align="center"> <td width="36"> <a href="upload_kategori.php"> <img src="images/back.png" width="35" height="35" border="0" /> <br /> Back </a> </td> <td width="85"> <?php //**** cek kategori ada tidaknya $sql_cek_jml_kategori="select * from tb_kategori where id_pengguna='$id_pengguna'"; $hasil_cek_jml_kategori=mysql_query($sql_cek_jml_kategori); $jml_cek_jml_kategori=mysql_num_rows($hasil_cek_jml_kategori); if($jml_cek_jml_kategori>0) { echo"<a href=\"upload_data.php?me=new&id_kategori=$id_kategori\"><img src=\"images/upload.png\" width=\"35\" height=\"35\" border=\"0\" /> <br /> Upload Data </a>"; } ?> </td> <td width="429">&nbsp;</td> </tr> <tr> <td colspan="4" align="right"> <?php if($id_kategori!="") { $sql_posisi_folder="select * from tb_kategori where id_kategori='$id_kategori' and id_pengguna='$id_pengguna'"; $hasil_posisi_folder=mysql_query($sql_posisi_folder); $row_posisi_folder=mysql_fetch_assoc($hasil_posisi_folder); echo "Posisi Folder : <strong>$row_posisi_folder[nm_kategori]</strong> <br><br>"; } ?> </td> </tr> </table> <?php

138
$me = isset($_REQUEST['me']) ? $_REQUEST['me'] : ""; switch ($me) { case "": ?> <table width="620" border="0" cellspacing="2" cellpadding="2" align="center"> <tr align="center" bgcolor="#E8F8FC"> <td width="24" height="30"><strong>NO</strong></td> <td width="24" height="30"><strong>ID <br /> FILE </strong></td> <td><strong>NAMA FILE </strong></td> <td width="69"><strong>TGL UPLOAD </strong></td> <td width="78"><strong>BESAR BERKAS</strong></td> <td width="55"><strong>DOWN <br /> LOAD </strong></td> <td colspan="2"><strong>MENU ADMIN </strong></td> </tr> <?php $hal= (isset($_GET['hal'])) ? $_GET['hal'] : 1; $bph=25;//Baris Per Halaman $start=$hal*$bph-$bph; //=========---- SQL if($id_kategori!="") { $sq="select * from tb_upload where id_kategori='$id_kategori' and id_pengguna='$id_pengguna' order by nm_upload asc"; } if($cari!="") { $sq="select * from tb_upload where (nm_upload LIKE '%$cari%' or ket LIKE '%$cari%') and id_pengguna='$id_pengguna' order by nm_upload asc"; } //========= $hs=mysql_query($sq); $jum_baris=mysql_num_rows($hs); $halaman=ceil($jum_baris/$bph); $i=0; //=========---- SQL if($id_kategori!="") { $sql_fileupload="select * from tb_upload where id_kategori='$id_kategori' and id_pengguna='$id_pengguna' order by nm_upload asc limit $start,$bph"; } if($cari!="") { $sql_fileupload="select * from tb_upload where (nm_upload LIKE '%$cari%' or ket LIKE '%$cari%') and id_pengguna='$id_pengguna' order by nm_upload asc limit $start,$bph"; }

139

//====================================================== $hasil_fileupload=mysql_query($sql_fileupload); while($row_fileupload=mysql_fetch_assoc($hasil_fileupload)) { // blok pengulangan kategori $i++; $no=($hal-1)*$bph+$i; if($no % 2==0) { $warna="#E8F8FC"; } else { $warna="#CCCCCC"; } ?> <tr valign="top" bgcolor="<?php echo $warna;?>"> <td align="right"><?php echo $no; ?>.</td> <td align="right"><?php echo $row_fileupload['id_upload']; ?>.</td> <td width="194" valign="top"> <?php //************************* menampilkan tipe file $data_fileupload=$row_fileupload['file']; //echo "$data_fileupload"; $pecah_nama_fileupload = explode(".", $data_fileupload); $jml_pecahan_nama_fileupload = count($pecah_nama_fileupload)-1; // jumlah pecahan -1 u/ mengetahui pecahan terakhir //echo $jml_pecahan_nama_fileupload; $hasil_ekstensi_fileupload = $pecah_nama_fileupload[$jml_pecahan_nama_fileupload]; //docx //echo "$hasil_ekstensi_fileupload"; $sql_cek_ekstensi_fileupload="select * from tb_extension where extension_file = '$hasil_ekstensi_fileupload'"; echo $sql_cek_ekstensi; $hasil_cek_ekstensi_fileupload=mysql_query($sql_cek_ekstensi_fileupload); $row_ekstensi_ketemu_fileupload=mysql_fetch_assoc($hasil_cek_ekstensi_fileu pload); echo "<a href=\"#\" onclick=\"NewWindow('cek_md5_file.php?id_upload=$row_fileupload[id_upload]','mywin', '530','460','no','center');return false\" onfocus=\"this.blur()\"><strong>$row_fileupload[nm_upload].$row_ekstensi_ketemu_fileu pload[extension_file]</strong></a>"; echo "<br><strong>Tipe File :</strong> <br> $row_ekstensi_ketemu_fileupload[nm_extension]"; ?> </td> <td> <?php echo date("d-m-Y h:i:s",strtotime($row_fileupload['tgl_upload']));

140
?> </td> <td align="center"> <?php $size_file=$row_fileupload['size_file']; if($size_file>=1048576) { $size_file_01=number_format(($size_file/1048576),2); echo "$size_file_01 MB"; } else if ($size_file>=1024) { $size_file_01=number_format(($size_file/1024),2); echo "$size_file_01 KB"; } else { $size_file_01=number_format(($total_space_bytes),2); echo "$size_file_01 bytes"; } ?> </td> <td align="center"> <form name="form1" method="post" action="download_data.php" target="_blank" enctype="multipart/form-data"> <input type="hidden" name="id_upload" value="<?php echo $row_fileupload['id_upload']; ?>"> <input name="submit" type="image" src="images/download.png" width="30" height="30"/> </form> </td> <td width="41" align="center"><a href="upload_data.php?me=edit_form&id_kategori=<?php echo $row_fileupload['id_kategori']; ?>&id_upload=<?php echo $row_fileupload['id_upload']; ?>"><img src="images/rubah.png" width="16" height="16" border="0" /> <br /> Rubah</a> </td> <td width="45" align="center"><a href="upload_data.php?me=hapus&id_kategori=<?php echo $row_fileupload['id_kategori']; ?>&id_upload=<?php echo $row_fileupload['id_upload']; ?>" onclick="return confirmDelete()"><img src="images/hapus.png" width="16" height="16" border="0" /> <br /> Hapus</a> </td> </tr> <? } ?> <tr valign="top" bgcolor="#FF99CC"> <td colspan="9" align="left"> <strong>Keterangan :</strong> <br /> Klik <strong>Nama File</strong> Untuk Cek Keaslian Data yang di download </td> </tr> </table> <table width="620" border="0" cellspacing="0" cellpadding="0" align="center"> <tr> <td align="center" height="5"></td> </tr> <tr> <td align="center">

141
<?php $link_no="upload_data.php?id_kategori=$id_kategori&cari=$cari"; if($hal>1) { echo "&nbsp;&nbsp;[ <a href=\"$link_no&hal=1\">First</a> ]"; } if($hal>1) { $hal_back=$hal-1; echo"&nbsp;&nbsp;[ <a href=\"$link_no&hal=$hal_back\">Back</a> ]"; } $n_hal=0; while($n_hal<$halaman) { $n_hal++; if($n_hal==$hal) { echo "&nbsp;[ <strong>$n_hal</strong> ]"; } else { echo "&nbsp;[ <a href=\"$link_no&hal=$n_hal\">$n_hal</a> ]"; } } if($hal<$halaman) { $hal_next=$hal+1; echo"&nbsp;&nbsp;[ <a href=\"$link_no&hal=$hal_next\">Next</a> ]"; } if($hal<$halaman) { echo"&nbsp;&nbsp;[ <a href=\"$link_no&hal=$halaman\">Last</a> ]"; } ?> </td> </tr> <tr> <td align="justify">&nbsp;</td> </tr> </table> <?php //===============-------------- Input Baru break; case "new": ?>

142

<script language="JavaScript"> <!-function validasi() { //-- untuk pengecekan validasi email document.form1.submit.disabled=true; document.form1.submit.value='Mohon Tunggu, Sedang di Proses'; } // --> </script> <form name="form1" method="post" action="<?=$_SERVER['PHP_SELF']?>" enctype="multipart/form-data" onSubmit="return validasi();"> <table width="620" border="0" cellspacing="2" cellpadding="2" align="center"> <tr> <td width="144">Nama File </td> <td width="8">:</td> <td width="448" align="justify"><input name="nama" type="text" id="nama" size="30" maxlength="100" class="textinput" placeholder="Nama File" autofocus required /></td> </tr> <tr> <td width="144">Keterangan</td> <td width="8">:</td> <td width="448" align="justify"><textarea name="keterangan" cols="40" rows="5" class="textinput" id="keterangan" placeholder="Keterangan Tambahan"></textarea></td> </tr> <tr> <td width="144">Folder Kategori</td> <td width="8">:</td> <td width="448" align="justify"> <select name="kategori" class="textinput" id="kategori"> <? $id_kategori_get= $_GET['id_kategori']; $sql_kategori_file="select * from tb_kategori where id_pengguna='$id_pengguna' order by nm_kategori asc"; $hasil_kategori_file=mysql_query($sql_kategori_file); while($row_kategori_file=mysql_fetch_assoc($hasil_kategori_file)) { if ($row_kategori_file['id_kategori']==$id_kategori_get) echo "<option value=\"$row_kategori_file[id_kategori]\" selected=\"selected\">$row_kategori_file[nm_kategori]</option>"; else echo "<option value=\"$row_kategori_file[id_kategori]\">$row_kategori_file[nm_kategori]</option>"; } ?> </select> </td> </tr> <tr> <td width="144">Upload File</td> <td width="8">:</td> <td width="448" align="justify"><input type="file" class="textinput" name="file_upload" id="file_upload" required /></td> </tr> <tr>

143
<td>&nbsp;</td> <td>&nbsp;</td> <td> <input name="submit" type="submit" value="Simpan Data" class="textinput"/> <input name="me" type="hidden" id="me" value="simpan" /> </tr> <tr> <td colspan="3">&nbsp;</td> </tr> </table> </form> <?php //===========----- Proses Simpan break; case "simpan": $nama=$_POST['nama']; $keterangan=$_POST['keterangan']; $id_kategori=$_POST['kategori']; $type_file=$_FILES['file_upload']['type']; $size_file=$_FILES['file_upload']['size']; //************************************* cek ekstensi file dan besarnya file per ekstensi yang diperbolehkan $nama_file=$_FILES["file_upload"]["name"]; //echo $nama_file; $pecah_nama_file = explode(".", $nama_file); $jml_pecahan_nama_file = count($pecah_nama_file)-1; // jumlah pecahan -1 u/ mengetahui pecahan terakhir $hasil_ekstensi_file = $pecah_nama_file[$jml_pecahan_nama_file]; // docx //echo $hasil_ekstensi_file; $sql_cek_ekstensi="select * from tb_extension where extension_file = '$hasil_ekstensi_file'"; //echo $sql_cek_ekstensi; $hasil_cek_ekstensi=mysql_query($sql_cek_ekstensi); $jml_ekstensi_ketemu=mysql_num_rows($hasil_cek_ekstensi); if($jml_ekstensi_ketemu==0) { pesan("Tipe File ini, BUKAN Tipe File yang terdapat pada DAFTAR EKSTENSI. File Anda = $hasil_ekstensi_file"); } $row_ekstensi_ketemu=mysql_fetch_assoc($hasil_cek_ekstensi); if($row_ekstensi_ketemu['maximum_size_file']<$size_file) { pesan("Ukuran File MELEBIHI Ukuran Maximum. Maximum File = $row_ekstensi_ketemu[maximum_size_file] byte, File Anda $size_file byte"); } //************************************* cek space pengguna // Cek Jumlah Space Awal

</td>

144
$sql_space_awal="select sum(b.space) as tot_space_awal from tb_jml_space a, tb_space b where a.id_space=b.id_space and a.id_pengguna='$id_pengguna'"; $hasil_space_awal=mysql_query($sql_space_awal); $row_space_awal=mysql_fetch_assoc($hasil_space_awal); $jml_space_awal=$row_space_awal['tot_space_awal']; // Cek Jumlah Space Terpakai $sql_space_terpakai="select sum(size_file) as terpakai from tb_upload where id_pengguna='$id_pengguna'"; $hasil_space_terpakai=mysql_query($sql_space_terpakai); $row_space_terpakai=mysql_fetch_assoc($hasil_space_terpakai); $jml_space_terpakai=$row_space_terpakai['terpakai']; $space_sisa=$jml_space_awal-$jml_space_terpakai; if($size_file>$space_sisa) { pesan("Sisa Space Anda TIDAK MENCUKUPI. Sisa SPACE Anda = $space_sisa bytes, Sementara File = $size_file bytes"); } //************************************* upload data dan cek md5 file //*** Ganti Nama File $no_acak_01=rand(000000000,999999999); $no_acak_02=rand(000000000,999999999); $no_acak_03=rand(000000000,999999999); $ganti_nama_file = $no_acak_01."-".$no_acak_02."".$no_acak_03.".".$hasil_ekstensi_file; // nm_file_yg_diupload //echo $ganti_nama_file; //*** Upload File $tmp_file_upload=$_FILES["file_upload"]["tmp_name"]; $tujuan_folder_upload="data_pengguna/$mail_pengguna/"; if(move_uploaded_file($tmp_file_upload,"$tujuan_folder_upload".$ganti_nama_fil e)) { echo "<center>Gambar Sukses di Upload Dengan Nama : <strong>$ganti_nama_file</strong></center>"; } else { pesan("Gagal Mengupload Data"); } //********************* Hitung MD5 dengan Fungsi // cek md5 file online : http://md5.my-addr.com/md5sum_for_filemd5_file_checksum/online_md5_file_hash_generator_tool.php // https://defuse.ca/checksums.htm $file_md5_url="data_pengguna/$mail_pengguna/$ganti_nama_file"; $hitung_md5=md5_file($file_md5_url); //echo $hitung_md5; //******************** $date_sekarang=$format_tgl_sekarang;

145

$sql_input="insert into tb_upload (nm_upload,ket,id_kategori,type_file,size_file,file,md5_file,id_pengguna,tgl_upload)value s ('$nama','$keterangan','$id_kategori','$type_file','$size_file','$ganti_nama_file','$hitung_m d5','$id_pengguna','$date_sekarang')"; //echo $sql_input; $hasil_input=mysql_query($sql_input); if($hasil_input) { echo " <p align=\"center\">Please Wait <br> Data BERHASIL disimpan <br> Terimakasih</p> <p align=\"center\"><img src=\"images/ajax-loader.gif\"></p> <script type=\"text/javascript\"><!-setTimeout('Redirect()',1000); function Redirect() { location.href = 'upload_data.php?id_kategori=$id_kategori'; } // --></script> "; } else { pesan("Data GAGAL disimpan"); } ?> <? break; case "hapus": $id_upload=$_GET[id_upload]; $sql_select_data="select * from tb_upload where id_upload='$id_upload' and id_pengguna='$id_pengguna'"; $hasil_select_data=mysql_query($sql_select_data); while ($row_select_data=mysql_fetch_assoc($hasil_select_data)) { $tempat_simpan_data="data_pengguna/$mail_pengguna/$row_select_data[file]"; if ($row_select_data['file']!="" && file_exists("$tempat_simpan_data")) { unlink($tempat_simpan_data); //======-------------------------------------------------$sql_delete_data="delete from tb_upload where id_upload='$id_upload' and id_pengguna='$id_pengguna'"; $hasil_delete_data=mysql_query($sql_delete_data); } echo " <p align=\"center\">File Anda BERHASIL di HAPUS </p> <p align=\"center\"><img src=\"images/ajax-loader.gif\"><br> Please Wait</p> <script type=\"text/javascript\"><!--

146
setTimeout('Redirect()',3000); function Redirect() { location.href = 'upload_data.php?id_kategori=$id_kategori'; } // --></script> "; } ?> <? //=====--- Form Rubah break; case "edit_form": $id_upload=$_GET['id_upload']; $sql_data="select * from tb_upload where id_upload='$id_upload' and id_pengguna='$id_pengguna'"; $hasil_data=mysql_query($sql_data); $row_data=mysql_fetch_assoc($hasil_data); ?> <script language="JavaScript"> <!-function validasi() { //-- untuk pengecekan validasi email document.form1.submit.disabled=true; document.form1.submit.value='Mohon Tunggu, Sedang di Proses'; } // --> </script> <form name="form1" method="post" action="<?=$_SERVER['PHP_SELF']?>" enctype="multipart/form-data" onSubmit="return validasi();"> <input type="hidden" name="id" value="<?php echo $id_upload; ?>"> <input type="hidden" name="nm_file_lama_01" value="<?php echo $row_data['file'];?>"> <input type="hidden" name="size_file_lama_01" value="<?php echo $row_data['size_file'];?>"> <table width="620" border="0" cellspacing="2" cellpadding="2" align="center"> <tr> <td width="144">Nama File </td> <td width="8">:</td> <td width="448" align="justify"><input name="nama" type="text" id="nama" size="30" maxlength="100" class="textinput" placeholder="Nama File" value="<?php echo $row_data['nm_upload'];?>" autofocus required /></td> </tr> <tr> <td width="144">Keterangan</td> <td width="8">:</td> <td width="448" align="justify"><textarea name="keterangan" cols="40" rows="5" class="textinput" id="keterangan" placeholder="Keterangan Tambahan"><?php echo $row_data['ket'];?></textarea></td> </tr> <tr> <td width="144">Folder Kategori</td> <td width="8">:</td> <td width="448" align="justify">

147
<select name="kategori" class="textinput" id="kategori"> <? $id_kategori= $row_data['id_kategori']; $sql_kategori_file="select * from tb_kategori where id_pengguna='$id_pengguna' order by nm_kategori asc"; $hasil_kategori_file=mysql_query($sql_kategori_file); while($row_kategori_file=mysql_fetch_assoc($hasil_kategori_file)) { if ($row_kategori_file['id_kategori']==$id_kategori) echo "<option value=\"$row_kategori_file[id_kategori]\" selected=\"selected\">$row_kategori_file[nm_kategori]</option>"; else echo "<option value=\"$row_kategori_file[id_kategori]\">$row_kategori_file[nm_kategori]</option>"; } ?> </select> </td> </tr> <tr valign="top"> <td width="144">Upload File</td> <td width="8">:</td> <td width="448" align="justify"><input type="file" class="textinput" name="file_upload" id="file_upload" /> <br /> Kosongkan jika TIDAK ingin merubah file yang disimpan </td> </tr> <tr> <td>&nbsp;</td> <td>&nbsp;</td> <td> <input name="submit" type="submit" value="Simpan Data" class="textinput"/> <input name="me" type="hidden" id="me" value="edit_proses" /> </td> </tr> <tr> <td colspan="3">&nbsp;</td> </tr> </table> </form> <? //============---- Proses Edit break; case "edit_proses": $id = $_POST ['id']; $nama = $_POST ['nama']; $keterangan = $_POST['keterangan']; $id_kategori = $_POST['kategori']; $nm_file_lama_01=$_POST['nm_file_lama_01']; $size_file_lama_01=$_POST['size_file_lama_01']; $nm_file_baru_01=$_FILES["file_upload"]["name"]; if ($nm_file_baru_01!="")

148
{ $type_file=$_FILES['file_upload']['type']; $size_file=$_FILES['file_upload']['size']; //************************************* cek ekstensi file dan besarnya file per ekstensi yang diperbolehkan $pecah_nama_file = explode(".", $nm_file_baru_01); $jml_pecahan_nama_file = count($pecah_nama_file)-1; // jumlah pecahan -1 u/ mengetahui pecahan terakhir $hasil_ekstensi_file = $pecah_nama_file[$jml_pecahan_nama_file]; //Ex : docx $sql_cek_ekstensi="select * from tb_extension where extension_file = '$hasil_ekstensi_file'"; $hasil_cek_ekstensi=mysql_query($sql_cek_ekstensi); $jml_ekstensi_ketemu=mysql_num_rows($hasil_cek_ekstensi); if($jml_ekstensi_ketemu<1) { pesan2("Tipe File ini, BUKAN Tipe File yang terdapat pada DAFTAR EKSTENSI. File Anda = $hasil_ekstensi_file"); } //cek besar file per ekstensi $row_ekstensi_ketemu=mysql_fetch_assoc($hasil_cek_ekstensi); if($row_ekstensi_ketemu['maximum_size_file']<$size_file) { pesan2("Ukuran File MELEBIHI Ukuran Maximum. Maximum File = $row_ekstensi_ketemu[maximum_size_file] byte, File Anda $size_file byte"); } //************************************* cek space pengguna // Cek Jumlah Space Awal $sql_space_awal="select sum(b.space) as tot_space from tb_jml_space a, tb_space b where a.id_space=b.id_space and a.id_pengguna='$id_pengguna'"; $hasil_space_awal=mysql_query($sql_space_awal); $row_space_awal=mysql_fetch_assoc($hasil_space_awal); $jml_space_awal=$row_space_awal['tot_space']; // Cek Jumlah Space Terpakai $sql_space_terpakai="select sum(size_file) as terpakai from tb_upload where id_pengguna='$id_pengguna'"; $hasil_space_terpakai=mysql_query($sql_space_terpakai); $row_space_terpakai=mysql_fetch_assoc($hasil_space_terpakai); $jml_space_terpakai=$row_space_terpakai['terpakai'] $size_file_lama_01; // total space terpakai - space file lama $space_sisa=$jml_space_awal-$jml_space_terpakai; if($size_file>$space_sisa) { pesan2("Sisa Space Anda TIDAK MENCUKUPI. Sisa SPACE Anda = $space_sisa bytes, Sementara File = $size_file bytes"); } //************************************* upload data dan cek md5 file serta hapus data di direktori

149

//***** File Baru //*** Ganti Nama File $no_acak_01=rand(000000000,999999999); $no_acak_02=rand(000000000,999999999); $no_acak_03=rand(000000000,999999999); $ganti_nama_file = $no_acak_01."-".$no_acak_02."".$no_acak_03.".".$hasil_ekstensi_file; //echo $ganti_nama_file; //*** Upload File $tmp_file_upload=$_FILES["file_upload"]["tmp_name"]; $tujuan_folder_upload="data_pengguna/$mail_pengguna/";

if(move_uploaded_file($tmp_file_upload,"$tujuan_folder_upload".$ganti_nama_fil e)) { echo "<center>Gambar Sukses di Upload Dengan Nama : <strong>$ganti_nama_file</strong></center>"; } else { pesan2("Gagal Mengupload Data"); } //********************* Hitung MD5 dengan Fungsi // cek md5 file online : http://md5.my-addr.com/md5sum_for_filemd5_file_checksum/online_md5_file_hash_generator_tool.php // https://defuse.ca/checksums.htm $file_md5_url="data_pengguna/$mail_pengguna/$ganti_nama_file"; $hitung_md5=md5_file($file_md5_url); //echo $hitung_md5; //**********************Hapus File Lama dr direktory $lokasi_file_lama_01="data_pengguna/$mail_pengguna/$nm_file_lama_01"; if ($nm_file_lama_01!="" && file_exists("$lokasi_file_lama_01")) { unlink($lokasi_file_lama_01); } //******************** $sql_edit = "update tb_upload set nm_upload='$nama',ket='$keterangan',id_kategori='$id_kategori',type_file='$type_file',siz e_file='$size_file',file='$ganti_nama_file',md5_file='$hitung_md5' where id_upload='$id' and id_pengguna='$id_pengguna'"; } else { // Jika tidak merubah file $sql_edit = "update tb_upload set nm_upload='$nama',ket='$keterangan',id_kategori='$id_kategori' where id_upload='$id' and id_pengguna='$id_pengguna'";

150
//echo $sql_edit; } //----------------$hasil_edit = mysql_query($sql_edit); if($hasil_edit) { echo " <p align=\"center\">Please Wait <br> Data BERHASIL dirubah <br> Terimakasih</p> <p align=\"center\"><img src=\"images/ajax-loader.gif\"></p> <script type=\"text/javascript\"><!-setTimeout('Redirect()',2000); function Redirect() { location.href = 'upload_data.php?id_kategori=$id_kategori'; } // --></script> "; } else { pesan2("Data GAGAL dirubah. Terima Kasih"); } ?> <?php } ?> Nama File : upload_kategori_inc.php <?php include_once("cek_status_login.php"); include_once("configuration_pengguna.php"); include_once("koneksi.php"); $id_pengguna=$_SESSION['id_pengguna']; $mail_pengguna=$_SESSION['mail_pengguna']; function pesan($msg) { echo "<script>alert(\"Error: $msg\");location.href = 'upload_kategori.php' </script>"; exit(); } ?> <script src="alah_facebook/jquery-1.2.2.pack.js" type="text/javascript"></script> <link href="alah_facebook/facebox.css" media="screen" rel="stylesheet" type="text/css" /> <script src="alah_facebook/facebox.js" type="text/javascript"></script> <script type="text/javascript"> jQuery(document).ready(function($) { $('a[rel*=facebox]').facebox() })

151
</script> <script LANGUAGE="JavaScript"> <!-function confirmDelete() { var agree=confirm("Apakah Anda YAKIN Menghapus Data ini?"); if (agree) return true ; else return false ; } // --> </script> <table width="620" border="0" cellspacing="0" cellpadding="0" align="center"> <tr> <td colspan="4" class="garisputus">&nbsp;</td> </tr> <tr> <td height="34" colspan="4" align="center" class="garisputus"><div class="textjudul">UPLOAD DATA PENGGUNA </div></td> </tr> <tr valign="top" align="center"> <td width="36"> <a href="upload_kategori.php"> <img src="images/back.png" width="35" height="35" border="0" /> <br /> Back </a> </td> <td width="85"> <a href="upload_kategori.php?me=new"> <img src="images/new_folder.png" width="35" height="35" border="0" /> <br /> Folder Baru </a> </td> <td width="85"> <?php //**** cek kategori ada tidaknya $sql_cek_jml_kategori="select * from tb_kategori where id_pengguna='$id_pengguna'"; $hasil_cek_jml_kategori=mysql_query($sql_cek_jml_kategori); $jml_cek_jml_kategori=mysql_num_rows($hasil_cek_jml_kategori); if($jml_cek_jml_kategori>0) { echo"<a href=\"upload_data.php?me=new\"><img src=\"images/upload.png\" width=\"35\" height=\"35\" border=\"0\" /> <br /> Upload Data </a>"; } ?> </td> <td width="429">&nbsp;</td> </tr> <tr>

152
<td colspan="4">&nbsp;</td> </tr> </table> <?php $me = isset($_REQUEST['me']) ? $_REQUEST['me'] : ""; switch ($me) { case "": ?> <table width="620" border="0" cellspacing="2" cellpadding="2" align="center"> <tr align="center" bgcolor="#E8F8FC"> <td width="29" height="30"><strong>NO</strong></td> <td><strong>NAMA KATEGORI FOLDER </strong></td> <td width="115"><strong>TGL BUAT </strong></td> <td width="116"><strong>TGL UPLOAD TERAKHIR</strong></td> <td colspan="2"><strong>MENU ADMIN </strong></td> </tr> <?php $hal= (isset($_GET['hal'])) ? $_GET['hal'] : 1; $bph=25;//Baris Per Halaman $start=$hal*$bph-$bph; //=========---- SQL $sq="select * from tb_kategori where id_pengguna='$id_pengguna' order by nm_kategori asc"; //========= $hs=mysql_query($sq); $jum_baris=mysql_num_rows($hs); $halaman=ceil($jum_baris/$bph); $i=0; //=========---- SQL $sql_kategori="select * from tb_kategori where id_pengguna='$id_pengguna' order by nm_kategori asc limit $start,$bph";

//====================================================== $hasil_kategori=mysql_query($sql_kategori); while($row_kategori=mysql_fetch_assoc($hasil_kategori)) { // blok pengulangan kategori $i++; $no=($hal-1)*$bph+$i; if($no % 2==0) { $warna="#E8F8FC"; } else { $warna="#CCCCCC"; } //=========== Untuk Cek Data pada Table Upload

153
$id_kategori=$row_kategori['id_kategori']; $sql_upload_last="select * from tb_upload where id_kategori='$id_kategori' and id_pengguna='$id_pengguna' order by tgl_upload desc"; $hasil_upload_last=mysql_query($sql_upload_last); $row_upload_last=mysql_fetch_assoc($hasil_upload_last); $total_upload_last=mysql_num_rows($hasil_upload_last); ?> <tr valign="top" bgcolor="<?php echo $warna;?>"> <td align="right"><?php echo $no; ?>.</td> <td width="237" valign="middle"> <img src="images/folder.png" width="25" height="25" /><br /> <a href="upload_data.php?id_kategori=<?php echo $row_kategori['id_kategori']; ?>"> <?php echo $row_kategori['nm_kategori']; echo " ($total_upload_last)"; ?> </a> </td> <td> <?php echo date("d-m-Y h:i:s",strtotime($row_kategori['tgl_buat_kategori'])); ?> </td> <td align="left"> <?php if($total_upload_last != 0) { echo date("d-m-Y h:i:s",strtotime($row_upload_last['tgl_upload'])); } else { echo "-"; } ?> </td> <td width="40" align="center"><a href="upload_kategori.php?me=edit_form&id_kategori=<? echo $row_kategori['id_kategori']; ?>"><img src="images/rubah.png" width="16" height="16" border="0" /> <br /> Rubah</a> </td> <td width="45" align="center"><a href="upload_kategori.php?me=hapus&id_kategori=<? echo $row_kategori['id_kategori']; ?>" onclick="return confirmDelete()"><img src="images/hapus.png" width="16" height="16" border="0" /> <br /> Hapus</a> </td> </tr> <? } ?> </table> <table width="620" border="0" cellspacing="0" cellpadding="0" align="center"> <tr> <td align="center" height="5"></td> </tr>

154
<tr> <td align="center"> <?php $link_no="upload_kategori.php?"; if($hal>1) { echo "&nbsp;&nbsp;[ <a href=\"$link_no&hal=1\">First</a> ]"; } if($hal>1) { $hal_back=$hal-1; echo"&nbsp;&nbsp;[ <a href=\"$link_no&hal=$hal_back\">Back</a> ]"; } $n_hal=0; while($n_hal<$halaman) { $n_hal++; if($n_hal==$hal) { echo "&nbsp;[ <strong>$n_hal</strong> ]"; } else { echo "&nbsp;[ <a href=\"$link_no&hal=$n_hal\">$n_hal</a> ]"; } } if($hal<$halaman) { $hal_next=$hal+1; echo"&nbsp;&nbsp;[ <a href=\"$link_no&hal=$hal_next\">Next</a> ]"; } if($hal<$halaman) { echo"&nbsp;&nbsp;[ <a href=\"$link_no&hal=$halaman\">Last</a> ]"; } ?> </td> </tr> <tr> <td align="center">&nbsp;</td> </tr> </table> <?php //===============-------------- Input Baru break; case "new":

155
?> <script language="JavaScript"> <!-function validasi() { //-- untuk pengecekan validasi email document.form1.submit.disabled=true; document.form1.submit.value='Mohon Tunggu, Sedang di Proses'; } // --> </script> <form name="form1" method="post" action="<?=$_SERVER['PHP_SELF']?>" enctype="multipart/form-data" onSubmit="return validasi();"> <table width="620" border="0" cellspacing="2" cellpadding="2" align="center"> <tr> <td width="167">Nama Folder Kategori </td> <td width="8">:</td> <td width="430" align="justify"><input name="nama" type="text" id="nama" size="35" maxlength="100" class="textinput" placeholder="Nama Folder Kategori" autofocus required /></td> </tr> <tr> <td>&nbsp;</td> <td>&nbsp;</td> <td> <input name="submit" type="submit" value="Simpan Data" class="textinput"/> <input name="me" type="hidden" id="me" value="simpan" /> </td> </tr> </table> </form> <?php //===========----- Proses Simpan break; case "simpan": $nama=$_POST['nama']; $date_sekarang=$format_tgl_sekarang; $sql_input="insert into tb_kategori (nm_kategori,tgl_buat_kategori,id_pengguna)values ('$nama','$date_sekarang','$id_pengguna')"; //echo $sql_input; $hasil_input=mysql_query($sql_input); if($hasil_input) { echo " <p align=\"center\">Please Wait <br> Data BERHASIL disimpan <br> Terimakasih</p> <p align=\"center\"><img src=\"images/ajax-loader.gif\"></p> <script type=\"text/javascript\"><!-setTimeout('Redirect()',1000); function Redirect() { location.href = 'upload_kategori.php';

156
} // --></script> "; } else { pesan("Data GAGAL disimpan"); } ?> <?php //====------------ Hapus Data break; case "hapus": $id_kategori =$_GET['id_kategori']; /*------------------------------------ Select Galery villa ----------------------- */ $select_data_upload="select * from tb_upload where id_kategori='$id_kategori'"; $hasil_data_upload=mysql_query($select_data_upload); while($row_data_upload=mysql_fetch_assoc($hasil_data_upload)) { $id_upload=$row_data_upload['id_upload']; //--------------------------------------------------$posisi_data_upload="data_pengguna/$mail_pengguna/$row_data_upload[file]"; if ($row_data_upload['file']!="" && file_exists("$posisi_data_upload")) { unlink($posisi_data_upload); } $sql_del_data_upload="delete from tb_upload where id_upload='$id_upload' and id_pengguna='$id_pengguna'"; $hasil_del_data_upload=mysql_query($sql_del_data_upload); } //============================================================ ====== $sql_delete_kategori="delete from tb_kategori where id_kategori='$id_kategori' and id_pengguna='$id_pengguna'"; $hasil_delete_kategori=mysql_query($sql_delete_kategori);

echo " <p align=\"center\">Please Wait <br> Data BERHASIL Dihapus Dari Database <br> Terimakasih</p> <p align=\"center\"><img src=\"images/ajax-loader.gif\"></p> <script type=\"text/javascript\"><!-setTimeout('Redirect()',2000); function Redirect() { location.href = 'upload_kategori.php'; } // --></script>

157
"; ?> <? //=====--- Form Rubah break; case "edit_form": $id_kategori=$_GET['id_kategori']; $sql_data="select * from tb_kategori where id_kategori='$id_kategori' and id_pengguna='$id_pengguna'"; $hasil_data=mysql_query($sql_data); $row_data=mysql_fetch_assoc($hasil_data); ?> <script language="JavaScript"> <!-function validasi() { //-- untuk pengecekan validasi email document.form1.submit.disabled=true; document.form1.submit.value='Mohon Tunggu, Sedang di Proses'; } // --> </script> <form name="form1" method="post" action="<?=$_SERVER['PHP_SELF']?>" enctype="multipart/form-data" onSubmit="return validasi();"> <input type="hidden" name="id" value="<?php echo $id_kategori; ?>"> <table width="600" border="0" cellspacing="2" cellpadding="2" align="center"> <tr> <td width="158">Nama Lengkap </td> <td width="8">:</td> <td width="419"> <input name="nama" type="text" class="textinput" id="nama" value="<?php echo $row_data['nm_kategori']; ?>" size="30" maxlength="30" placeholder="Nama Folder Kategori" autofocus required /> </td> </tr> <tr> <td>&nbsp;</td> <td>&nbsp;</td> <td> <input name="submit" type="submit" value="Rubah Data" class="textinput"/> <input name="me" type="hidden" id="me" value="edit_proses" /></td> </tr> </table> </form> <? //============---- Proses Edit break; case "edit_proses": $id = $_POST ['id']; $nama = $_POST ['nama']; $sql_edit = "update tb_kategori set nm_kategori='$nama' where id_kategori='$id' and id_pengguna='$id_pengguna'";

158
$hasil_edit = mysql_query($sql_edit); if($hasil_edit) { echo " <p align=\"center\">Please Wait <br> Data BERHASIL dirubah <br> Terimakasih</p> <p align=\"center\"><img src=\"images/ajax-loader.gif\"></p> <script type=\"text/javascript\"><!-setTimeout('Redirect()',2000); function Redirect() { location.href = 'upload_kategori.php'; } // --></script> "; } else { pesan("Data GAGAL dirubah. Terima Kasih"); } ?> <?php } ?>

You might also like