Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing...

173
RANCANG BANGUN SISTEM INFORMASI PENYIMPANAN BERKAS ELEKTRONIK MENGGUNAKAN VALIDASI MD5 BERBASIS CLOUD COMPUTING SKRIPSI OLEH NIM : 090010398 NAMA : I MADE WIRA IRAWAN JENJANG STUDI : STRATA SATU (S1) PROGRAM STUDI : SISTEM KOMPUTER SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN TEKNIK KOMPUTER (STMIK) STIKOM BALI 2013

description

Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing Laporan Skripsi STMIK STIKOM Bali 090010398 I Made Wira Irawan

Transcript of Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing...

Page 1: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

RANCANG BANGUN SISTEM INFORMASI PENYIMPANAN BERKAS ELEKTRONIK MENGGUNAKAN VALIDASI MD5

BERBASIS CLOUD COMPUTING

SKRIPSI

OLEH

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

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN TEKNIK KOMPUTER

(STMIK) STIKOM BALI 2013

Page 2: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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 : 090010398 NAMA : I MADE WIRA IRAWAN JENJANG STUDI : STRATA SATU (S1) PROGRAM STUDI : SISTEM KOMPUTER

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN TEKNIK KOMPUTER

(STMIK) STIKOM BALI 2013

Page 3: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)
Page 4: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)
Page 5: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)
Page 6: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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, teman-

teman 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

i  

Page 7: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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  

Page 8: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

iii  

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

Page 9: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

  

DAFTAR ISI

Halaman KATA PENGANTAR ..................................................................................................... i

ABSTRAK .................................................................................................................... ii

DAFTAR ISI ................................................................................................................ iv

DAFTAR TABEL ........................................................................................................ vii

DAFTAR GAMBAR ................................................................................................... viii

BAB I PENDAHULUAN ............................................................................................ 1 1.1 Latar Belakang .......................................................................................... 1

1.2 Rumusan Masalah..................................................................................... 2

1.3 Tujuan Penelitian ....................................................................................... 2

1.4 Manfaat Penelitian ..................................................................................... 2

1.5 Ruang Lingkup Penelitian ......................................................................... 3

1.6 Metode Penelitian ...................................................................................... 4

BAB II TINJAUAN PUSTAKA ................................................................................... 6 2.1 Teknologi Informasi ................................................................................... 6

2.2 Teknologi Penyimpanan ............................................................................ 6

2.3 Sistem Informasi ........................................................................................ 7

2.4 Komputer Awan (Cloud Computing) .......................................................... 7

2.5 Kriptografi ................................................................................................ 10

2.6 Fungsi Hash dan Fungsi Hash Satu Arah ............................................... 11

2.7 Algoritma MD5 ......................................................................................... 13

2.8 Diagram Alir Data / DFD (Data Flow Diagram) ........................................ 17

2.9 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  

Page 10: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

  

3.2 Sistem Flow ............................................................................................. 23

3.3 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 Entity Relationship Diagram (ERD) ......................................................... 29

3.5 Konseptual Database .............................................................................. 29

3.6 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 Hardware dan Software Pendukung........................................................ 55

4.2 Pengujian Sistem .................................................................................... 55

4.2.1 Pengujian Sistem pada Halaman Pengguna Layanan .................. 55

v  

Page 11: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

  

vi  

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 Kesimpulan .............................................................................................. 72

5.2 Saran ....................................................................................................... 72

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

Page 12: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

  

DAFTAR TABEL Tabel Halaman 3.1 Tabel Administrator .......................................................................................... 32

3.2 Tabel Extension ................................................................................................ 32

3.3 Tabel Jumlah Space ......................................................................................... 33

3.4 Tabel Kategori .................................................................................................. 33

3.5 Tabel Keluhan .................................................................................................. 34

3.6 Tabel List Download ......................................................................................... 34

3.7 Tabel Log Administrator ................................................................................... 35

3.8 Tabel Log Pengguna ........................................................................................ 35

3.9 Tabel Pengguna ............................................................................................... 35

3.10 Tabel Space ..................................................................................................... 36

3.11 Tabel Upload .................................................................................................... 37

4.1 Tabel Hasil Pengujian Integritas Berkas........................................................... 71

vii  

Page 13: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

  

DAFTAR GAMBAR Gambar Halaman 2.1 Lima Komponen Sistem Informasi..................................................................... 7

2.2 Komputer Awan (Cloud Computing) .................................................................. 8

2.3 Layanan Komputer Awan (Cloud Computing) ................................................. 10

2.4 Contoh hashing beberapa pesan dangan panjang sembarangan ................... 12

2.5 Pembuatan Message Digest dengan Algoritma MD5 ...................................... 13

2.6 Pengolahan blok 512 bit (Proses HMD5) ........................................................... 15

2.7 Operasi Dasar MD5 ......................................................................................... 16

2.8 Komponen DFD (Data Flow Diagram) ............................................................. 18

3.1 Skema Sistem Informasi Penyimpanan Berkas Elektronik .............................. 22

3.2 Sistem Flow Umum dari Sistem ...................................................................... 23

3.3 Diagram Konteks ............................................................................................. 24

3.4 Diagram Level 0 .............................................................................................. 25

3.5 Diagram Level 1 pada Proses Login Sistem ................................................... 26

3.6 Diagram Level 1 pada Pengelolaan Data dan Upload Berkas Pengguna ....... 26

3.7 Diagram Level 1 pada Proses Proses Download Data dan Validasi MD5 ...... 27

3.8 Diagram Level 1 pada Proses Pengelola Data Penyedia............................... 28

3.9 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  

Page 14: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

  

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 Halaman Registrasi Pengguna Layanan ......................................................... 56

4.2 Halaman Login Pengguna Layanan ................................................................ 57

4.3 Tampilan Menu Kiri Pengguna Layanan ......................................................... 57

4.4 Halaman Ganti Foto Profil Pengguna Layanan ............................................... 58

4.5 Halaman Merubah Data Perusahaan Pengguna Layanan .............................. 58

4.6 Halaman Ganti Password Pengguna Layanan................................................ 59

4.7 Tampilan Halaman Link Promosi ..................................................................... 59

ix  

Page 15: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

  

x  

4.8 Tampilan Halaman Akumulasi Space.............................................................. 60

4.9 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

Page 16: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

1  

Page 17: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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 di-

upload 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

  

Page 18: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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.

  

Page 19: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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 berkas-

berkas 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 di-

download 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 e-

mail 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

  

Page 20: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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.

Page 21: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

6  

Page 22: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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.

DATAHardware (Perangkat keras)

Software (Perangkat Lunak)

Procedures(Prosedur)

Mesin

People(Manusia)

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

Page 23: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

Page 24: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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.

Page 25: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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).

Page 26: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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 (non-repudiation) adalah layanan untuk

mencegah entitas yang berkomunikasi untuk 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).

Page 27: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

12  

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

H a lo F u n g s i h a sh a a 6 d f5 7 fb 6 fe 3 7 7 d 8 0b 4 a 2 5 7 b 4 a 9 2 c b a

N o m o r te le p o n k u 0 8 1 2 2 1 1 3 4 5 1 F u n g s i h a sh 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 iF u n g s i h a sh a 9 9 6 d e 1 1 8 c 6 1 e a c4 9

6 3 9 8 9 a a 2 d 7 3 e 6 7 e

M a su k a n N ila i h a sh

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).

Page 28: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

Page 29: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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 masing-

masing 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.

Page 30: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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, masing-

masing berisi 16 kali operasi dasar terhadap masukan, setiap operasi

dasar menggunakan elemen Tabel T.

Page 31: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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 = salah satu fungsi F,G,H,I.

CLSs = circular left shift sebanyak s bit (notasi:<<< s).

X[k] = kelompok 32 bit ke-k dari blok 512 bit message ke-q.

Nilai k=0 sampai 15.

T[i] = elemen Tabel T ke-i (32 bit).

+ = operasi penjumlahan modulo 232.

Page 32: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

d ← c

c ← b

b ← a

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 menyeluruh mengenai sistem yang ditangani,

menunjukkan tentang fungsi-fungsi utama atau proses yang ada,

aliran data, dan eksternal entity. Pada level ini sudah

Page 33: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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.

Page 34: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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 yang sering digunakan pada umumnya adalah MySQL

FreeSoftware yang berada di bawah lisensi GNU/GLP (General Public

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.

Page 35: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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 server-

side 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.

Page 36: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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.

Page 37: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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  

Page 38: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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).

Page 39: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

Page 40: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

25  

 Gambar 3.4 Diagram Level 0

Page 41: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

26  

 

 

Gambar 3.5 Diagram Level 1 pada Proses Login Sistem

 

Gambar 3.6 Diagram Level 1 pada Pengelolaan Data

dan Upload Berkas Pengguna

Page 42: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

Page 43: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

Page 44: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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).

Page 45: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

30  

Gambar 3.11 Entity Relationship Diagram (ERD)

Page 46: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

31  

Gambar 3.12 Konseptual Database

Page 47: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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 : tb_administrator

Fungsi : untuk menyimpan data profil administrator.

Tabel 3.1 Tabel Administrator

No Nama Field Tipe Data Keterangan

1 id_administrator int(10) Primary Key

Auto

Increment

2 nm_administrator varchar(30) -

3 mail_administrator varchar(100) -

4 pass_administrator varchar(50) -

5 hak_administrator char(1) -

6 security_question varchar(100) -

7 answer_question varchar(100) -

3.6.2 Tabel Extension Nama Tabel : tb_extension

Fungsi : untuk menyimpan data extension yang boleh

diupload ke sistem beserta besar ukuran file per

extension.

Tabel 3.2 Tabel Extension

No Nama Field Tipe Data Keterangan

1 id_extension int(10) Primary Key

Auto

Increment

2 nm_extension vachar(30) -

3 extension_file varchar(5) -

4 maximum_size_file int(10) -

Page 48: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

33  

3.6.3 Tabel Jumlah Space Nama Tabel : tb_jml_space

Fungsi : untuk menyimpan jumlah space yang didapat oleh

pengguna layanan baik space pendaftaran

maupun space bonus.

Tabel 3.3 Tabel Jumlah Space

No Nama Field Tipe Data Keterangan

1 id_jml_space int(10) Primary Key

Auto

Increment

2 tgl_jml_space datetime -

3 id_space int(10) Foreign Key

4 id_pengguna int(10) Foreign Key

3.6.4 Tabel Kategori

Nama Tabel : tb_kategori

Fungsi : untuk menyimpan data kategori/ folder dari data

yang akan di-upload.

Tabel 3.4 Tabel Kategori

No Nama Field Tipe Data Keterangan

1 id_kategori int(10) Primary Key

Auto

Increment

2 nm_kategori vachar(100) -

3 tgl_buat_kategori datetime -

4 id_pengguna int(10) Foreign Key

3.6.5 Tabel Keluhan Nama Tabel : tb_keluhan

Fungsi : untuk menyimpan data keluhan/ saran dari

pengguna, serta menyimpan data respon dari

penyedia berdasarkan keluhan/ saran pengguna

sistem.

Page 49: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

34  

Tabel 3.5 Tabel Keluhan

No Nama Field Tipe Data Keterangan

1 id_keluhan int(10) Primary Key

Auto

Increment

2 id_pengguna int(10) Foreign Key

3 tgl_keluhan datetime -

4 judul_keluhan varchar(50) -

5 keluhan text -

6 tgl_tanggapan datetime -

7 tanggapan text -

8 id_administrator int(10) Foreign Key

3.6.6 Tabel List Download Nama Tabel : tb_list_download

Fungsi : untuk menyimpan history data yang di-download

oleh pengguna layanan.

Tabel 3.6 Tabel List Download

No Nama Field Tipe Data Keterangan

1 id_download int(10) Primary Key

Auto

Increment

2 tgl_download datetime -

3 id_upload int(10) Foreign Key

4 id_pengguna int(10) Foreign Key

3.6.7 Tabel Log Administrator Nama Tabel : tb_log_administrator

Fungsi : untuk menyimpan history log-in dan log-out dari

administrator atau penyedia layanan.

Page 50: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

35  

Tabel 3.7 Tabel Log Administrator

No Nama Field Tipe Data Keterangan

1 id_log_administrator int(10) Primary Key

Auto

Increment

2 id_administrator int(10) Foreign Key

3 log_date datetime -

4 status_log varchar(3) -

3.6.8 Tabel Log Pengguna Nama Tabel : tb_log_pengguna

Fungsi : untuk menyimpan history log-in dan log-out dari

pengguna layanan.

Tabel 3.8 Tabel Log Pengguna

No Nama Field Tipe Data Keterangan

1 id_log_pengguna int(10) Primary Key

Auto

Increment

2 id_pengguna int(10) Foreign Key

3 log_date datetime -

4 status_log varchar(3) -

3.6.9 Tabel Pengguna Nama Tabel : tb_pengguna

Fungsi : untuk menyimpan data-data profil pengguna

layanan.

Tabel 3.9 Tabel Pengguna

No Nama Field Tipe Data Keterangan

1 id_pengguna int(10) Primary Key

Auto Increment

2 tgl_registrasi datetime -

3 nm_pengguna varchar(50) -

Page 51: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

36  

4 nm_pimpinan varchar(50) -

5 alamat_pengguna varchar(100) -

6 telp_pengguna varchar(20) -

7 no_siup varchar(50) -

8 mail_pengguna varchar(50) -

9 pass_pengguna varchar(50) -

10 fb_pengguna varchar(50) -

11 twitter_pengguna varchar(50) -

12 tanya_pengguna varchar(100) -

13 jawab_pengguna varchar(100) -

14 img_pengguna varchar(100) -

15 status_konfirmasi char(1) -

16 tgl_konfirmasi datetime -

17 rekomendasi int(10) -

18 id_administrator int(10) Foreign Key

3.6.10 Tabel Space Nama Tabel : tb_space

Fungsi : untuk menyimpan data master space layanan.

Tabel 3.10 Tabel Space

No Nama Field Tipe Data Keterangan

1 id_space int(10) Primary Key

Auto

Increment

2 ket_space varchar(100) -

3 space int(10) -

3.6.11 Tabel Upload Nama Tabel : Tabel Upload

Fungsi : untuk menyimpan data yang di-upload oleh

pengguna layanan.

Page 52: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

37  

Tabel 3.11 Tabel Upload

No Nama Field Tipe Data Keterangan

1 id_upload int(10) Primary Key

Auto

Increment

2 nm_upload varchar(100) -

3 ket_upload text -

4 id_kategori int(10) Foreign Key

5 type_file varchar(100) -

6 size_file varchar(100) -

7 file varchar(100) -

8 md5_file varchar(100) -

9 id_pengguna int(10) Foreign Key

10 tgl_upload datetime -

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.

Page 53: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

Page 54: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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).

Page 55: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

40  

Gambar 3.16 Desain Form Registrasi Perusahaan

Pengguna Layanan

SELAMAT DATANGHALAMAN PERUSAHAAN PENGGUNA LAYANAN

E-Mail Perusahaan

Password

Masuk Ke Halaman Pengguna

Belum Memiliki ACCOUNT, Silahkan Registrasi DuluForget PasswordLupa Password, Lakukan Proses

Gambar 3.17 Desain Halaman Login Pengguna

Layanan

Page 56: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

Page 57: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

Page 58: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

Page 59: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

Page 60: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

45  

Nama File

Rubah Data

Keterangan

Folder Kategori

Upload File 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 di-

download 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 di-

upload pada sistem.

Page 61: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

Page 62: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

Page 63: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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 DATANGHALAMAN 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).

Page 64: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

Page 65: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

Page 66: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

Page 67: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

Page 68: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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.

Page 69: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

54  

Gambar 3.50 Desain Halaman Mengganti Profil Penyedia Layanan Log-in

Gambar 3.51 Desain Halaman Mengganti

Password Penyedia Layanan

Page 70: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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  

Page 71: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

  

Page 72: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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.

  

Page 73: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

  

Page 74: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

  

Page 75: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

  

Page 76: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

  

Page 77: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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.

  

Page 78: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

  

Page 79: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

  

Page 80: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

  

Page 81: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

  

Page 82: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

  

Page 83: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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.

  

Page 84: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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 data-

data pengguna layanan (perusahaan) aktif yang telah

dikonfirmasi penyedia layanan.

Gambar 4.33 Halaman Menampilkan Data Pengguna Layanan (Perusahaan) Aktif

  

Page 85: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

  

Page 86: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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 Nama Berkas

Nilai Hash Berkas pada saat di-upload

Nilai Hash Berkas pada saat di-download

1 Data 1.pdf fcbb04111924070f1684af82f67d8849

fcbb04111924070f1684af82f67d8849

2 Data 2.pdf e44a9eb655182ff1ce366aa5d787518e

e44a9eb655182ff1ce366aa5d787518e

3 Data 3.pdf f747d64e8cbaf7f40158fe858eb94944

f747d64e8cbaf7f40158fe858eb94944

4 Data 4.pdf cd709b5838f50716bfa78a353edd8fee

cd709b5838f50716bfa78a353edd8fee

5 Data 5.pdf b593e1d0478855c5e456059ab849118f

b593e1d0478855c5e456059ab849118f

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.

Page 87: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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  

Page 88: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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  

Page 89: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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  

Page 90: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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">

  

Page 91: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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!="") {

  

Page 92: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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 =====----------

  

Page 93: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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'

  

Page 94: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

  

Page 95: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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){

  

Page 96: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

81  

if(pos=="random"){LeftPosition=(screen.width)?Math.floor(Math.random()*(screen.width-w)):100;TopPosition=(screen.height)?Math.floor(Math.random()*((screen.height-h)-75)):100;} if(pos=="center"){LeftPosition=(screen.width)?(screen.width-w)/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='+scroll+',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

  

Page 97: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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]','mywin','530','460','no','center');return false\" onfocus=\"this.blur()\"><strong>$row_list_download[nm_upload].$hasil_ekstensi_file</strong></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">

  

Page 98: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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>

  

Page 99: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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 "":

  

Page 100: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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>

  

Page 101: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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>

  

Page 102: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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')

  

Page 103: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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_pengguna='$telp',no_siup='$siup',mail_pengguna='$mail_baru',fb_pengguna='$fb',twitter_pengguna='$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 "

  

Page 104: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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>

  

Page 105: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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()

  

Page 106: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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>

  

Page 107: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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); }

  

Page 108: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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/ajax-loader.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);

  

Page 109: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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) {

  

Page 110: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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" />

  

Page 111: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

  

Page 112: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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="registrasi-pengguna.php">Registrasi</a> Dulu </td> </tr> <tr> <td>&nbsp;</td>

  

Page 113: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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\"> <!--

  

Page 114: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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>

  

Page 115: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

  

Page 116: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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>

  

Page 117: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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>

  

Page 118: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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)

  

Page 119: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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>

  

Page 120: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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> ";

  

Page 121: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

  

Page 122: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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>

  

Page 123: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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>

  

Page 124: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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");

  

Page 125: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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'] : "";

  

Page 126: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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>

  

Page 127: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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);

  

Page 128: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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>

  

Page 129: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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'];

  

Page 130: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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>

  

Page 131: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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/ajax-loader.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

  

Page 132: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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>

  

Page 133: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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>

  

Page 134: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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);

  

Page 135: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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) {

  

Page 136: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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_bytes)*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 } ?>

  

Page 137: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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 = 'registrasi-pengguna.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>

  

Page 138: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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>

  

Page 139: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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>

  

Page 140: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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>

  

Page 141: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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">

  

Page 142: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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) {

  

Page 143: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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,mail_pengguna,pass_pengguna,fb_pengguna,twitter_pengguna,tanya_pengguna,jawab_pengguna,rekomendasi)values ('$date_sekarang','$nama','$pimpinan','$alamat','$telp','$siup','$mail','$pass1','$fb','$tw','$tanya','$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");

  

Page 144: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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.width-w)):100;TopPosition=(screen.height)?Math.floor(Math.random()*((screen.height-h)-75)):100;} if(pos=="center"){LeftPosition=(screen.width)?(screen.width-w)/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='+scroll+',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>

  

Page 145: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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/registrasi-pengguna.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/registrasi-pengguna.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/registrasi-pengguna.php?rekomendasi=$id_pengguna"; ?>" target="_blank"><img src="http://localhost/onlinestorage/images/promosi.jpg" border="0" width="200" height=="262" /></a>

  

Page 146: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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"; }

  

Page 147: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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> ]"; }

  

Page 148: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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"; //=========

  

Page 149: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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) {

  

Page 150: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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) {

  

Page 151: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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.width-w)):100;TopPosition=(screen.height)?Math.floor(Math.random()*((screen.height-h)-75)):100;} if(pos=="center"){LeftPosition=(screen.width)?(screen.width-w)/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='+scroll+',location=no,directories=no,status=no,menubar=no,toolbar=no,resizable=no'; win=window.open(mypage,myname,settings);} // -->

  

Page 152: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

  

Page 153: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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"; }

  

Page 154: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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_fileupload); 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_fileupload[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']));

  

Page 155: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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">

  

Page 156: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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": ?>

  

Page 157: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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>

  

Page 158: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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" /> </td> </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

  

Page 159: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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_file)) { 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_file-md5_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;

  

Page 160: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

145  

$sql_input="insert into tb_upload (nm_upload,ket,id_kategori,type_file,size_file,file,md5_file,id_pengguna,tgl_upload)values ('$nama','$keterangan','$id_kategori','$type_file','$size_file','$ganti_nama_file','$hitung_md5','$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\"><!--

  

Page 161: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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">

  

Page 162: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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!="")

  

Page 163: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

  

Page 164: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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_file)) { 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_file-md5_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',size_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'";

  

Page 165: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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() })

  

Page 166: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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>

  

Page 167: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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

  

Page 168: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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>

  

Page 169: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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":

  

Page 170: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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';

  

Page 171: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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>

  

Page 172: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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'";

  

Page 173: Rancang Bangun Penyimpanan Berkas Elektronik Menggunakan Validasi MD5 Berbasis Cloud Computing (Laporan Skripsi)

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 } ?>