APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini...

109
APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB ERRY HANDOYO 104091002869 PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI (UIN) SYARIF HIDAYATULLAH JAKARTA 2011 M / 1432 H

Transcript of APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini...

Page 1: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

APLIKASI PEMESANAN SPARE PART MOTOR

BERBASIS WEB

ERRY HANDOYO

104091002869

PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI (UIN)

SYARIF HIDAYATULLAH JAKARTA

2011 M / 1432 H

Page 2: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

ii

Page 3: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

iii

Page 4: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

iv

PERNYATAAN

DENGAN INI SAYA MENYATAKAN BAHWA SKRIPSI INI BENAR-

BENAR HASIL KARYA SENDIRI YANG BELUM PERNAH DIAJUKAN

SEBAGAI SKRIPSI ATAU KARYA ILMIAH PADA PERGURUAN TINGGI

ATAU LEMBAGA MANAPUN.

Jakarta, Agustus 2011

Erry Handoyo 104091002869

Page 5: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

v

HALAMAN PERSEMBAHAN

Penulis dapat menyelesaikan skripsi ini tak lepas dari doa dan dukungan

dari banyak pihak. Maka perkenankanlah penulis untuk mengucapkan terima

kasih yang sebesar-besarnya kepada :

1. Ibunda Tercinta Siti Kasiyati dan Ayahanda Rijadi yang tidak pernah

berhenti merawat, mendoakan, dan mendukung penulis dengan penuh

kasih sayang. Terima kasih atas semua pengorbanan, usaha dan jerih

payah Ayah dan Bunda untuk selalu membuat penulis merasa bahagia.

2. Saudariku, Desi Setiyani yang selalu penulis banggakan dan sayangi

sepenuh hati.

3. Fitriyanti, atas semua bentuk dukungan, motivasi dan kasih sayang yang

selalu menemani hari-hari penulis.

4. Sahabat-sahabatku yang selalu setia menemani saat suka dan duka :

Makhsus, Toni, Sigit, Danang, Umi, Nita, yang selalu bersama-sama

berjuang menyelesaikan skripsi. Zahruddin, Taufiq, Arie Syuryadi,

Rahmat Hidayat dan Robby Darmawan, terima kasih atas persahabatan

indah yang kita miliki.

5. Teman-teman TI C 2004 : Alvin, Wahyuni, Syukrina, Hani, Endah, Desi,

Ziah, Sarah, Eni, Rizal, Razka, Budi, Asep, Malik, Sidiq, Fajar, Dwi,

Rahmat Ruhyat, Agil, Rendy, Ariefati, Hirzi, Kaut, Anton dan Egi. Terima

kasih atas keceriaan, dukungan dan motivasi yang selalu kalian tunjukkan,

Page 6: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

vi

terutama pada saat-saat sulit yang penulis alami, sehingga menumbuhkan

semangat baru untuk penulis.

6. Teman-teman TI dan SI seluruh angkatan.

7. Teman-temanku di Agribisnis dan MIPA.

Semoga Allah selalu melimpahkan rahmat dan karunia-Nya kepada kalian

semua dan melindungi kalian di setiap langkah.

Jakarta, Agustus 2011 Erry Handoyo

Page 7: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

vii

ABSTRAK

ERRY HANDOYO. Aplikasi Pemesanan Spare Part Motor Berbasis Web. dibimbing oleh HERLINO NANANG dan FENTY EKA MUZAYYANA .

Perkembangan teknologi internet yang sangat cepat dari tahun ke tahun. Internet saat ini sangat dibutuhkan misalnya untuk media promosi suatu produk. Untuk menjual suatu produk, penjual masih menggunakan cara biasa yaitu dengan menjualnya di toko-toko. Dengan sistem penjualaan seperti itu, maka hanya terbatas saja pembeli yang mengetahui tentang produk yang dijual. Dengan adanya internet, penjual dapat mempromosikan sekaligus menjual produknya melalui website. Penelitian ini membahas mengenai proses pemesanan produk secara online yang akan diimplementasikan pada pemesanan produk spare part motor. Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media elektronik dan sebagai promosi produksi itu sendiri. Tools yang digunakan dalam pembuatan website penjualan spare part motor ini yaitu komponen virtue mart untuk sistem pemesanannya, joomla untuk template website dan content manajemen sistem (CMS), MySQL untuk databasenya, dan script PHP sebagai dasar bahasa pemrograman yang digunakan. Penelitian ini bertujuan untuk merancang suatu apliksasi pemesanan yang dapat membantu para pembeli spare part motor untuk melakukan pemesanan barang dengan mudah. Namun, transaksi pembayarannya dilakukan secara manual dan tidak terintegrasi dengan aplikasi. Kata Kunci : pemesanan, virtue mart, website, spare part motor.

Page 8: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

viii

KATA PENGANTAR

Assalaamu’alaikum Wr. Wb.

Alhamdulillah, rasa syukur tiada terkira penulis panjatkan kepada Allah

Subhanahu Wata’ala. Rahmat dan salam semoga tercurahkan selalu kepada

Rasulullah Muhammad SAW beserta keluarga, sahabat, dan pengikut-pengikut

beliau (amin). Hanya berkat petunjuk dan pertolongan Allah-lah penulis dapat

menyelesaikan skripsi yang berjudul : Aplikasi Pemesanan Spare Part Motor

Berbasis Web.

Terwujudnya tulisan dalam bentuk skripsi ini, tentunya tidak terlepas dari

bantuan dan bimbingan dari berbagai pihak. Rasa terima kasih penulis ucapkan

kepada :

1. Bapak DR. Syopiansyah Jaya Putra, M.SIS, selaku Dekan Fakultas Sains

dan Teknologi.

2. Bapak Yusuf Durrachman, M.Sc, M.IT, selaku Ketua Program Studi Teknik

Informatika.

3. Bapak Herlino Nanang, MT, selaku dosen pembimbing I, dan

4. Ibu Fenty Eka Muzayyana, M.Kom, selaku dosen pembimbing II, yang

telah memberikan bimbingan, waktu, dan perhatiannya dalam penyusunan

skripsi ini.

Page 9: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

ix

5. Seluruh Dosen dan staf karyawan Program Studi Teknik Informatika,

Fakultas Sains dan Teknologi, Universitas Islam Negeri Syarif Hidayatullah

Jakarta yang telah mengajar atau membantu penulis selama kuliah.

6. Ibunda dan Ayahanda tercinta Siti Kasiyati dan Rijadi atas kasih sayang

tulusnya sepanjang masa.

Dalam penyusunan skripsi ini, penulis juga tidak luput dari berbagai

masalah dan menyadari sepenuhnya bahwa penulisan ini masih jauh dari

sempurna dan tidak lepas dari kesalahan dan kekurangan, oleh karena itu dengan

senang hati penulis akan menerima semua saran dan kritik maupun ide-ide yang

membangun dari rekan-rekan pembaca. Akhir kata semoga Allah membalas

kebaikan mereka yang telah membimbing penulis dalam membuat skripsi ini.

Semoga skripsi ini berguna bagi penulis dan pada pembaca umumnya.

Wassalaamu’alaikum Wr. Wb.

Jakarta, Agustus 2011

Penulis

Erry Handoyo

NIM. 104091002869

Page 10: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

x

DAFTAR ISI

PENGESAHAN UJIAN ..................................................................................... iii

PERNYATAAN .................................................................................................. iv

HALAMAN PERSEMBAHAN ......................................................................... v

ABSTRAK .......................................................................................................... vii

KATA PENGANTAR ........................................................................................viii

DAFTAR ISI ....................................................................................................... x

DAFTAR GAMBAR .......................................................................................... xii

DAFTAR TABEL ...............................................................................................xiii

BAB I PENDAHULUAN ................................................................................ 1

1.1 Latar Belakang Masalah ................................................................ 1

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

1.3 Batasan Masalah ............................................................................ 3

1.4 Tujuan Penelitian ........................................................................... 3

1.5 Manfaat Penelitian ......................................................................... 4

1.6 Metodologi Penelitian .................................................................... 5

1.7 Sistematika Penulisan .................................................................... 6

BAB II LANDASAN TEORI .......................................................................... 8

2.1 Definisi Informasi .......................................................................... 8

2.2 Internet ........................................................................................... 8

2.3 Aplikasi Web ................................................................................. 9

2.4 Metode Pengembangan Perangkat Lunak ...................................... 9

2.4.1 Model RAD .......................................................................... 10

2.4.2 Data Flow Diagram (DFD) ................................................. 13

2.4.2.1 Tahapan Data Flow Diagram .................................. 15

2.4.3 Entity Relationship Diagram (ERD) .................................... 16

2.5 Content Management System ......................................................... 18

2.5.1 Joomla ................................................................................... 19

2.6 Tools Pengembangan Aplikasi ...................................................... 21

Page 11: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

xi

2.6.1 Adobe Photoshop .................................................................. 21

2.6.2 Macromedia Dreamweaver 8 ................................................ 21

2.6.3 Xampp ................................................................................... 23

2.6.4 PHP ....................................................................................... 24

2.6.5 MySQL ................................................................................. 27

2.7 Web Browser ................................................................................. 27

BAB III METODOLOGI PENELITIAN ....................................................... 29

3.1 Metode Pengumpulan Data ............................................................ 29

3.2 Metode Pengembangan Sistem ...................................................... 30

3.3 Kerangka Berfikir Penelitian ......................................................... 34

BAB IV PEMBAHASAN DAN IMPLEMENTASI ....................................... 35

4.1 Metodologi Pengumpulan Data .................................................... 35

4.1.1 Studi Pustaka ...................................................................... 35

4.1.2 Studi Lapangan ................................................................... 35

4.1.2.1 Wawancara ............................................................ 35

4.1.2.2 Observasi ............................................................... 36

4.1.3 Studi Literatur .................................................................... 38

4.2 Metode Pengembangan Sistem ..................................................... 39

4.2.1 Fase Perencanaan Syarat-syarat ........................................ 39

4.2.2 Fase Perancangan .............................................................. 46

4.2.3 Fase Konstruksi ................................................................. 62

4.2.4 Fase Pelaksanaan ............................................................... 63

BAB V PENUTUP ............................................................................................ 65

5.1 Kesimpulan .................................................................................... 65

5.2 Saran .............................................................................................. 65

DAFTAR PUSTAKA ........................................................................................ 67

Page 12: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

xii

DAFTAR GAMBAR

Gambar 2.1 Fase RAD Martin .......................................................................... 11

Gambar 2.2 Workshop Desain RAD ................................................................. 12

Gambar 2.3 Tampilan Adobe Photoshop CS3 .................................................. 21

Gambar 2.4 Tampilan Dreamweaver 8 ............................................................. 23

Gambar 2.5 Skema PHP .................................................................................... 26

Gambar 3.1 Model Membangun Sistem RAD .................................................. 31

Gambar 3.2 Kerangka Berfikir Penelitian ......................................................... 34

Gambar 4.1 Diagram Sistem yang Berjalan ...................................................... 40

Gambar 4.2 Diagram Sistem Usulan ................................................................ 42

Gambar 4.3 Diagram Konteks ........................................................................... 46

Gambar 4.4 Diagram Zero Sistem yang Diusulkan .......................................... 47

Gambar 4.5 Diagram Level 2 Proses Ke-1 ....................................................... 48

Gambar 4.6 Diagram Level 2 Proses Ke-2 ....................................................... 49

Gambar 4.7 Diagram Level 2 Proses Ke-3 ........................................................ 50

Gambar 4.8 Entity Relationship Diagram ......................................................... 51

Gambar 4.9. Rancangan Halaman Index ............................................................ 54

Gambar 4.10 Rancangan Halaman Pooling ........................................................ 55

Gambar 4.11 Rancangan Halaman Produk ......................................................... 56

Gambar 4.12 Rancangan Halaman Shopping Cart ............................................. 57

Gambar 4.13 Rancangan Halaman Registrasi .................................................... 58

Gambar 4.14 Rancangan Halaman Guest Book ................................................. 59

Gambar 4.15 Rancangan Halaman Contact Us .................................................. 60

Gambar 4.16 Rancangan Halaman List Order ................................................... 61

Gambar 4.17 Rancangan Halaman Order Detail ................................................ 62

Page 13: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

xiii

DAFTAR TABEL

Tabel 2.1 Simbol DFD ....................................................................................... 14

Tabel 4.1 Perbandingan Sistem Berjalan Dengan Sistem Usulan ..................... 42

Tabel 4.2 Tabel Produk ..................................................................................... 52

Table 4.3 Tabel User ......................................................................................... 52

Tabel 4.4 Tabel Order ......................................................................................... 53

Table 4.5 Hasil Pengujian Aplikasi ................................................................... 64

Page 14: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

1

BAB I

PENDAHULUAN

1.1 Latar Belakang Masalah

Perkembangan teknologi dibidang informasi mendorong setiap

instansi atau perusahaan untuk tetap mengikuti perkembangannya, terutama

berkenaan dengan perkembangan teknologi informasi yang ada hubungannya

dengan kegiatan perusahaan tersebut. Perkembangan teknologi informasi

telah memberikan kontribusi yang cukup berarti dalam meningkatkan

kegiatan usaha khususnya dalam hal pengolahan data yang memberi

dukungan terhadap pengambilan keputusan-keputusan bisnis serta

Perkembangan teknologi informasi telah memberikan kontribusi yang cukup

berarti dalam meningkatkan kegiatan pelayanan.

Berdasarkan pada uraian diatas, pemanfaatan teknologi informasi

dalam suatu aktivitas bisnis merupakan hal yang cukup penting. Begitu

pentingnya sehingga hampir setiap perusahaan yang serupa menggunakan

sistem pelayanan bisnis secara online, apalagi di zaman sekarang ini bukan

hanya perusahaan -perusahaan yang sudah mempunyai tempat dan nama di

dunia bisnis, perusahaan atau usaha rumahan pun bisa dijadikan lahan bisnis

dengan sentuhan teknologi informasi sekarang ini. Setiap orang tidak

diharuskan lagi dan diwajibkan lagi mempunyai tempat untuk usaha, letak

strategis untuk usaha kemudian modal yang besar untuk sewa tempat dan lain

sebagainya. Cukup dengan mempunyai suatu produk dan usaha rumahan pun

Page 15: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

2

bisa dilakukan yaitu dengan cara mempromosikan dan memperkenalkan

produknya melalui internet. Karena di era globalisasi sekarang ini setiap

orang dalam mencari informasi hal pertama yang dilakukan cenderung

mencari sesuatu melalui dunia maya, baik itu hanya sekedar referensi ataupun

melakukan pemesanan online.

Berkaitan dengan tugas akhir ini penelitian difokuskan pada masalah

pemanfaatan tujuan teknologi informasi yang dapat memberi dukungan aktif

kelancaran usaha penjualan barang yang dilakukan oleh suatu perusahaan

atau usaha rumahan yang diberi judul “ Aplikasi Pemesanan Spare Part

Motor Berbasis Web” .

1.2 Rumusan Masalah

Berdasarkan observasi yang dilakukan di suatu Perusahaan terhadap

sistem informasi pemesanan barang dikemukakan hal-hal yang menjadi

permasalahan antara lain:

1. Bagaimana cara penyampaian informasi barang yang terdapat pada usaha

pemesanan spare part motor berbasis web?

2. Bagaimana merancang sebuah aplikasi pemesanan barang yang sifatnya

online?

Page 16: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

3

1.3 Batasan Masalah

Masalah yang ada dalam sistem informasi penjualan barang ini

dibatasi pada ruang lingkup seperti :

1. Sistem hanya memberikan informasi barang yang tersedia dan proses

pemesanan barang tersebut.

2. Data yang diolah hanya data barang dan data Pengguna Sistem

Informasi.

3. Sistem ini tidak membahas mengenai masalah persediaan barang.

4. Pembayaran transaksi dilakukan secara offline, dimana pembeli

melakukan transfer uang secara manual pada rekening yang

ditetapkan.

5. Desain web menggunakan CMS (Content Management System)

Joomla dan komponen Virtue Mart.

6. Web server menggunakan Xampp dan database menggunakan

MySQL.

1.4 Tujuan Penelitian

Tujuan yang ingin dicapai dari tugas akhir ini adalah :

1. Mempermudah pihak CMR untuk mengelola pemesanan spare part motor

dan memperluas jangkauan konsumen.

2. Mempermudah bagi masyarakat atau dunia luar untuk mendapatkan

informasi mengenai spare part motor dan melakukan pemesanan spare

part motor secara langsung.

Page 17: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

4

1.5 Manfaat Penelitian

Manfaat yang didapat dalam menulis skripsi ini adalah :

1. Bagi Peneliti

a. Dapat mempelajari lebih jauh mengenai aplikasi berbasis web.

b. Mengetahui secara langsung penggunaan atau peranan teknologi

informasi dan komunikasi di tempat penelitian.

c. Mengenal lebih jauh teknologi- teknologi informasi yang sedang

berkembang saat ini.

2. Bagi Pengguna

a. Memudahkan akses terhadap informasi produk, karena dapat

diakses melalui jaringan internet.

b. Memiliki sebuah aplikasi berbasis web yang mudah digunakan oleh

masyarakat umum.

c. Menjadikan bengkel lebih maju sesuai dengan perkembangan

teknologi.

3. Bagi Universitas

a. Memberikan kemajuan ilmu pengetahuan dalam bidang aplikasi

berbasis web di lingkungan UIN Syarif Hidayatullah Jakarta.

b. Memberi sumbangan ilmiah bagi perkembangan aplikasi berbasis

web.

c. Sebagai bahan referensi dan masukan yang mungkin berguna.

Page 18: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

5

1.6 Metodologi Penelitian

1. Metode pengumpulan data

Dalam pengumpulan data dan pencarian fakta untuk penelitian skripsi ini,

peneliti menggunakan metode fact finding technique. Fact Finding

Technique dilakukan untuk proses pengembangan system, di dalam Fact

Finding Technique dilakukan proses pencarian dan penemuan fakta serta

pencarian data dari suatu kasus yang akan membantu proses

pengembangan system suatu organisasi. Fact Finding Technique yang

digunakan dalam penelitian ini adalah

a. Studi Pustaka

b. Observasi

c. Wawancara

d. Studi Literatur

2. Metode Pengembangan Sistem

Sistem pengembangan perangkat lunak yang penulis gunakan adalah

sistem RAD (Rapid Application Development) yang dikembangkan oleh

James Martin. Tahap-tahap sistem RAD meliputi (Kendall & Kendall,

2003:239):

1. Fase Menentukan Syarat-Syarat

Pada tahap ini dilakukan penentuan tujuan dan syarat-syarat

informasi, yaitu dengan melakukan analisa kebutuhan masalah

untuk pembuatan aplikasi pemesanan berbasis web, menentukan

Page 19: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

6

tujuan dibuatnya aplikasi, lalu menentukan syarat-syarat yang

diperlukan untuk membuat aplikasi.

2. Fase Perancangan

Pada tahap ini dilakukan perancangan proses-proses yang akan

terjadi dalam sistem dan perancangan antar muka. Pada

perancangan proses digunakan alat bantu DFD untuk memudahkan

peneliti dalam merancang aplikasi pemesanan yang akan dibuat

3. Fase Konstruksi

Pada tahap ini dilakukan pengkodean terhadap rancangan-

rancangan yang telah didefinisikan. Peneliti menggunakan PHP

untuk bahasa pemrograman dan Joomla untuk template. Web

Server Apache sebagai platform untuk menjalankan aplikasi,

kemudian menggunakan MySQL sebagai database.

4. Fase Pelaksanaan

Pada tahap ini dilakukan pengujian terhadap sistem. Untuk uji

aplikasi dilakukan dengan menggunakan metode blackbox.

1.7 Sistematika Penulisan

Pada dasarnya, penyusunan sistematika penulisan bertujuan untuk

memudahkan para pembaca dalam mengikuti apa yang dipaparkan dalam laporan

tugas akhir ini. Sistematika penulisan tugas akhir ini disusun sebagai berikut :

Page 20: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

7

BAB I PENDAHULUAN

Dalam bab ini berisikan latar belakang masalah, identifikasi

masalah, tujuan penelitian, batasan masalah, metodologi penelitian,

dan sistematika penulisan.

BAB II LANDASAN TEORI

Bab ini menjelaskan tentang teori-teori yang berkaitan dengan isi

laporan tugas akhir dan aplikasi web yang dibuat, diantaranya

tentang internet, konsep aplikasi web yang interaktif, bahasa web

scripting PHP dan database server MySQL.

BAB III METODOLOGI PENELITIAN

Bab ini menguraikan metode penelitian yang digunakan penulis,baik

itu metode pengumpulan data maupun metode pengembangan

sistem.

BAB lV PEMBAHASAN DAN IMPLEMENTASI

Dalam bab ini menganalisis objek penelitian, anlisis kebutuhan

sistem, serta perancangan sistem yang akan dibuat. Dalam

implementasi diuraikan tentang pemilihan bahasa pemrograman yang

digunakan, perangkat keras yang diperlukan, pemrograman dan

pengujian aplikasi.

BAB V PENUTUP

Berisikan tentang kesimpulan dari seluruh pembahasan yang telah

dikerjakan dari bab I sampai dengan bab IV serta saran–saran.

Page 21: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

8

BAB II

LANDASAN TEORI

2.1 Definisi Informasi

Sumber Informasi adalah data. Data adalah fakta mentah mengenai

orang, tempat, kejadian, dan hal-hal yang penting dalam organisasi

(Whitten, 2004).

Menurut Davis (1999), Informasi adalah data yang sudah diolah

menjadi bentuk yang berarti bagi penerimanya yang bermanfaat dalam

pengambilan keputusan saat ini atau saat mendatang (Kadir, 2003).

2.2 Internet

Sebagai gambaran umum, internet adalah suatu jaringan komputer

global terbentuk dari jaringan-jaringan komputer lokal dan regional,

memungkinkan komunikasi data antar komputer-komputer yang terhubung

ke jaringan tersebut. Asal usul Internet berasal dari jaringan komputer yang

dibentuk pada tahun 1970an. Jaringan komputer tersebut disebut dengan

Arpanet, yaitu jaringan komputer yang dibentuk oleh departemen

pertahanan Amerika Serikat. Selanjutnya jaringan komputer tersebut

diperbarui dan dikembangkan, dan sekarang penerusnya menjadi tulang

punggung global untuk sumber daya informasi yang disebut dengan

internet. Namun demikian membayangkan Internet sebagai sekedar jaringan

Komputer adalah tidak tepat. Jaringan komputer hanyalah medium yang

membawa informasi. Daya guna Internet terletak pada informasi itu sendiri,

Page 22: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

9

bukan pada jaringan komputer. Sebaiknya memperhatikan Internet sebagai

sumber daya informasi, bukan sebagai jaringan komputer.

2.3 Aplikasi Web

Aplikasi web dapat dibagi menjadi 2 kategori, yaitu web statis dan web

dinamis (Kadir, 2003).

a. Web Statis

Web statis adalah aplikasi web yang berisi atau menampilkan

informasi-informasi yang sifatnya statis (tetap). Disebut tetap karena

pengunjung tidak dapat berinteraksi dengan web tersebut. Pada web

statis pengunjung hanya dapat melihat isi dokumen pada halaman web.

Web statis biasanya menggunakan pemrograman web HTML dan tidak

memiliki database.

b. Web Dinamis

Web Dinamis adalah aplikasi web yang menampilkan informasi

serta dapat berinteraksi dengan pengunjung dengan menggunakan form

sehingga dapat mengolah informasi yang ditampilkan. Web dinamis

biasanya menggunakan pemrograman web PHP dan memiliki database

untuk menyimpan informasi, seperti MySQL.

2.4 Metode Pengembangan Perangkat Lunak

Ada beberapa model proses pengembangan perangkat lunak, namun

pada skripsi ini hanya akan dibahas tentang RAD (Rapid Aplication

Development) sebagai metode yang penulis pakai.

Page 23: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

10

Beberapa alasan mengapa digunakan metode Rapid Application

Development (RAD) adalah :

1. Aplikasi yang dikembangkan ini, merupakan aplikasi yang sederhana

dan tidak memerlukan waktu yang lama dalam pengembangannya.

Metode RAD mendukung untuk merancang aplikasi dalam jangka

waktu yang pendek.

2. Aplikasi simulasi ini dalam implementasinya tidak memerlukan

pemeliharaan, sehingga sangat cocok apabila digunakan metode RAD,

karena metode ini tidak memiliki fase pemeliharaan.

3. Alasan utama penggunaan model pengembangan RAD adalah model

pengembangan ini akan bekerja dengan baik bila diterapkan pada

aplikasi berskala kecil.

2.4.1 Model RAD

Menurut Martin (Pressman, 2002: 42), Rapid Aplication

Development (RAD) adalah sebuah model proses perkembangan

perangkat lunak sekuensial linier yang menekankan pada siklus

perkembangan cepat dengan menggunakan pendekatan konstruksi

berbasis komponen. Sehingga apabila kebutuhan dipahami dengan

baik, maka sistem fungsional yang utuh dapat diselesaikan dalam

waktu kira-kira 60 – 90 hari. Menurut Martin (Kendall & Kendall,

2003:239), fase dalam RAD dibagi menjadi empat, yaitu :

Page 24: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

11

1. Fase Perencanaan Syarat-syarat

Pada fase ini pengguna tingkat tinggi memutuskan fungsi apa

saja yang harus difiturkan oleh aplikasi tersebut.

2. Fase Desain Pengguna

Pada fase ini pengguna diminta membahas aspek-aspek desain

non-teknis dari sistem dengan bimbingan penganalisis. Kerena

tingginya sifat interaktif, fase ini sering digabungkan dengan

fase konstruksi pada workshop desain RAD.

3. Fase Konstruksi

Pada fase ini setiap desain yang diciptakan dalam fase

sebelumnya selanjutnya ditingkatkan untuk dilakukan

pengkodean sistem. Kemudian setelah tahap ini selesai

dilakukan uji kemampuan untuk mendapatkan komentar, dan

revisi dari pengguna tingkat tinggi.

4. Fase Pelaksanaan

Tahap terakhir adalah dimana aplikasi baru diuji coba dan

pengenalan terhadap aplikasi.

Gambar 2.1. Fase RAD Martin (Kendal & Kendal, 2003: 238)

Page 25: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

12

Gambar 2.2. Workshop Desain RAD

(Kendal & Kendal, 2003: 240)

Menurut Butler (Pressman 2002: 41), seperti semua model

proses yang lain, pendekatan RAD memiliki kekurangan :

1. Bagi proyek yang besar tetapi berskala, RAD memerlukan sumber

daya manusia yang memadai untuk menciptakan jumlah tim RAD

yang baik.

2. RAD menurut pengembang dan pelanggan memiliki komitmen di

dalam aktifitas rapid-fire yang diperlukan untuk melengkapi

sebuah sistem, di dalam kerangka waktu yang sangat

Umpan balik pengguna

Menggunakan masukan dari pengguna

Page 26: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

13

diperpendek. Jika komitmen tersebut tidak ada dari tiap kontituen,

proyek RAD akan gagal.

2.4.2 Data Flow Diagram (DFD)

Pendekatan analisis terstruktur diperkenalkan oleh DeMarco

(1978) dan Gane Sarson (1979) melalui buku metodologi struktur

analisis dan desain sistem informasi. Mereka menyarankan untuk

menggunakan data flow diagram (DFD) dalam menggambarkan atau

membuat model sistem.

DFD (Data Flow Diagram) adalah sebuah teknik grafis yang

menggambarkan aliran informasi dan transformasi yang

diaplikasikan pada saat data bergerak dari input menjadi output yang

digambarkan dalam bentuk diagram yang menggunakan notasi-

notasi yang berupa simbol-simbol tertentu yang menunjukkan proses

atau fungsi, aliran data, tempat penyimpanan data, dan entitas

eksternal (Pressman,2002: 364).

Terdapat dua bentuk DFD yang ada sekarang ini, yaitu DFD

Fisikal (Diagram Arus Data Fisik) dan DFD Logikal (Diagram Arus

Data Logika).

DFD fisikal lebih tepat digunakan untuk menggambarkan

sistem (sistem yang lama). Penekanannya yaitu bagaimana proses-

proses dari sistem diterapkan (dengan cara apa, oleh siapa dan

dimana) termasuk proses-proses manual, dengan mempertimbangkan

lingkungan fisik dimana data tersebut mengealir (misanya lewat

Page 27: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

14

telepon, surat, dan sebagainya) atau lingkungan fisik dimanadata

tersebut akan disimpan (misalnya file kartu, hardisk, tape disk, dan

sebagainya).

DFD adalah alat yang digunakan pada metodologi

pengembangan sistem yang terstruktur (Structur Analys and Design)

dan merupakan alat bantu yang cukup populer sekarang ini, karena

dapat menggambarkan arus data dalam sistem dengan struktur yang

jelas.

Beberapa simbol dalam DFD dapat dilihat pada tabel di bawah

ini :

Tabel 2.1 Simbol DFD

Nama Simbol Keterangan Gambar Simbol

1. Kesatuan Luar Merupakan kesatuan

(entity) dilingkungan luar

sistem yang dapat berupa

orang, organisasi atau

sistem lainnya yang berada

di lingkungan luarnya

yang memberikan input

atau menerima output dari

luar.

2. Arus Data Arus Data (Data Flow) di

DFD yang bersimbol suatu

panah, arus data ini

mengalir diantara proses,

simpanan data (Data store)

dan kesatuan luar

Page 28: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

15

(External Entity). Arus

data ini menunjukan arus

data yang berupa masukan

untuk sistem atau hasil

dari proses sistem.

3. Proses Suatu kegiatan kerja yang

dilakukan oleh orang,

mesin atau komputer dari

hasil suatu arus data yang

akan keluar dari proses.

4. Simpanan

Data

Simpanan Data (Data

Store) merupakan

simpanan dari data yang

dapat berupa :

A. Suatu file atau database

di sistem komputer

B. Suatu arsip atau catatan

manual

C. Suatu kotak tempat

data dimeja seseorang

D. Suatu tabel acuan

manual

E. Suatu agenda atau buku

2.4.2.1 Tahapan Data Flow Diagram

Langkah-langkah di dalam membuat data flow

diagram dibagi menjadi tiga tahap, yaitu sebagai berikut:

Page 29: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

16

1. Context Diagram

Diagram ini dibuat untuk menggambarkan sumber serta

tujuan data yang akan diproses atau dengan kata lain

diagram tersebut digunakan untuk menggambarkan

sistem secara umum dari keseluruhan sistem sistem yang

ada.

2. Diagram Zero

Diagram ini dibuat untuk menggambarkan tahapan

proses yang ada di dalam context diagram, yang

penjabarannya lebih terperinci.

3. Diagram Detail

Diagram ini dibuat untuk menggambarkan arus data

secara lebih mendetail lagi dari tahapan proses yang ada

didalam zero diagram.

2.4.3 Entity Relationship Diagram (ERD)

Entity Relationship Diagram merupakan suatu model untuk

menjelaskan hubungan antar data dalam basis data berdasarkan

objek-objek dasar data yang mempunyai hubungan antar relasi. ERD

untuk memodelkan struktur data dan hubungan antar data, untuk

menggambarkannya digunakan beberapa notasi dan simbol. Pada

dasarnya ada tiga simbol yang digunakan, yaitu:

a. Entiti : Entiti merupakan objek yang mewakili sesuatu yang

nyata dan dapat dibedakan dari sesuatu yang lain (Fathansyah,

Page 30: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

17

1999: 30). Simbol dari entiti ini biasanya digambarkan dengan

persegi panjang.

b. Atribut : Setiap entitas pasti mempunyai elemen yang disebut

atribut yang berfungsi untuk mendeskripsikan karakteristik dari

entitas tersebut. Isi dari atribut mempunyai sesuatu yang dapat

mengidentifikasikan isi elemen satu dengan yang lain. Gambar

atribut diwakili oleh simbol elips.

c. Hubungan / Relasi : Hubungan antara sejumlah entitas yang

berasal dari himpunan entitas yang berbeda. Relasi dapat

digambarkan sebagai berikut:

Relasi yang terjadi diantara dua himpunan entitas (misalnya

A dan B) dalam satu basis data yaitu (Kadir, 2002: 48) :

1). Satu ke satu (One to one)

Hubungan relasi satu ke satu yaitu setiap entitas pada himpunan

entitas A berhubungan paling banyak dengan satu entitas pada

himpunan entitas B.

2). Satu ke banyak (One to many)

Setiap entitas pada himpunan entitas A dapat berhubungan

dengan banyak entitas pada himpunan entitas B, tetapi setiap

entitas pada entitas B dapat berhubungan dengan satu entitas pada

himpunan entitas A.

Page 31: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

18

3). Banyak ke banyak (Many to many)

Setiap entitas pada himpunan entitas A dapat berhubungan

dengan banyak entitas pada himpunan entitas B.

2.5 Content Management Sistem

CMS (Content Management System) adalah suatu sistem yang

digunakan untuk mengelola dan memfasilitasi proses pembuatan,

pembaharuan, dan publikasi content secara bersama (collaborative content

management). Content mengacu pada informasi dalam bentuk teks, grafik,

gambar maupun dalam format-format lain yang perlu dikelola dengan tujuan

memudahkan proses pembuatan, pembaharuan, distribusi, pencarian,

analisis, dan meningkatkan fleksibilitas untuk ditransformasikan ke dalam

bentuk lain. Terminologi CMS sendiri cukup luas, di antaranya mencakup

software aplikasi, database, arsip, workflow, dan alat bantu lainnya yang

dapat dikelola sebagai bagian dari mekanisme jaringan informasi suatu

perusahaan maupun global.

CMS (Content Management System) terbukti merupakan sebuah aset

penting bagi perusahaan untuk mengelola content situs web dan portal

secara efisien dan efektif. Saat ini, berbagai perusahaan mengkombinasikan

content tak berstruktur dengan transaksi tradisional dan application logic

untuk membangun aplikasi berbasis Web. Web application ini mewujudkan

interaksi yang lebih personal dengan para user-nya, dan meningkatkan

kinerja perusahaan dengan menyediakan layanan mandiri bagi para

karyawan, partner, penyedia barang dan pelanggan. Aplikasi berbasis Web

Page 32: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

19

yang semakin berdaya, secara tidak langsung meningkatkan peranan dan

pentingnya CMS sebagai bagian dari infrastruktur aplikasi perusahaan.

Dengan adanya CMS yang terintegrasi dengan sebuah WebSite akan

memberikan suatu nilai lebih yang akan meningkatkan fungsionalitas dan

fleksibiltas dari Web Site tersebut, terlebih pada WebSite yang tujuan

pemanfaatannya sebagai media promosi dan membangun citra konsumen,

dimana kontinuitas dan inovasi dalam pemasaran produk-produk secara

berkala dan berkesinambungan sebagai suatu hal yang memegang peranan

penting dalam tercapainya target pemasaran.

2.5.1 Joomla

Joomla adalah Contant management system (cms) Sumber

terbuka yang bebas ditulis dengan bahasa pemograman php dan data

base MySQL baik untuk internet maupun intranet Joomla

menyertakan banyak fitur untuk meningkatkan kinerja termasuk page

caching , web indexing , RSS freed , halaman untuk dicetak , web side

searchingdan dukungan Internasionalisasi. Nama Joomla berasal dari

sebutan phonetic sebuah kata bahasa Swahili “Jomla”dengan arti

kebersamaan atau kesatuan pilihan nama mencerminkan komitmen

para pengembang dan komunitasnya saat membentuk Joomla ketika

terjadi perpecahan dari Mambo di bulan Agustus 2005. Joomla

dibangun sebagai fork dari mambo dengan rilis perdana Joomla 1.0.0

pada tanggal 16 september 2005 mengembangkan versi dari mambo.

Page 33: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

20

Menurut roadmap Joomla 2.0 code base akan ditulis ulang

sekelompok dibangun mengadopsi GNU (General Publik Licence).

Untuk membuat suatu Informasi Electronik yang mulai

berkembang saat ini diperlukan suatu CMS Content Management

system / server php yang digunakan untuk pembuatan/desain grafis,

dan juga memiliki penulis yang kreatif untuk mengisi halaman-

halaman web site dengan Mambo ataupun Joomla, tidak menjadi

masalah karena seluruh tool memiliki fungsi yang sama. Meskipun

program ini menggunakan bahasa php, bukan berarti harus paham

seluruhnya tentang kode php. Bagi mereka tidak memahami kode

HTML, Javascript, ASP, CGI, , maupun php tidak perlu takut untuk

mempelajarinya karena meskipun tidak tahu tentang kode-kode

tersebut, orang bisa membuat sebuah web secara cepat dengan

beberapa fitur yang sangat kompleks yang dihubungkan dengan dalam

suatu jaringan local atau luas (internet).

CMS adalah software computer yang memfasilisasikan

pembuatan documen atau contant secara gotong royong dan

kolaboratif , CMS acap kali di artikan sebagai Aplikasi Web untuk

mengelola web site dan contant web , sementara untuk mengedit dan

membuat artikel disertakan software khusus client , ia juga dapat

digunakan untuk menyimpan documen perusahaan terutama seperti

operators manuals , tecnical manuals , sales guides dan sebagainya,

solusi cms banyak tersedia dalam bentuk open source yang bebas

Page 34: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

21

pungli dengan teknik yang lebih luas portal system wiki system bared

group ware.

2.6 Tools Pengembangan Aplikasi

2.6.1 Adobe Photoshop

Adobe Photoshop adalah merupakan software standar

profesional untuk pengolahan citra atau gambar (image) yang

memberikan lingkungan komprehensif bagi para desainer grafis

profesional untuk membuat desain grafis yang rumit untuk

kebutuhan percetakan, situs web, dan media lainnya (Sardi, 2004).

Gambar 2.3 Tampilan Adobe Photoshop CS3

2.6.2 Macromedia Dreamweaver 8

Macromedia dreamweaver 8 adalah sebuah aplikasi yang

digunakan untuk membuat web sites dibuat dengan kombinasi

Page 35: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

22

tampilan visual tools, dikembangkan dengan banyak feature aplikasi

dan didukung dengan code editing, didesign untuk bisa disesuaikan

dengan setiap tingkatan kemampuan pemakai. Dreamweaver 8

dimasukkan banyak kemampuan baru untuk membantu membuat dan

mengatur website, baik dari pemula sampai dengan tingkat lanjut.

Aplikasi ini mendukung dengan sangat praktis dan dilengkapi dengan

teknologi terbaru. Dreamweaver 8 bisa dijalankan pada operation

system windows 2000, windows xp, dan Macintosh Mac OS® X 10.3

dan 10.4. dreamweaver 8 tidak bisa dijalankan pada windows 98,

windows 2000 server, windows 2003 server, atau Macintosh OS

10.2.x atau dibawah seri ini.

Fungsi coding Dreamweaver tidak hanya mendukung coding

HTML tetapi juga CSS (Cascading Style Sheet), Javascript,

Coldfusion, ASP (Active Server Pages), JSP (Java Server Pages), dan

Dreamweaver juga memungkinkan anda membangun website dengan

server berbahasa CFML (ColdFusion Markup Language), ASP.net,

ASP, JSP, dan PHP.

Dreamweaver 8 juga mempunyai kemampuan untuk

mendukung pemrograman server side dan client side. Server side

digunakan untuk memproses data yang berhubungan dengan server,

misalnya pengolahan database. Client side merupakan bahasa

pemrograman tambahan sekaligus sebagai pelengkap dari bahasa

pemrograman lainnya

Page 36: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

23

Gambar 2.4 Tampilan Dreamweaver 8

2.6.3 XAMPP

Xampp merupakan suatu paket yang terdiri dari Apache, MySQL,

PHP, dan Perl yang dapat digunakan untuk membantu proses instalasi

produk tersebut (Sukarno, 2006).

XAMPP merupakan pengembangan dari LAMP (Linux Apache,

MySQL, PHP and PERL), XAMPP merupakan project non profit

yang dikembangkan oleh Apache Friends yang didirikan Kai

’Oswalad’, Seidler dan Kay Vogelgesang pada tahun 2002, project

mereka ini bertujuan mempromosikan penggunaan Apache Web

Server. Xampp ditemukan pada musim semi tahun 2002.

Adapun keuntungan dari Xampp antara lain (Sukarno, 2006):

1. Xampp dapat berjalan pada operating system Linux dan Windows.

Dan kemungkinan juga akan berjalan di Machintosh.

2. Mudah bagi programmer apabila ingin berganti versi PHP, cukup

melakukan switch versi.

3. Mudah dan cepat dalam proses instalasi.

Page 37: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

24

2.6.4 PHP

PHP adalah sebuah bahasa pemrograman yang diperintahnya

dilaksanakan pada server dan kemudian hasilnya ditampilkan pada

komputer klien. PHP juga merupakan HTML embedded, yaitu

perintah PHP dituliskan bersamaan dengan perintah-perintah HTML.

Dapat dikatakan tanpa HTML, maka PHP dapat digunakan

sebagaimana mestinya. HTML (HyperText Markup Language)

sendiri merupakan bahasa untuk membuat tampilan web. Jadi, disini

ada sinergi dari dua bahasa yang saling menguatkan, yaitu PHP dan

HTML (Arbai, 2004).

Menurut dokumen resmi PHP, PHP singkatan dari PHP

Hypertext Preprocessor yang merupakan bahasa berbentuk skrip

yang ditempatkan dalam server dan diproses di server. Hasilnyalah

yang dikirimkan ke klien, tempat pemakai menggunakan browser.

Secara khusus, PHP dirancang untuk membentuk web

dinamis. Artinya, dapat membentuk suatu tampilan berdasarkan

permintaan terkini. Misalnya, bisa menampilkan isi database ke

halaman Web. Pada prinsipnya, PHP mempunyai fungsi yang sama

dengan skrip-skrip seperti ASP(Active Server Page), Cold Fusion,

ataupun Perl.

Kelahiran PHP bermula saat Rasmus Lerdorf membuat

sejumlah skrip Perl yang dapat mengamati siapa saja yang melihat-

lihat daftar riwayat hidupnya, yakni pada tahun 1994. Skrip-skrip ini

Page 38: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

25

selanjutnya dikemas menjadi tool yang disebut “personal home page”,

paket inilah yang menjadi cikal-bakal PHP. Pada tahun 1995, Rasmus

menciptakan PHP/FI versi 2. pada versi inilah pemrogram dapat

menempelkan kode terstruktur didalam tag HTML. Yang menarik,

kode PHP juga bisa berkomunikasi dengan database dan melakukan

perhitungan-perhitungan yang kompleks sambil jalan.

Pada saat ini, PHP cukup popular sebagai peranti

pemrograman Web, terutama di lingkungan Linux. Walaupun

demikian, PHP sebernarnya juga dapat berfungsi pada server-server

yang berbasis UNIX, Windows NT, dan Macintosh. Bahkan versi

untuk Windows 95/98 pun tersedia.

Script PHP menyatu dengan file HTML, dieksekusi dan

bekerja di komputer server (server side). PHP banyak digunakan

untuk membuat website yang dinamis. Dibawah ini adalah salah satu

contoh bagaimana script PHP menyatu dalam file HTML:

Sample.php

1 <html>

2 <head>

3 <title>sample php</title>

4 <head>

5 <body>

6

7 <?php

Page 39: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

26

8 echo “uji sample php “;

9 ?>

10

11 </body>

12 </html>

Baris ke-1 hingga ke-6 dan baris-10 hingga ke-12 adalah file

HTML. Script PHP disisipkan pada baris ke-7 yang diawali dengan

tag pembuka <?php pada baris ke-7. perintah untuk melakukan

operasi terdapat pada baris ke-8. akhir script PHP ditandai dengan tag

penutup ?> pada baris ke-9.

PHP pertama kali diperkenalkan oleh Ramus Lerdoft pada tahun

1995 untuk keperluan dinamisasi web site pribadinya. Saat ini PHP

telah berkembang seiring dengan sambutan komunitas open source di

Internet. PHP juga memenuhi

kebutuhan akan bahasa scripting server side yang sederhana,

kuat, dan memiliki konektivitas dengan beragam database server.

Salah satu database server yang paling populer adalah MySQL.

permintaan HTTP

Gambar 2.5 Skema PHP

Web Server

Skrip PHP

Kode HTML

Mesin PHP

Browser

Page 40: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

27

2.6.5 MySQL

MySQL adalah salah satu jenis database server yang sangat

terkenal, kepopulerannya disebabkan MySQL menggunakan SQL

sebagai bahasa dasar untuk mengakses databasenya. Selain itu, ia

bersifat free (tidak perlu membayar untuk menggunakannya) pada

berbagai platform (kecuali pada Windows, yang bersifat shareware

atau perlu membayar setelah melakukan evaluasi dan memutuskan

untuk digunakan untuk keperluan produksi). Perangkat lunak MySQL

sendiri bisa di-download dari http://www.mysql.org atau

http://www.mysql.com.

2.7 Web Browser

Abdul Kadir mendefinisikan web browser sebagai perangkat lunak

yang berguna untuk mengakses informasi web ataupun untuk melakukan

transaksi via web. Beberapa contoh browser yang ada saat ini seperti:

Internet Explorer, Mozila Firefox, Opera, Netscape, Safari. Cara kerja

browser yaitu dengan membaca dokumen HTML yang diambil dari web

server melalui ISP sebagai koneksi internet, kemudian ditampilkan melalui

browser pada komputer (Kadir 2003).

Web browser berkomunikasi dengan web server lewat jaringan

komunikasi mengunakan protokol HTTP. Browser mengirim pesan

meminta dokumen atau layanan tertentu web server. Web server kemudian

menanggapi dengan mengirim dokumen atau menjalankan layanan tertentu

di server dan mengirim hasil menggunakan protokol HTTP. Kemudian

Page 41: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

28

browser akan menerima dokumen (HTML) tanggapan dari web server dan

menampilkanya dilayar (Hariyanto, 2004). Protokol HTML dirancang untuk

dapat menggabung semua protokol internet seperti Goper, Telnet, WAIS,

dan sebagainya dalam satu protokol tunggal. Semua layanan protokol lain

dikemas sebagai layanan-layanan yang disediakan lewat interaksi web

browser dan web server.

Page 42: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

29

BAB III

METODOLOGI PENELITAN

3.1. Metode Pengumpulan Data

Metode penelitian yang diterapkan dalam mendapatkan data dan

informasi yang mendukung dalam penelitian ini, sebagai berikut:

1. Studi Pustaka

Penelitian kepustakaan digunakan sebagai dasar pembahasan

secara teoritis dengan menggunakan data yang diperoleh dari lapangan

dan mengevaluasi hasil penelitian lapangan, teori-teori dan pandangan

dari buku-buku, bahan kuliah, pencarian melalui internet dan sumber-

sumber lainnya dalam penulisan karya tulis ini.

2. Studi Lapangan

Dalam melakukan penelitian di lapangan akan didapatkan data

yang terdapat dalam dokumen-dokumen instansi terkait, serta langsung

mengamati, mengevaluasi sistem informasi penjualan pada perusahaan-

perusahaan lain yang sudah mengimplementasikan sistem tersebut.

Pada penelitian ini juga akan dilakukan wawancara dengan narasumber

atau pihak-pihak yang berhubungan dengan masalah tersebut.

a. Teknik Wawancara, yaitu dengan langsung bertatap muka dengan

pihak-pihak terkait yaitu pembeli spare part motor.

b. Teknik Observasi, yakni dengan melakukan pengamatan langsung

terhadap hal-hal yang berhubungan dengan sistem informasi

Page 43: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

30

pemesanan tersebut. Observasi dilakukan pada bengkel CBR Motor

Racing.

3. Studi Literatur

Studi literatur ini dilakukan dengan melihat penelitian dan skripsi

sejenis yang sudah ada. Merujuk pada penelitian yang telah dilakukan

oleh (Indah Sartika, Perancangan dan pembuatan sistem promosi dan

penjualan barang pada PT Papasamsu, 2004), dan (Denny Chandra

Haryanto, Pembuatan website untuk pemesanan barang di perusahaan

X, 2003).

3.2. Metode Pengembangan Sistem

Metode membangun sistem adalah metode-metode, prosedur-

prosedur, konsep-konsep pekerjaan, aturan-aturan yang akan digunakan

untuk mengembangkan suatu sistem infomasi (Sutabri, 2004: 68).

Metode membangun sistem terdiri dari beberapa model dari proses

perangkat lunak yang umum digunakan, diantaranya: Model Sekuensial

Linear (Waterfall), Model Prototipe, Model RAD (Rapid Application

Development), dan Model Spiral (Pressman, 2002: 27).

Penulis memilih penelitian dengan menggunakan metode membangun

sistem model pendekatan RAD (Rapid Application Development). Penulis

menggunakan model RAD karena melihat dari aplikasi yang dikembangkan

adalah aplikasi yang sederhana dan tidak membutuhkan waktu yang lama,

metode RAD adalah metode yang diperuntukkan untuk jangka pendek

sesuai dengan aplikasi yang dikembangkan.

Page 44: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

31

Model RAD yang pada awalnya diusulkan oleh James Martin (1991)

(http://en.wikipedia.org/wiki/Rapid_application_development), merupakan

suatu pendekatan berorientasi objek terhadap membangun sistem yang

mencakup suatu metode membangun perangkat-perangkat lunak.

Tujuannya adalah mempersingkat waktu pengerjaan aplikasi serta

proses yang dihasilkan didapat secara cepat dan tepat. Berikut merupakan

gambar dari model RAD, yang terlihat pada gambar 3.1 (Kendall &

Kendall, 2003: 237), di bawah ini :

Gambar 3.1. Model membangun sistem RAD

Model RAD memiliki empat fase yaitu fase perencanaan syarat-

syarat, fase perancangan, fase konstruksi, dan fase pelaksanaan (Kendall &

Kendall, 2003: 238). Berikut adalah penjelasan masing-masing fase dalam

penelitian ini.

Menentukan tujuan dan syarat-syarat informasi

Membangun sistem Bekerja dengan pengguna untuk sistem perancangan

Memperkenalkan sistem

Fase Perancangan syarat-syarat

Menggunakan masukan dari pengguna

Fase Perancangan Fase Konstruksi

Umpan balik pengguna

Fase Pelaksanaan

Page 45: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

32

1. Fase Perencanaan Syarat-Syarat

Pada tahap ini dilakukan pengidentifikasian tujuan-tujuan

aplikasi atau sistem serta untuk mengidentifikasi syarat-syarat

informasi yang ditimbulkan dari tujuan-tujuan tersebut. Secara

terperinci yang penulis lakukan pada tahap Tujuan dan Syarat-

syarat Informasi adalah:

a. Menganalisa sistem yang berjalan.

b. Mengidentifikasi permasalahan yang ada..

c. Memberikan solusi permasalahan yang dihadapi.

Hasil yang penulis dapatkan dari tahap Tujuan dan Syarat-

syarat Informasi adalah:

a. Memperoleh informasi mengenai sistem pemesanan spare

part motor yang berjalan.

b. Memperoleh informasi dari permasalahan dalam melakukan

pencatatan secara manual.

c. Dibutuhkan aplikasi yang dapat mencatat dan menyimpan

data pemesanan dan data pembeli dengan menerapkan sistem

pemesanan online.

2. Fase Perancangan

Pada tahap ini dilakukan perancangan proses yaitu

perancangan proses-proses yang akan terjadi di dalam sistem.

Page 46: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

33

a. Perancangan Proses

Perancangan proses-proses yang akan dilakukan didalam

sistem menggunakan bagan alir DFD (Data Flow Diagram)

yakni dengan membuat diagram konteks, diagram level nol,

dan diagram level satu pada sistem yang akan diusulkan.

b. Perancangan Basis Data

Pada aplikasi sistem pemesanan ini digunakan database

sebagai pelengkap program seperti registrasi, proses

pemesanan, input data produk dan proses penyimpanan data

produk. Database yang digunakan adalah database MySQL.

c. Perancangan Antarmuka (User Interface)

Pada perancangan antarmuka (user interace) dilakukan

langkah menganalisis atau merencanakan tampilan untuk tata

letak sesuai dengan fungsi aplikasi.

3. Fase Konstruksi

Pada tahap ini dilakukan pembuatan program terhadap

rancangan-rancangan yang telah didefinisikan. Pembuatan program

yang dilakukan menggunakanbahasa pemrograman PHP, joomla

sebagai template CMS, dan adobe photoshop untuk mengedit

gambar-gambar pada website.

Page 47: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

34

4. Fase Pelaksanaan

Pada tahapan ini dilakukan pengujian terhadap aplikasi

sistem pemesanan yang telah dibuat, pada pengujian terhadap

aplikasi ini, penulis menggunakan pengujian black-box yaitu suatu

pengujian yang berfokus pada persyaratan fungsional perangkat

lunak (Pressman, 2002: 551). Sebagai akhir dari fase pelaksanaan

penulis juga meminta tanggapan user tentang aplikasi ini untuk

bahan evaluasi.

3.2. Kerangka Berfikir Penelitian

Gambar 3.2 Kerangka Berfikir Penelitian

Metode Pengumpulan Data

Metode Pengembangan Sistem

Fase Perancangan

Fase Perencanaan Syarat-Syarat

Fase Konstruksi

Fase Pelaksanaan

Studi Pustaka

Studi Lapangan

Wawancara

Observasi

Perancangan Proses

Perancangan Basis Data

Perancangan Antar Muka

Studi Literatur

Page 48: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

35

BAB IV

PEMBAHASAN DAN IMPLEMENTASI

4.1. Metodologi Pengumpulan Data

Penyusunan skripsi ini dilakukan dengan menggunakan beberapa

metode yang dapat mendukung penulisan, baik dalam pengumpulan data

maupun informasi yang diperlukan, untuk mendapatkan kebenaran materi

uraian pembahasan.

4.1.1. Studi Pustaka

Studi pustaka digunakan dengan membaca dan mempelajari

referensi yang ada, e-book, serta mencari referensi tambahan dari

internet. Buku utama yang digunakan peneliti yaitu : Super Market

Online (Dedik, 2010), Membangun Website Dengan CMS Joomla

(Hidayat, 2009), Membangun Website Dinamis Interaktif dengan

PHP-MySQL (Windows & Linux) (Muhammad, 2006) dan buku-

buku selengkapnya yang digunakan dapat dilihat pada daftar

pustaka.

4.1.2. Studi Lapangan

Studi Lapangan dilakukan dengan mendatangi langsung tempat

penelitian, yaitu pada bengkel CBR Motor Racing.

4.1.2.1. Wawancara

Disini dilakukan tanya jawab oleh peneliti sambil

bertatap muka antara pewawancara dengan narasumber

Page 49: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

36

yaitu Bapak Umar Aryo Seno (Pemilik CBR Motor Racing)

yang dilakukan pada tanggal 23 Juni 2011 di bengkel CMR

Jakarta.

4.1.2.2. Observasi

Pada metode Observasi, peneliti melakukan

pengamatan langsung di lapangan untuk mengetahui secara

langsung keadaan objek penelitian yang sebenarnya. Hal ini

bertujuan untuk memperoleh penjelasan mengenai data-data

dan informasi yang dibutuhkan dalam penelitian pada

bengkel CBR Motor Racing Jakarta.

1. Gambaran Umum Perusahaan

CMR (CBR Motor Racing) merupakan suatu

usaha rumahan yang sudah dirintis oleh pemiliknya

sejak tahun 2008. Bermula dari suatu komunitas forum

Motor Honda CBR dan pemiliknya hobi dalam hal

memodifikasi sekaligus service motor, lambat laun

pemilik CMR tersebut ingin memulai bisnisnya ke

penjualan suku cadang motor khususnya Honda CBR.

Dimulai dari aksesoris, service sampai ke suku cadang

yang susah dicari sekalipun dapat dicari di sini.

Memulai dengan memperkenalkan produk-

produknya melalui jejaring sosial facebook ternyata

mendapatkan respon yang sangat baik dari masyarakat

Page 50: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

37

yang mencari produk seperti aksesoris dan sparepart.

Dikarenakan penjual menjual produknya yang sifatnya

unik dan susah di cari di pasaran. Dengan pelanggan

yang semakin hari semakin bertambah memberikan

peluang pada usaha ini untuk dapat mengembangkan

lagi usahanya. Namun selain mendapat peluang usaha

yang besar tidak terlepas dari permasalahan yang

timbul seperti kompleksitas pemesanan yang tinggi

memungkinkan pihak CMR harus dapat memanajemen

dengan baik setiap pemesanan yang dilakukan oleh

pelangannya. Tidak hanya memperkenalkan suatu

produknya saja melalui media internet ini juga harus

bisa memberikan fasilitas kepada pelanggannya agar

dapat melakukan pemesanan secara online untuk

memberikan kenyamanan dalam melakukan pemesanan

produk.

Hal-hal diatas tersebut dapat dilakukan apabila

ada suatu sistem yang dapat memenuhi permasalahan-

permasalahan diatas yaitu dengan dibuatkannya sistem

informasi pemesanan online berbasis website. Untuk itu

CMR ingin membuat sistem pemesanan dan penjualan

online berbasiskan website. Jadi setiap pelanggan yang

Page 51: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

38

ingin memesan produk tinggal langsung memesannya

melalui situs yang akan dibuat tersebut.

2. Hasil Observasi

Observasi yang dilakukan pada bengkel CMR

memberikan kesimpulan bahwa promosi penjualan

spare part motor dengan menggunakan media brosur

dan promosi dari mulut ke mulut kurang efektif, karena

pelanggan yang datang tidak terlalu banyak. Selain itu,

pencatatan pemesanan spare part motor masih

dilakukan secara manual. Hal ini memungkinkan

terjadinya kesalahan pencatatan ataupun hilangnya

data. Pembeli pun harus memesan barang secara

langsung dengan datang ke bengkel sehingga pelayanan

yang diberikan kurang. Oleh karena itu diperlukan

suatu aplikasi pemesanan online dengan sebuah

teknologi masa kini yang dapat memberikan

kemudahan terhadap pembeli.

4.1.3 Studi Literatur

Studi literatur ini dilakukan dengan melihat penelitian dan

skripsi sejenis yang sudah ada. Merujuk pada penelitian yang telah

dilakukan oleh (Indah Sartika, Perancangan dan pembuatan sistem

promosi dan penjualan barang pada PT Papasamsu, 2004), dan

(Denny Chandra Haryanto, Pembuatan website untuk pemesanan

Page 52: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

39

barang di perusahaan X, 2003). Kelebihan yang akan ditambahkan

pada aplikasi yang akan dibuat antara lain yaitu : menambahkan fitur

status order pada admin, dan form guest book agar konsumen selain

member, juga dapat berinteraksi.

4.2. Metode Pengembangan Sistem

4.2.1. Fase Perencanaan Syarat – Syarat

Pada tahap ini dilakukan analisa kebutuhan masalah untuk

pembuatan aplikasi, mengedintifikasi permasalahan, dan

memberikan solusi terhadap permasalahan yang dihadapi.

1. Analisa Kebutuhan Masalah

a. Analisa Sistem Yang Sedang Berjalan

Sistem yang berjalan pada bengkel CMR adalah sebagai

berikut :

1. Informasi tentang produk disebarkan melalui pembagian

selebaran atau brosur, promosi dari mulut ke mulut, dan

media massa lainnya kepada masyarakat umum.

2. Pemesanan dan pembelian oleh konsumen dilakukan

dengan cara datang langsung ke bengkel.

Bagan alir sistem yang sedang berjalan digambarkan

pada gambar 4.1 dibawah ini :

Page 53: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

40

Gambar 4.1 Diagram Sistem yang Berjalan

b. Kelemahan Sistem yang Berjalan

Berdasarkan analisa sistem berjalan di atas, maka didapat

kelemahan sistem yang berjalan sebagai berikut:

1. Promosi produk yang dilakukan menggunakan media

konvensional seperti promosi dari mulut ke mulut dan

media cetak kurang efektif karena tidak menjangkau

pembeli secara luas.

2. Pembeli harus datang sendiri untuk membeli produk yang

diinginkannya sehingga pembeli hanya terbatas pada orang

yang mau datang ke tempat penjualan saja.

Page 54: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

41

3. Data pembelian yang dicatat secara manual juga berpotensi

terjadi kesalahan atau human error.

c. Solusi Pemecahan Masalah

Pemecahan masalah yang penulis lakukan dalam

menyelesaikan masalah adalah dengan pembuatan aplikasi

pemesanan spare part secara online berbasis web. Website

yang dibuat akan dijadikan sebagai media promosi sekaligus

untuk memesan barang dimana penjual telah memasukkan data

barang-barang yang akan dijual.

d. Analisis Sistem Usulan

Dengan adanya website pemesanan barang, masyarakat

yang ingin mencari informasi produk mengenai spare part

kendaraan bermotor tidak perlu repot untuk datang langsung

ke bengkel-bengkel tertentu masyarakat bisa mengakses

website tersebut melalui komputer tanpa ada batasan waktu.

Konsumen juga dapat melakukan pemesanan langsung secara

online.

Bagan alir sistem yang sedang berjalan digambarkan

pada gambar 4.2 dibawah ini :

Page 55: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

42

Gambar 4.2 Diagram Sistem Usulan

Tabel 4.1 Perbandingan sistem berjalan dengan sistem usulan

No Sistem Berjalan Sistem yang Diusulkan Hasil yang Ingin Dicapai

1 Pembeli atau

konsumen

melakukan untuk

memesan harus

datang langsung ke

toko

Pembeli atau konsumen

bisa melakukan

pemesanan di rumah

dengan menggunakan

fasilitas internet. Dengan

menggunakan aplikasi

pemesanan berbasis web.

Data transaksi melalui sistem

pemesanan ini dapat

dilakukan dengan mudah dan

cepat yang dapat dilakukan

dimana saja dan kapan saja

tanpa batas waktu. Sehingga

menguntungkan kedua belah

pihak (penjual dan pembeli).

Page 56: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

43

2 Untuk promosi

produk mengunakan

media iklan seperti

brosur, majalah dan

koran, hal tersebut

sangat banyak

mengeluarkan biaya

ketika ingin

melakukan promosi

secara terus menerus

setiap ada produk

baru.

Produk dapat di

promosikan melalui media

internet seperti forum

forum sosial diantarnya

facebook, twitter, frienster

dan media sosial lainnya.

Setiap ada produk baru yang

akan ditawarkan dapat diolah

melalui fasilitas admin.

3 Perhitungan dan

pengecekan stok

barang masih

dilakukan secara

manual dengan

pencatatan melalui

kertas.

Pengecekan data stok

barang dilakukan secara

komputerisasi dengan

aplikasi sederhana

misalnya exel dan access.

Stok barang bisa di

manajemen oleh admin

melalu fasilitas stok barang

yang tersedia di website

tersebut.

4 Media penyimpanan

masih bersifat

manual, dengan

media kertas dan

dokumen atau data-

data tidak tersusun

secra terstruktur dan

rapih.

Penyimpanan tersusun

secara rapih dan terstruktur

dengan menggunakan

basis data dalam aplikasi

pemesanan berbasis web

ini.

Dengan adanya basis data ini,

dapat memudahkan dalam

pengolahaan data,yaitu

mencari maupun

mendapatkan data-data

tersebut dan data tersebut

dapat tersimpan secra aman

dan rapih di dalam basis data.

Page 57: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

44

2. Tujuan

Peneliti bertujuan untuk membuat suatu aplikasi pemesanan

barang berbasis web yang dapat diakses kapanpun dimanapun

dengan menggunakan internet, sehingga proses promosi dan

pemesanan produk kepada konsumen menjadi mudah.

3. Syarat-syarat

Untuk mewujudkan tujuan tersebut dibutuhkan beberapa

syarat minimum dalam pembuatan aplikasi pemesanan spare part

motor berbasis web ini yaitu meliputi hal-hal sebagai berikut :

1. Web server

Web server merupakan syarat mutlak suatu aplikasi

berbasis web. Web server merupakan platform untuk

menjalankan suatu aplikasi berbasis web. Untuk

pengembangan aplikasi ini dibutuhkan minimum Web Server

Apache 2.0

2. Bahasa Pemrograman

Bahasa pemrograman dibutuhkan untuk dapat

membangun sebuah aplikasi, agar komputer dapat melakukan

berbagai operasi dan fungsi sesuai dengan keinginan user.

Untuk itu dibutuhkan suatu bahasa pemrograman yang dapat

digunakan untuk membuat aplikasi client server. Bahasa

pemrograman yang dibutuhkan dalam pengembangan aplikasi

ini adalah Joomla versi 1.0 dan PHP 5.2.5.

Page 58: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

45

3. Database

Pengelolaan database akan digunakan untuk pelengkap

program seperti proses login serta proses pemesanan dan

penyimpanan file produk. Database yang dibutuhkan adalah

database MySQL 5.0.5.1.

Spesifikasi perangkat lunak dan perangkat keras minimum

yang diperlukan dalam pembuatan aplikasi ini adalah sebagai

berikut :

2. Perangkat Lunak :

a. Paket web server Xampp versi 1.6.6a

(Apache 2.0., PHP 5.2.5.,, MySQL 5.0.5.1)

b. Macromedia Dreamweaver 8.

c. Mozilla Firefox 3.0.

d. Microsoft Windows XP.

3. Perangkat Keras :

a. Personal Computer

1) Processor : Intel Pentium IV.

2) RAM : Memory 256 MB

3) Harddisk : 80 GB

4) VGA : 128 MB

b. Monitor dengan resolusi 800x600 pixel.

Page 59: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

46

4.2.2 Fase Perancangan

Tahapan selanjutnya dalam RAD setelah menganalisis masalah

pada sistem yang berjalan adalah tahap perancangan sistem yang

bertujuan untuk mengatasi permasalahan-permasalahan yang ada dan

memberikan usulan rancangan sistem.

1. Perancangan Data Flow Diagram (DFD)

DFD merupakan alat perancangan sistem yang berorientasi

pada alur data dengan konsep dekomposisi yang dapat digunakan

untuk penggambaran analisa maupun rancangan sistem yang

mudah dikomunikasikan oleh profesional sistem kepada pemakai

maupun pembuat program. Berikut merupakan gambaran umum

website Pemesanan barang Online dalam bentuk DFD.

a. Diagram Konteks

Diagram konteks merupakan diagram yang

memperlihatkan aplikasi sebagai bentuk satu proses yang

terjadi atau pemetaan yang terjadi.

Gambar 4.3 Diagram Kontex

Data Pelanggan dan Data Pemesanan Produk

Olah data Pemesanan dan Produk

Info Produk dan Bukti Pembayaran

Memesan Produk

Konsumen

Aplikasi Pemesanan Spare Part

Motor Online

Administrator

Page 60: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

47

Dalam konteks diagram pada gambar 4.3 terdapat dua

entity yang menunjang proses aplikasi ini yaitu konsumen dan

administrator

b. Diagram Zero

Diagram ini untuk mendetailkan setiap proses yang terjadi

pada diagram zero sistem yang diusulkan.

Konsumen registrasi Admin

Pemesanan

Mengelola

data

Username,Password user

User, status user User, status user

Nama

konsumen,alamat,produk

Transaksi,alamat

produk

bukti_pemesanan

user

User,,status

User

username

Nama Produk,

jumlah produk

Stok produk

Produk

Username,

produk

order

Order status

Gambar 4.4 Diagram Zero sistem yang diusulkan

1.0

2.0

3.0

Order statusStok produk

Nama produk

Kategori

Stok produk

Username,

Password

Page 61: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

48

Pada gambar 4.4 ini, terdapat entity yaitu konsumen dan

admin. Sistem ini memiliki tiga proses yaitu : proses 1.0 yakni

proses registrasi, proses 2,0 yakni proses pemesanan barang,

dan proses 3.0 yakni proses mengolah data.

c. Diagram Rinci

1) Diagram Rinci / Level 2 proses ke-1

Diagram Gambar 4.5 menjelaskan secara detail dari

proses 1 yaitu proses mengolah data user yakni

pendaftaran user dan proses mempebaharui data user yang

diperoleh dan disimpan di database user.

Page 62: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

49

2) Diagram Rinci / Level 2 proses ke-2

Diagram Gambar 4.6 menjelaskan secara detail dari

proses 2 yaitu proses memilih produk, yaitu pemilihan

produk yang dilakukan oleh konsumen. Kemudian proses

menentukan produk, yakni konsumen telah menentukan

produk apa saja yang akan dibeli. Setelah itu proses

konfirmasi pemesanan,yaitu konsumen mengkonfirmasi

pemesanannya dan akan disimpan dalam database order.

Pada proses Melihat data pemesanan, admin dapat melihat

data pemesanan yang ada dalam database order.

Page 63: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

50

3) Diagram Rinci / Level 2 proses ke-3

adminMengedit status

pemesanan

Menghapus data

pemesanan

Menambah

produk

Mengedit

produk

order

Order status

Nama konsumen

Nama produk

Kategori

Stok produk

Order status

Nama konsumen

3.1

3.2

3.3

3.4

Nama produk

Kategori

Stok produk

produk

Nama produk

Kategori

Stok produk

Nama produk

Kategori

Stok produk

Menghapus

produk

Nama produk Nama produk

Gambar 4.7 Diagram Level 2 proses ke-3

3.5

Diagram pada gambar 4.7 menjelaskan secara detail

dari proses 3 yaitu proses mengedit status pemesanan,

menghapus data pemesanan, menambah produk, mengedit

produk yang tersimpan dalam database produk, dan

menghapus produk.

Page 64: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

51

2. Perancangan Basis Data

Basis data dalam aplikasi absensi ini diimplementasikan

menggunakan Mysql yang terintegrasi dengan PHP.

a. Entity Relationship Diagram (ERD)

Perancangan basis data ini termasuk didalamnya meliputi

bentukan ER Diagram yang berikutnya akan

diimplementasikan dalam bentuk tabel-tabel dengan

keterkaitan atau keterhubungannya diantara tabel tersebut.

Perancangan DFD yang telah digambarkan sebelumnya

kemudian dilanjutkan dengan perancangan database yang akan

digunakan pada aplikasi ini dengan penggambaran database

ER (Entity Relationship) Diagram sebagai berikut :

Gambar 4.8 Entity Relationship Diagram (ERD)

M

M

M

Admin olah Usernam

Passwor

User Produk order

password

Nama

Alamat

Telp

Email

idProdk

Nama

Gambar

Keterang

Harga

Kategori

idorder

IDUser*

Jumlah order idProduk **

idAdmin

1

Status

Stok

idUser*

usernam

Page 65: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

52

b. Spesifikasi Tabel

1. Nama Database : commercedb

Nama Tabel : Produk

Primary Key : idProduk

Foreign Key : -

Tabel 4.2 Tabel Produk

No Nama Field Type Size Keterangan

1 Id_produk* INT 4 ID Produk

2 Kategori Varchar 55 Kategori Produk

3 Nm_prdk Varchar 55 Nama Produk

4 Hrg_Prdk INT 6 Harga Produk

5 Gambar Varchar 55 Gambar Produk

6 Ket Text 55 Keterangan Produk

2. Nama Tabel : User

Primary Key : idUser

Foreign Key : -

Tabel 4.3 Tabel User

No Nama Field Type Size Keterangan

1 Id_user* INT 4 ID User

2 Username Varchar 55 Username

3 Password Varchar 55 Password User

4 Nama Text 55 Nama User

5 Email Text 55 Email User

6 Alamat Text 55 Alamat User

7 Status User Text 55 Status User

Page 66: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

53

3. Nama Tabel : Order

Primary Key : idOrder

Foreign Key : idUser, idProduk

Tabel 4.4 Tabel Order

No Nama Field Type Size Keterangan

1 id_Order* INT 4 ID Produk

2 Jumlah_Order INT 55 Kategori Produk

3 Status_Order Varchar 55 Nama Produk

4 id_User** INT 4 Harga Produk

5 id_Produk** INT 4 Gambar Produk

3. Rancangan Tampilan (User Interface)

1. Rancangan Tampilan Home

Halaman ini merupakan halaman depan dari semua halaman

yang ada pada website ini. Halaman ini juga dapat disebut

sebagai halaman pembuka, karena pada saat pertama website

dibuka maka halaman inilah yang akan tampil sebelum halaman

yang lainnya. Tampilan menu utama terdiri dari beberapa menu

yang dapat membuka halaman lain seperti tampilan Home, Store

Online, GuestBook, Contact dan Admin. Rancangan halaman

selanjutnya sama rancangan tampilan Home hanya yang

membedakannya adalah isinya. Rancangan tampilan menu

utama dapat dilihat pada gambar 4.9

Page 67: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

54

Gambar 4.9 Rancangan Halaman Index

2. Rancangan Tampilan Pooling

Pada rancangan tampilan atau halaman pooling ini akan

menampilkan persentasi dari pertanyaan yang diajukan kepada

para pengunjung website. Apakah website tersebut bermanfaat

atau tidak bagi pengunjung website. Ketika di input pilihannya

maka akan mucul persentasi dari setiap jawaban yang ada.

Untuk rancangannya dapat dilihat pada gambar 4.10 berikut :

:: BANNER :: :: BANNER::

Home | Store Online | GuestBook | Admin

Daftar Pengunjung

Main Menu Link Link2 Link3 Link4

Login Form UserName Password Password LOGIN

Time

Pools

Text Selamat Datang

Page 68: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

55

Gambar 4.10 Rancangan Halaman Pooling

3. Rancangan Tampilan Store Online

Pada rancangan halaman produk ini akan menjelaskan

mengenai produk - produk yang akan diperjualbelikan secara

online, dengan terlebih dahulu memilih kategori produk yang

akan dipesan kemudian pilih produk yang akan dipesan, tetapi

sebelumnya pengunjung website haruslah melakukan registrasi

terlebih dahulu apabilia ingin melakukan pemesanan produk.

:: BANNER::

Home | Store Online | GuestBook | Admin

Daftar Pengunjung

Main Menu Link1 Link2 Link3 Link4

Login Form UserName Password LOGIN

Time

Pools

Bagaimana pendapat anda tentang fasilitas toko online pada website ini?

a. Sangat Baik ----------------------------- 90% b. Baik --------------- 45 % c. Biasa Saja ----- 22 % d. Tidak Baik -- 10 %

Page 69: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

56

Untuk rancangan halamn produk adalah seperti pada gambar

4.11.

Gambar 4.11 Rancangan Halaman Produk

4. Rancangan Tampilan Shopping Cart

Dalam rancangan halaman shooping cart ini yang

merupakan halaman yang akan mengakumulasikan harga

pemesanan setiap produk yang telah dipesan oleh pengunjung

website ataupun konsumen. Dijelaskan dalam halaman ini

Gambar Produk

Gambar

Add To Chart

:: BANNER::

Home | Store Online | GuestBook | Admin

Daftar Pengunjung

Main Menu Link1 Link2 Link3 Link4

Time

Pools

Ket … xxxxxxxxxxxxx xxxxxxxxxxxx Quantity :

Page 70: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

57

mengenai penambahan produk dan penambahan item per

produk. Untuk rancangannya dapat dilihat pada gambar 4.12.

Gambar 4.12 Rancangan Halaman Shopping Cart

5. Rancangan Tampilan Registrasi

Halaman registrasi ini dibuat untuk mengisi data – data

pengunjung, seperti nama, alamat, telp, email dan lain

sebagainya. Pada halaman registrasi ini nantinya akan menjadi

acuan untuk biodata pengunjung yang dapat dijadikan subjek

apabila pengunjung itu melakukan pemesanan produk ataupun

:: BANNER::

Home | Store Online | GuestBook | Admin

Daftar Pengunjung

Main Menu Link1 Link2 Link3 Link4

Time

Pools

Shooping Cart Nama Harga Quantity Subtotal Update xxxx Rp. xxx Rp.xxx Hapus Sub-Total: Rp. xxx Total : Rp. xxx << Lanjut Belanja | Check Out >>

Page 71: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

58

mengisi forum tanya jawab yang ada pada website tersebut.

Untuk rancangan halaman registrasi dapat dilhat pada gambar

4.13.

Gambar 4.13 Rancangan Halaman Registrasi

6. Rancangan Halaman GuestBook

Dalam halaman forum atau guest book ini dimaksudkan

untuk setiap pengunjung dapat mengisi forum tersebut. Untuk

forum itu bisa berisi komentar maupun saran ataupun

pertanyaan – pertanyan yang berhubungan dengan website ini.

Untuk rancangannya dilhat pada gambar 4.14.

:: BANNER::

Home | Store Online | GuestBook | Admin

Daftar Pengunjung

Main Menu Link1 Link2 Link3 Link4

Time

Pools

Page 72: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

59

Gambar 4.14 Rancangan Halaman Guest Book

7. Rancangan Halaman Contact Us

Rancangan halaman kontak kami ini dimaksudkan untuk

mencantumkan alamat pemilik ata toko ini dengan alamatnya

sendiri dimana lokasi pemilik atau toko itu berada. Untuk

rancangannnya dilhat pada gambar 4.15.

:: BANNER::

Home | Store Online | GuestBook | Admin

Daftar Pengunjung

Main Menu Link1 Link2 Link3 Link4

Login Form UserName Password LOGIN

Nama : Subjek : Icon : Message : Image : File Attach :

Submit

Page 73: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

60

Gambar 4.15 Rancangan Halaman Contact Us

8. Rancangan Halaman List Order

Halaman List Order berisi daftar order yang telah

dimasukkan oleh user. Pada daftar order, terdapat nama user,

order detail, tanggal order, status order, dan jumlah total harga

barang yang dipesan. Tampilan halaman List Order dilhat pada

gambar 4.16.

:: BANNER::

Home | Store Online | GuestBook | Admin

Daftar Pengunjung

Main Menu Link1 Link2 Link3 Link4

Login Form UserName Password LOGIN

Time

Pools

::Contact Us:: Jl. raya Pasar Lama No. 18 Lewiliang - Bogor Indonesia Country 443212 Phone 0251-8647424 Email [email protected]

Page 74: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

61

Gambar 4.16 Rancangan Halaman List Order

9. Rancangan Order Detail

Pada halaman Order Detail, ditampilkan keterangan

lengkap dari pemesanan yang dilakukan oleh pembeli. Order

Detail mencakup informasi order, informasi pembeli,dan

informasi produk yang dibeli. Tampilannya dilhat pada gambar

4.17.

:: BANNER::

Admin Product Orders

Oder Number

Name Order Detail

Order Date

Status Sub Total

Page 75: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

62

Gambar 4.17 Rancangan Halaman Order Detail

4.2.3 Fase Konstruksi

Pada tahap ini penulis melakukan pembangunan sistem aplikasi

yang telah dirancang sebelumnya. Pembangunan aplikasi meliputi

pemenuhan kebutuhan hardware (perangkat keras) dan Software

(perangkat lunak) yang digunakan.

1. Pemrograman

Pada tahap ini penulis menggunakan bahasa pemrograman

dengan PHP, sedangkan software yang digunakan dalam

pembuatan aplikasi ini yaitu Joomla dan komponen Virtue Mart

sebagai template CMS, Adobe Photoshop CS2 untuk mengedit

gambar-gambar, Macromedia Dreamweaver 8, dan sebagai

software yang menunjang database, penulis menggunakan MySQL.

:: BANNER::

Admin Product Orders

Order Information Costumer Information Name : Contact : Email : Order Items Product Name : Price : Quantity : Subtotal :

Page 76: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

63

2. Spesifikasi Hardware dan Software

1. Perangkat Keras (Hardware)

1. Processor Genuine Intel(R) Core(TM) 2 Duo CPU T6570

@ 2.1GHz.

2. Harddisk 320 GB.

3. Memory DDR 2 GB.

4. Monitor dengan resolusi 1280x800 pixel.

2. Perangkat Lunak (Software)

Spesifikasi perangkat lunak (software) yang penulis

gunakan dalam perancangan aplikasi ini dijelaskan sebagai

berikut :

1. Sistem Operasi : Windows XP Service Pack 2.

2. Webserver : Xampp v 1.6.6a (Apache 2.0, PHP 5.2.5,

MySQL 5.0.5.1)

3. Browser : Mozilla Firefox 3.5.2.

4. Adobe Photoshop CS3.

5. Macromedia Dreamweaver 8

4.2.4 Fase Pelaksananaan

Pada tahap ini dilakukan pengujian terhadap sistem dan

melakukan pengenalan terhadap sistem. Penulis menggunakan metode

pengujian dengan pendekatan blackbox testing. Metode blackbox

testing melakukan pengujian tanpa melihat source code program dan

Page 77: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

64

dijalankan oleh tester atau user untuk mengamati program apakah

telah menerima input, memproses, dan menghasilkan output, dan

ternyata berjalan dengan benar. Hasil pengujian dapat dilihat pada

Tabel 4.5 Hasil Pengujian Aplikasi dengan Black Box Testing.

Tabel 4.5 Hasil Pengujian Aplikasi

No Rancangan Proses Hasil yang Diharapkan Hasil Keterangan 1 Klik menu Home Masuk halaman home Ok Dapat dilihat pada

Lampiran B Gambar 1

2 Klik Register Masuk halaman registrasi, isi data registrasi

Ok Dapat dilihat pada Lampiran B Gambar 2

3 Klik menu Login user

Masuk halaman Login, isi nama dan password

Ok Dapat dilihat pada Lampiran B Gambar 1

4 Klik menu Store Online

Masuk halaman Store Online

Ok Dapat dilihat pada Lampiran B Gambar 3

5 Klik menu Categories

Masuk halaman List Produk

Ok Dapat dilihat pada Lampiran B Gambar 4

6 Klik tombol Add to Chart

Menambahkan barang pada keranjang belanja

Ok Dapat dilihat pada Lampiran B Gambar 6

7 Klik tombol Checkout

Masuk halaman Konfirmasi Order

Ok Dapat dilihat pada Lampiran B Gambar 8

8 Klik tombol Confirm Order

Mengkonfirmasi pemesanan dan isi biodata

Ok Dapat dilihat pada Lampiran B Gambar 7

9 Klik tombol Log Out

Kembali ke halaman Home

Ok Dapat dilihat pada Lampiran B Gambar 1

10 Klik menu Order Melihat daftar pemesanan OK Dapat dilihat pada Lampiran B Gambar 11

Page 78: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

65

BAB V

PENUTUP

5.1 Kesimpulan

1. Dengan adanya website ini, akan lebih mempermudah pihak CMR untuk

melakukan pengelolaan pemesanan. Hal ini terlihat pada halaman order

list dimana admin dapat melihat dan menghapus pemesanan. Halaman

order list dapat dilihat pada lampiran B gambar 11.

2. Memepermudah konsumen mendapatkan informasi mengenai produk-

produk yang akan dibelinya pada website ini. Hal ini dapat dilihat pada

lampiran B gambar 4 dan 5.

3. Pemesanan barang dapat dilakukan secara langsung melalui website ini.

Konsumen tidak harus datang ke bengkel untuk memesan barang. Hal ini

dapat dilihat pada lampiran B gambar 6-8.

4. Dengan mengguanakan CMS, yaitu Joomla dan virtuemart, proses

pembuatan website, akan menjadi lebih mudah karena pada tools tersebut

sudah disediakan banyak fitur-fitur yang berguna.

5.2 Saran

1. Disarankan agar kedepannya website ini bisa dikembangkan menjadi

website yang lebih menarik lagi dengan menambahkan animasi dalam

menyajikan produk.

Page 79: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

66

2. Aspek keamanan website juga merupakan hal penting karena selain

sebagai acuan agar terpeliharanya sebuah website dengan lebih baik, aspek

ini juga berperan dalam menjaga intervensi pihak-pihak luar yang

mungkin mengganggu sebuah website.

3. Proses transaksi diharapkan dapat dikembangkan menjadi otomatis agar

lebih mempermudah pengguna dalam bertransaksi.

Page 80: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

67

DAFTAR PUSTAKA Anonim. 2010. Belajar Sendiri Membuat Homepage Dengan HTML. Jakarta :

Elex Media Komputindo.

Arbai. 2004. Manajemen Database dengan MySQL. Yogyakarta: Penerbit Andi

Firdaus. 2010. PHP & MySQL. Palembang : Maxikom.

Hartono, Jogiyanto. 1999. Pengenalan Komputer. Yogyakarta: Andi.

Kadir, Abdul. 2003. Pengenalan Sistem Informasi. Yogyakarta: Penerbit Andi.

Kenneth E. Kendall., Jullie E. Kendall. 2003. Sistems Analysis and Design. fifth

Edition. Dialihbahasakan oleh Thamir Abdul Hafed Al-Hamdany, B.Sc, M.Sc

dalam buku Analisa dan Perancangan Sistem Jilid 1. Jakarta : Prenhallindo.

Kurniawan, Dedik. 2010. Super Market Online. Jakarta : Elex Media Komputndo.

Ladjamudin, Al-Bahra. 2005 Analisis dan Desain Sistem Informasi. Yogyakarta:

Graha Ilmu.

Mac Bride. 2009. Internet. Bekasi : Megapoin.

Pressman, Roger S. 2002. Rekayasa Perangkat Lunak Pendekatan Praktisi (Buku

Satu). Yogyakarta : Andi.

Sardi, Irawan. 2004. Manajemen, Desain, dan Pengembangan Situs Web dengan

Macromedia Dreamweaver MX dan Adobe Photoshop 7. Jakarta: Elex

Media Komputindo.

Sarif, Hidayat. 2009. Membangun Website Dengan CMS Joomla. Bandung : Info

Media.

Page 81: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

68

Sukarno, Muhammad. 2006. Membangun Website Dinamis Interaktif dengan

PHP-MySQL (Windows & Linux). Jakarta: Eska Media

Sutabri, Tata. 2004. Analisa Sistem Informasi. Yogyakarta : Andi.

Whitten, Bentley, Dittman. 2004. Metode Desain & Analisis Sistem. Yogyakarta:

Penerbit Andi.

http://en.wikipedia.org/wiki/Rapid_application_development diakses pada

5 Agustus 2011

http://id.wikipedia.org/wiki/Perdagangan_elektronik diakses pada 20 Juni 2011.

deris.unsri.ac.id/materi/deris/ecommerce_deris.pdf diakses pada 11 Juni 2011.

Page 82: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

LAMPIRAN A

HASIL WAWANCARA

Narasumber : Umar Aryo Seno

(Pemilk Bengkel CMR)

Pewawancara : Erry Handoyo

Waktu : 23 Juni 2011

1. T : Bagaimana CMR melakukan promosi produk-produk yang akan dijual ?

J : Promosi dilakukan dengan cara membagi-bagikan brosur kepada

masyarakat. Selain itu juga CMR melakukan promosi melalui

Koran dan majalah otomotif.

2. T : Bagaimana proses pembelian produk oleh konsumen ?

J : Untuk membeli barang, konsumen datang langsung ke bengkel

CMR, kemudian akan langsung dilayani oleh sales kami.

3. T : Apakah data-data pembelian dicatat? Bagaimana pencatatannya ?

J : Ya, pencatatan dilakukan dengan merujuk pada bon pembelian.

4. T : Masalah apa yang sering dihadapi dalam penjualan dengan sistem yang

sekarang?

J : Pembeli kurang mengetahui produk-produk yang ditawarkan.

Pembeli cenderung berasal dari daerah sekitar bengkel, sehingga

Page 83: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

pembeli yang datang agak kurang. Pembeli juga tidak dapat

memesan terlebih dahulu.

5. T : Apakah menurut bapak promosi yang telah dilakukan berjalan baik dan

efektif?

J : Menurut kami masih kurang, karena promosi hanya mencakup

lingkup yang kecil, hanya pada daerah yang berdekatan dengan

bengkel CMR.

6. T : Menurut bapak bagaimana jika terdapat aplikasi pemesanan yang yang

menggunakan websitre?

J : Jika memang hal itu dapat dilakukan saya rasa hal itu dapat

mengefektifkan masalah promosi dan pemesanan dapat dilakukan

secara langsung tanpa harus datang ke bengkel.

7. T : Input dan output apa saja yang diharapkan dalam aplikasi ini?

J : Saya menginginkan adanya pemesanan barang yang rapi yang bisa

dilihat setiap saat saya mengakses aplikasi tersebut. Kemudian saya

ingin agar konsumen yang sudah menjadi langganan dapat

disimpan datanya.

Page 84: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

LAMPIRAN B TAMPILAN APLIKASI

1. Halaman Home

2. Halaman Registrasi

Page 85: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

3. Halaman Store Online

4. Halaman Produk

Page 86: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

5. Halaman Produk Detail

6. Halaman Shopping Chart

Page 87: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

7. Halaman Biodata Pemesan

8. Halaman Konfirmasi

Page 88: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

9. Halaman GuestBook

10. Halaman Contact Us

Page 89: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

11. Halaman Order List

12. Halaman Order Detail

Page 90: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

LAMPIRAN C SOURCE CODE APLIKASI

index.php <?php // Set flag that this is a parent file define( '_VALID_MOS', 1 ); // checks for configuration file, if none found loads installation page if (!file_exists( 'configuration.php' ) || filesize( 'configuration.php' ) < 10) { $self = rtrim( dirname( $_SERVER['PHP_SELF'] ), '/\\' ) . '/'; header("Location: http://" . $_SERVER['HTTP_HOST'] . $self . "installation/index.php" ); exit(); } require( 'globals.php' ); require( 'configuration.php' ); // SSL check - $http_host returns <live site url>:<port number if it is 443> $http_host = explode(':', $_SERVER['HTTP_HOST'] ); if( (!empty( $_SERVER['HTTPS'] ) && strtolower( $_SERVER['HTTPS'] ) != 'off' || isset( $http_host[1] ) && $http_host[1] == 443) && substr( $mosConfig_live_site, 0, 8 ) != 'https://' ) { $mosConfig_live_site = 'https://'.substr( $mosConfig_live_site, 7 ); } require_once( 'includes/joomla.php' ); //Installation sub folder check, removed for work with SVN if (file_exists( 'installation/index.php' ) && $_VERSION->SVN == 0) { define( '_INSTALL_CHECK', 1 ); include ( $mosConfig_absolute_path .'/offline.php'); exit(); } // displays offline/maintanance page or bar if ($mosConfig_offline == 1) { require( $mosConfig_absolute_path .'/offline.php' ); } // load system bot group $_MAMBOTS->loadBotGroup( 'system' ); // trigger the onStart events $_MAMBOTS->trigger( 'onStart' ); if (file_exists( $mosConfig_absolute_path .'/components/com_sef/sef.php' )) { require_once( $mosConfig_absolute_path .'/components/com_sef/sef.php' ); } else { require_once( $mosConfig_absolute_path .'/includes/sef.php' ); } require_once( $mosConfig_absolute_path .'/includes/frontend.php' ); // retrieve some expected url (or form) arguments $option = strval( strtolower( mosGetParam( $_REQUEST, 'option' ) ) ); $Itemid = intval( mosGetParam( $_REQUEST, 'Itemid', null ) ); if ($option == '') { if ($Itemid) { $query = "SELECT id, link" . "\n FROM #__menu" . "\n WHERE menutype = 'mainmenu'" . "\n AND id = " . (int) $Itemid . "\n AND published = 1" ; $database->setQuery( $query ); } else { $query = "SELECT id, link" . "\n FROM #__menu"

Page 91: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

. "\n WHERE menutype = 'mainmenu'" . "\n AND published = 1" . "\n ORDER BY parent, ordering" ; $database->setQuery( $query, 0, 1 ); } $menu = new mosMenu( $database ); if ($database->loadObject( $menu )) { $Itemid = $menu->id; } $link = $menu->link; if (($pos = strpos( $link, '?' )) !== false) { $link = substr( $link, $pos+1 ). '&Itemid='.$Itemid; } parse_str( $link, $temp ); /** this is a patch, need to rework when globals are handled better */ foreach ($temp as $k=>$v) { $GLOBALS[$k] = $v; $_REQUEST[$k] = $v; if ($k == 'option') { $option = $v; } } } if ( !$Itemid ) { // when no Itemid give a default value $Itemid = 99999999; } // mainframe is an API workhorse, lots of 'core' interaction routines $mainframe = new mosMainFrame( $database, $option, '.' ); $mainframe->initSession(); // trigger the onAfterStart events $_MAMBOTS->trigger( 'onAfterStart' ); // checking if we can find the Itemid thru the content if ( $option == 'com_content' && $Itemid === 0 ) { $id = intval( mosGetParam( $_REQUEST, 'id', 0 ) ); $Itemid = $mainframe->getItemid( $id ); } /** do we have a valid Itemid yet?? */ if ( $Itemid === 0 ) { /** Nope, just use the homepage then. */ $query = "SELECT id" . "\n FROM #__menu" . "\n WHERE menutype = 'mainmenu'" . "\n AND published = 1" . "\n ORDER BY parent, ordering" ; $database->setQuery( $query, 0, 1 ); $Itemid = $database->loadResult(); } // patch to lessen the impact on templates if ($option == 'search') { $option = 'com_search'; } // loads english language file by default if ($mosConfig_lang=='') { $mosConfig_lang = 'english'; } include_once( $mosConfig_absolute_path .'/language/' . $mosConfig_lang . '.php' ); // frontend login & logout controls $return = strval( mosGetParam( $_REQUEST, 'return', NULL ) ); $message = intval( mosGetParam( $_POST, 'message', 0 ) );

Page 92: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

// Get the information about the current user from the sessions table $my = $mainframe->getUser(); if ($option == 'login') { $mainframe->login(); // JS Popup message if ( $message ) { ?> <script language="javascript" type="text/javascript"> <!--// alert( "<?php echo addslashes( _LOGIN_SUCCESS ); ?>" ); //--> </script> <?php } if ( $return && !( strpos( $return, 'com_registration' ) || strpos( $return, 'com_login' ) ) ) { // checks for the presence of a return url // and ensures that this url is not the registration or login pages // If a sessioncookie exists, redirect to the given page. Otherwise, take an extra round for a cookiecheck if (isset( $_COOKIE[mosMainFrame::sessionCookieName()] )) { mosRedirect( $return ); } else { mosRedirect( $mosConfig_live_site .'/index.php?option=cookiecheck&return=' . urlencode( $return ) ); } } else { // If a sessioncookie exists, redirect to the start page. Otherwise, take an extra round for a cookiecheck if (isset( $_COOKIE[mosMainFrame::sessionCookieName()] )) { mosRedirect( $mosConfig_live_site .'/index.php' ); } else { mosRedirect( $mosConfig_live_site .'/index.php?option=cookiecheck&return=' . urlencode( $mosConfig_live_site .'/index.php' ) ); } } } else if ($option == 'logout') { $mainframe->logout(); // JS Popup message if ( $message ) { ?> <script language="javascript" type="text/javascript"> <!--// alert( "<?php echo addslashes( _LOGOUT_SUCCESS ); ?>" ); //--> </script> <?php } if ( $return && !( strpos( $return, 'com_registration' ) || strpos( $return, 'com_login' ) ) ) { // checks for the presence of a return url // and ensures that this url is not the registration or logout pages mosRedirect( $return ); } else { mosRedirect( $mosConfig_live_site.'/index.php' ); } } else if ($option == 'cookiecheck') { // No cookie was set upon login. If it is set now, redirect to the given page. Otherwise, show error message. if (isset( $_COOKIE[mosMainFrame::sessionCookieName()] )) { mosRedirect( $return ); } else { mosErrorAlert( _ALERT_ENABLED );

Page 93: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

} } // detect first visit $mainframe->detect(); // set for overlib check $mainframe->set( 'loadOverlib', false ); $gid = intval( $my->gid ); // gets template for page $cur_template = $mainframe->getTemplate(); /** temp fix - this feature is currently disabled */ /** @global A places to store information from processing of the component */ $_MOS_OPTION = array(); // precapture the output of the component require_once( $mosConfig_absolute_path . '/editor/editor.php' ); ob_start(); if ($path = $mainframe->getPath( 'front' )) { $task = strval( mosGetParam( $_REQUEST, 'task', '' ) ); $ret = mosMenuCheck( $Itemid, $option, $task, $gid ); if ($ret) { require_once( $path ); } else { mosNotAuth(); } } else { header( 'HTTP/1.0 404 Not Found' ); echo _NOT_EXIST; } $_MOS_OPTION['buffer'] = ob_get_contents(); ob_end_clean(); initGzip(); header( 'Expires: Mon, 26 Jul 1997 05:00:00 GMT' ); header( 'Last-Modified: ' . gmdate( 'D, d M Y H:i:s' ) . ' GMT' ); header( 'Cache-Control: no-store, no-cache, must-revalidate' ); header( 'Cache-Control: post-check=0, pre-check=0', false ); header( 'Pragma: no-cache' ); // display the offline alert if an admin is logged in if (defined( '_ADMIN_OFFLINE' )) { include( $mosConfig_absolute_path .'/offlinebar.php' ); } // loads template file if ( !file_exists( $mosConfig_absolute_path .'/templates/'. $cur_template .'/index.php' ) ) { echo _TEMPLATE_WARN . $cur_template; } else { require_once( $mosConfig_absolute_path .'/templates/'. $cur_template .'/index.php' ); echo '<!-- '. time() .' -->'; } // displays queries performed for page if ($mosConfig_debug) { echo $database->_ticker . ' queries executed'; echo '<pre>'; foreach ($database->_log as $k=>$sql) { echo $k+1 . "\n" . $sql . '<hr />';

Page 94: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

} echo '</pre>'; } doGzip(); ?> login.php <?php // no direct access defined( '_VALID_MOS' ) or die( 'Restricted access' ); // load the html drawing class require_once( $mainframe->getPath( 'front_html' ) ); global $database, $my, $mainframe; global $mosConfig_live_site, $mosConfig_frontend_login, $mosConfig_db; if ( $mosConfig_frontend_login != NULL && ($mosConfig_frontend_login === 0 || $mosConfig_frontend_login === '0')) { header( "HTTP/1.0 403 Forbidden" ); echo _NOT_AUTH; return; } $menu = $mainframe->get( 'menu' ); $params = new mosParameters( $menu->params ); $params->def( 'page_title', 1 ); $params->def( 'header_login', $menu->name ); $params->def( 'header_logout', $menu->name ); $params->def( 'pageclass_sfx', '' ); $params->def( 'back_button', $mainframe->getCfg( 'back_button' ) ); $params->def( 'login', $mosConfig_live_site ); $params->def( 'logout', $mosConfig_live_site ); $params->def( 'login_message', 0 ); $params->def( 'logout_message', 0 ); $params->def( 'description_login', 1 ); $params->def( 'description_logout', 1 ); $params->def( 'description_login_text', _LOGIN_DESCRIPTION ); $params->def( 'description_logout_text', _LOGOUT_DESCRIPTION ); $params->def( 'image_login', 'key.jpg' ); $params->def( 'image_logout', 'key.jpg' ); $params->def( 'image_login_align', 'right' ); $params->def( 'image_logout_align', 'right' ); $params->def( 'registration', $mainframe->getCfg( 'allowUserRegistration' ) ); $image_login = ''; $image_logout = ''; if ( $params->get( 'image_login' ) != -1 ) { $image = $mosConfig_live_site .'/images/stories/'. $params->get( 'image_login' ); $image_login = '<img src="'. $image .'" align="'. $params->get( 'image_login_align' ) .'" hspace="10" alt="" />'; } if ( $params->get( 'image_logout' ) != -1 ) { $image = $mosConfig_live_site .'/images/stories/'. $params->get( 'image_logout' ); $image_logout = '<img src="'. $image .'" align="'. $params->get( 'image_logout_align' ) .'" hspace="10" alt="" />'; } if ( $my->id ) { loginHTML::logoutpage( $params, $image_logout ); } else { loginHTML::loginpage( $params, $image_login ); }

Page 95: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

?>

regristation.php <?php // no direct access defined( '_VALID_MOS' ) or die( 'Restricted access' ); global $mosConfig_frontend_login; require_once( $mainframe->getPath( 'front_html' ) ); if ( $mosConfig_frontend_login != NULL && ($mosConfig_frontend_login === 0 || $mosConfig_frontend_login === '0')) { echo _NOT_AUTH; return; } switch( $task ) { case 'lostPassword': lostPassForm( $option ); break; case 'sendNewPass': sendNewPass( $option ); break; case 'register': registerForm( $option, $mosConfig_useractivation ); break; case 'saveRegistration': saveRegistration(); break; case 'activate': activate( $option ); break; } function lostPassForm( $option ) { global $mainframe; $mainframe->SetPageTitle(_PROMPT_PASSWORD); HTML_registration::lostPassForm($option); } function sendNewPass( $option ) { global $database; global $mosConfig_live_site, $mosConfig_sitename; global $mosConfig_mailfrom, $mosConfig_fromname; // simple spoof check security josSpoofCheck(); $_live_site = $mosConfig_live_site; $_sitename = $mosConfig_sitename; $checkusername = stripslashes( mosGetParam( $_POST, 'checkusername', '' ) ); $confirmEmail = stripslashes( mosGetParam( $_POST, 'confirmEmail', '') ); $query = "SELECT id" . "\n FROM #__users" . "\n WHERE username = " . $database->Quote( $checkusername ) . "\n AND email = " . $database->Quote( $confirmEmail ) ;

Page 96: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

$database->setQuery( $query ); if (!($user_id = $database->loadResult()) || !$checkusername || !$confirmEmail) { mosRedirect( "index.php?option=$option&task=lostPassword&mosmsg="._ERROR_PASS ); } $newpass = mosMakePassword(); $message = _NEWPASS_MSG; eval ("\$message = \"$message\";"); $subject = _NEWPASS_SUB; eval ("\$subject = \"$subject\";"); mosMail($mosConfig_mailfrom, $mosConfig_fromname, $confirmEmail, $subject, $message); $salt = mosMakePassword(16); $crypt = md5($newpass.$salt); $newpass = $crypt.':'.$salt; $sql = "UPDATE #__users" . "\n SET password = " . $database->Quote( $newpass ) . "\n WHERE id = " . (int) $user_id ; $database->setQuery( $sql ); if (!$database->query()) { die("SQL error" . $database->stderr(true)); } mosRedirect( 'index.php?option=com_registration&mosmsg='. _NEWPASS_SENT ); } function registerForm( $option, $useractivation ) { global $mainframe; if (!$mainframe->getCfg( 'allowUserRegistration' )) { mosNotAuth(); return; } $mainframe->SetPageTitle(_REGISTER_TITLE); HTML_registration::registerForm($option, $useractivation); } function saveRegistration() { global $database, $acl; global $mosConfig_sitename, $mosConfig_live_site, $mosConfig_useractivation, $mosConfig_allowUserRegistration; global $mosConfig_mailfrom, $mosConfig_fromname, $mosConfig_mailfrom, $mosConfig_fromname; if ( $mosConfig_allowUserRegistration == 0 ) { mosNotAuth(); return; } // simple spoof check security josSpoofCheck(); $row = new mosUser( $database ); if (!$row->bind( $_POST, 'usertype' )) { mosErrorAlert( $row->getError() ); } $row->name = trim( $row->name ); $row->email = trim( $row->email ); $row->username = trim( $row->username ); $row->password = trim( $row->password );

Page 97: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

mosMakeHtmlSafe($row); $row->id = 0; $row->usertype = ''; $row->gid = $acl->get_group_id( 'Registered', 'ARO' ); if ( $mosConfig_useractivation == 1 ) { $row->activation = md5( mosMakePassword() ); $row->block = '1'; } if (!$row->check()) { echo "<script> alert('".html_entity_decode($row->getError())."'); window.history.go(-1); </script>\n"; exit(); } $pwd = $row->password; $salt = mosMakePassword(16); $crypt = md5($row->password.$salt); $row->password = $crypt.':'.$salt; $row->registerDate = date( 'Y-m-d H:i:s' ); if (!$row->store()) { echo "<script> alert('".html_entity_decode($row->getError())."'); window.history.go(-1); </script>\n"; exit(); } $row->checkin(); $name = trim($row->name); $email = trim($row->email); $username = trim($row->username); $subject = sprintf (_SEND_SUB, $name, $mosConfig_sitename); $subject = html_entity_decode($subject, ENT_QUOTES); if ($mosConfig_useractivation == 1){ $message = sprintf (_USEND_MSG_ACTIVATE, $name, $mosConfig_sitename, $mosConfig_live_site."/index.php?option=com_registration&task=activate&activation=".$row->activation, $mosConfig_live_site, $username, $pwd); } else { $message = sprintf (_USEND_MSG, $name, $mosConfig_sitename, $mosConfig_live_site); } $message = html_entity_decode($message, ENT_QUOTES); // check if Global Config `mailfrom` and `fromname` values exist if ($mosConfig_mailfrom != '' && $mosConfig_fromname != '') { $adminName2 = $mosConfig_fromname; $adminEmail2 = $mosConfig_mailfrom; } else { // use email address and name of first superadmin for use in email sent to user $query = "SELECT name, email" . "\n FROM #__users" . "\n WHERE LOWER( usertype ) = 'superadministrator'" . "\n OR LOWER( usertype ) = 'super administrator'" ; $database->setQuery( $query ); $rows = $database->loadObjectList(); $row2 = $rows[0]; $adminName2 = $row2->name; $adminEmail2 = $row2->email;

Page 98: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

} // Send email to user mosMail($adminEmail2, $adminName2, $email, $subject, $message); // Send notification to all administrators $subject2 = sprintf (_SEND_SUB, $name, $mosConfig_sitename); $message2 = sprintf (_ASEND_MSG, $adminName2, $mosConfig_sitename, $row->name, $email, $username); $subject2 = html_entity_decode($subject2, ENT_QUOTES); $message2 = html_entity_decode($message2, ENT_QUOTES); // get email addresses of all admins and superadmins set to recieve system emails $query = "SELECT email, sendEmail" . "\n FROM #__users" . "\n WHERE ( gid = 24 OR gid = 25 )" . "\n AND sendEmail = 1" . "\n AND block = 0" ; $database->setQuery( $query ); $admins = $database->loadObjectList(); foreach ( $admins as $admin ) { // send email to admin & super admin set to recieve system emails mosMail($adminEmail2, $adminName2, $admin->email, $subject2, $message2); } if ( $mosConfig_useractivation == 1 ){ echo _REG_COMPLETE_ACTIVATE; } else { echo _REG_COMPLETE; } } function activate( $option ) { global $database, $my; global $mosConfig_useractivation, $mosConfig_allowUserRegistration; if($my->id) { // They're already logged in, so redirect them to the home page mosRedirect( 'index.php' ); } if ($mosConfig_allowUserRegistration == '0' || $mosConfig_useractivation == '0') { mosNotAuth(); return; } $activation = stripslashes( mosGetParam( $_REQUEST, 'activation', '' ) ); if (empty( $activation )) { echo _REG_ACTIVATE_NOT_FOUND; return; } $query = "SELECT id" . "\n FROM #__users" . "\n WHERE activation = " . $database->Quote( $activation ) . "\n AND block = 1" ; $database->setQuery( $query ); $result = $database->loadResult(); if ($result) { $query = "UPDATE #__users" . "\n SET block = 0, activation = ''"

Page 99: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

. "\n WHERE activation = " . $database->Quote( $activation ) . "\n AND block = 1" ; $database->setQuery( $query ); if (!$database->query()) { if(!defined(_REG_ACTIVATE_FAILURE)) { DEFINE('_REG_ACTIVATE_FAILURE', '<div class="componentheading">Activation Failed!</div><br />The system was unable to activate your account, please contact the site administrator.'); } echo _REG_ACTIVATE_FAILURE; } else { echo _REG_ACTIVATE_COMPLETE; } } else { echo _REG_ACTIVATE_NOT_FOUND; } } ?> virtuemart.php <?php defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' ); global $mosConfig_absolute_path, $product_id, $vmInputFilter; /* Load the virtuemart main parse code */ require_once( $mosConfig_absolute_path.'/components/'.$option.'/virtuemart_parser.php' ); include( $mosConfig_absolute_path.'/administrator/components/'.$option.'/compat.joomla1.5.php'); $my_page= explode ( '.', $page ); $modulename = $my_page[0]; $pagename = $my_page[1]; /* Page Navigation Parameters */ $mainframe->_userstate =& $_SESSION['session_userstate']; $limit = intval( $mainframe->getUserStateFromRequest( "viewlistlimit", 'limit', $mosConfig_list_limit ) ); $limitstart = intval( $mainframe->getUserStateFromRequest( "view{$keyword}{$category_id}limitstart", 'limitstart', 0 )) ; /* Get all the other paramters */ $manufacturer_id = intval( mosGetParam( $_REQUEST, 'manufacturer_id', null ) ); $search_category= intval( mosGetParam( $_REQUEST, 'search_category', null ) ); $product_type_id = intval( mosgetparam($_REQUEST, 'product_type_id', null) ); if( PSHOP_IS_OFFLINE == "1" ) { echo PSHOP_OFFLINE_MESSAGE; } else { // The Vendor ID is important $ps_vendor_id = $_SESSION['ps_vendor_id']; // The authentication array $auth = $_SESSION['auth']; $no_menu = mosGetParam( $_REQUEST, 'no_menu', 0 ); // Timer Start if ( DEBUG == "1" ) { $start = utime(); $GLOBALS["mosConfig_debug"] = 1;

Page 100: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

} // update the cart because something could have // changed while running a function $cart = $_SESSION["cart"]; if (( !$pagePermissionsOK || !$funcParams ) && $_REQUEST['page'] != 'checkout.index') { if( !$pagePermissionsOK && defined('_VM_PAGE_NOT_AUTH') ) { $page = 'checkout.login_form'; echo '<br/><br/>'._DO_LOGIN.'<br/><br/>'; } elseif( !$pagePermissionsOK && defined('_VM_PAGE_NOT_FOUND') ) { $page = HOMEPAGE; } else { $page = $_SESSION['last_page']; } } $my_page= explode ( '.', $page ); $modulename = $my_page[0]; $pagename = $my_page[1]; // For there's no errorpage to display the error, // we must echo it before the page is loaded if (!empty($error) && $page != ERRORPAGE) { echo "<span class=\"shop_error\">".$error."</span>"; } /***************************** ** FRONTEND ADMIN - MOD **/ $pshop_mode = mosgetparam($_REQUEST, 'pshop_mode', ""); if (($pshop_mode == "admin" || stristr($page,"form") || stristr($page, "list") || stristr($page, "cfg") || stristr($page, "print") || stristr($page, "display")) && ($perm->check("admin,storeadmin") && ((!stristr($my->usertype, "admin") ^ PSHOP_ALLOW_FRONTENDADMIN_FOR_NOBACKENDERS == '' ) || stristr($my->usertype, "admin") ) && !stristr($page, "shop.") ) && $no_menu != "1" ) { define( '_FRONTEND_ADMIN_LOADED', '1' ); $mainframe->loadEditor = 1; if( file_exists( $mosConfig_absolute_path."/editor/editor.php" )) { require_once( $mosConfig_absolute_path."/editor/editor.php" ); initEditor(); } $editor1_array = Array('product.product_form' => 'product_desc', 'product.product_category_form' => 'category_description', 'store.store_form' => 'vendor_store_desc', 'vendor.vendor_form' => 'vendor_store_desc'); $editor2_array = Array('store.store_form' => 'vendor_terms_of_service', 'vendor.vendor_form' => 'vendor_terms_of_service'); editorScript(isset($editor1_array[$page]) ? $editor1_array[$page] : '', isset($editor2_array[$page]) ? $editor2_array[$page] : ''); ?>

Page 101: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

<link type="text/css" rel="stylesheet" media="screen, projection" href="components/<?php echo $option ?>/css/admin.css" /> <script type="text/javascript" src="<?php echo $mosConfig_live_site ?>/components/<?php echo $option ?>/js/functions.js"></script> <?php // The admin header with dropdown menu include( ADMINPATH."header.php" ); include( ADMINPATH."toolbar.virtuemart.php" ); echo '<br style="clear:both;" />'; } /** ** END: FRONTEND ADMIN - MOD *****************************/ /***************************** ** BEGIN affiliate additions ** by nhyde <[email protected]> for virtuemart v0.6.1 */ if (AFFILIATE_ENABLE == '1') { $unset_affiliate = false; if (!isset($ps_affiliate)) { include_class ( 'affiliate' ); $unset_affiliate = true; } //keep tracking the affiliate if(isset($_SESSION['afid'])){ $ps_affiliate->visit_update(); } //register the affiliated visit but only if the // aid is in our database and it is active. else{ //set the affiliate_id = 0 to log any visitors that are not affiliate visitors $aff_details = $ps_affiliate->get_affiliate_details($auth['user_id']); $affiliate_id = $aff_details['id']; //the logout function may have wiped out the session so search the database //and re-register it. $q = "SELECT visit_id FROM #__{vm}_visit WHERE visit_id = '".session_id()."'"; $db->query($q); if($db->next_record()){ $ps_affiliate->visit_update(); } else { $ps_affiliate->visit_register(); } } if (isset($affiliate_id)) { $_SESSION['afid'] = $affiliate_id; $GLOBALS['afid'] = $affiliate_id; } } /** * END added for affiliate module ****************************/ // Here is the most important part of the whole Shop: // LOADING the requested page for displaying it to the customer.

Page 102: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

// I have wrapped it with a function, because it becomes // cacheable that way. // It's just an "include" statement which loads the page $vmDoCaching = ($page=="shop.browse" || $page=="shop.product_details") && class_exists("mosCache") && (empty($keyword) && empty($keyword1) && empty($keyword2)); if( !function_exists( "load_that_shop_page" )) { function load_that_shop_page( $modulename, $pagename) { global $my, $db, $perm, $ps_function, $ps_module, $ps_html, $ps_vendor_id, $page, $database,$mosConfig_absolute_path, $cart, $start, $option, $vmLogger, $vmDoCaching, $product_id,$VM_LANG, $PHPSHOP_LANG, $sess,$vendor_image,$vendor_country_2_code, $vendor_country_3_code , $vendor_image_url, $PSHOP_SHIPPING_MODULES, $_VERSION, $vendor_name, $vendor_address, $vendor_city,$vendor_country,$vendor_mail, $category_id, $mainframe, $mosConfig_list_limit, $limitstart, $limit, $vendor_store_name, $vendor_state, $vendor_zip, $vendor_phone, $vendor_currency, $vendor_store_desc, $vendor_freeshipping, $ps_shipping, $ps_order_status, $module_description, $vendor_currency_display_style, $vendor_full_image, $mosConfig_live_site, $vendor_id, $CURRENCY_DISPLAY, $keyword, $mm_action_url, $ps_payment_method,$ps_zone,$ps_product, $ps_product_category, $ps_order, $sess, $page, $func, $pagename, $modulename, $vars, $cmd, $ok, $mosConfig_lang, $mosConfig_useractivation, $auth, $ps_checkout,$error, $error_type, $func_perms, $func_list, $func_class, $func_method, $func_list, $dir_list, $mosConfig_allowUserRegistration, $mosConfig_caching; if( !stristr( $_SERVER['PHP_SELF'], "index2.php") ) { $mainframe->addCustomHeadTag( "<script type=\"text/javascript\" src=\"$mosConfig_live_site/components/$option/js/sleight.js\"></script> <link type=\"text/css\" rel=\"stylesheet\" media=\"screen, projection\" href=\"$mosConfig_live_site/components/$option/css/shop.css\" />" ); } else { ?> <script type="text/javascript" src="<?php echo "$mosConfig_live_site/components/$option" ?>/js/sleight.js"></script> <link type="text/css" rel="stylesheet" media="screen, projection" href="components/<?php echo $option ?>/css/shop.css" /> <?php } // Show the PDF Button? if( PSHOP_PDF_BUTTON_ENABLE=='1' && !isset($_REQUEST['output']) && ($page=="shop.browse" || $page=="shop.product_details")) { echo "<table align=\"right\"><tr><td><a title=\"PDF\" target=\"_blank\" href=\"index2.php?option=$option&page=shop.pdf_output&amp;showpage=$page&amp;pop=1&amp;output=pdf&amp;product_id=$product_id&amp;category_id=$category_id&amp;Itemid=".$sess->getShopItemid()."\"> <img src=\"".IMAGEURL."ps_image/acroread.png\" alt=\"PDF\" height=\"32\" width=\"32\" border=\"0\" /></a></td></tr></table>"; } // Load requested PAGE if( file_exists( PAGEPATH.$modulename.".".$pagename.".php" )) { include( PAGEPATH.$modulename.".".$pagename.".php" ); } elseif( file_exists( PAGEPATH . HOMEPAGE.'.php' )) { include( PAGEPATH . HOMEPAGE.'.php' ); } else { include( PAGEPATH.'shop.index.php'); } if ( !empty($mosConfig_caching) && $vmDoCaching) {

Page 103: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

echo '<span class="small">'._LAST_UPDATED.': '.strftime( $VM_LANG->_DATE_FORMAT_LC2 ).'</span>'; } if (SHOWVERSION) { include(PAGEPATH ."footer.php"); } // Set debug option on/off if (DEBUG) { $end = utime(); $runtime = $end - $start; include( PAGEPATH . "shop.debug.php" ); } return $mainframe; } } // Caching is a sensible thing. We may cache only those pages // that look the same again and again // Currently this are two pages: shop.browse, shop.product_details // when no keyword is submitted! if ( !empty($mosConfig_caching) && $vmDoCaching) { // Get the Cache_Lite_Function object $cache =& mosCache::getCache( 'com_content' ); // The function we let call remotely here has only two arguments: the Modulename(shop) and the Pagename(browse or product_details), // But Cache_Lite takes the arguments for identifying common calls to cacheable functions. // The Page will change with every different parameter / argument, so provide this for identification // "call" will call the function load_that_shop_page when it is not yet cached with exactly THESE parameters // or the caching time range has expired $return = $cache->call('load_that_shop_page', $modulename, $pagename, $product_id, $category_id, $manufacturer_id, $auth["shopper_group_id"], $limitstart, $limit, @$_REQUEST['orderby'], @$_REQUEST['DescOrderBy'] ); if( get_class( $return ) == "mosMainFrame" ) { $mainframe = $return; } } else { load_that_shop_page( $modulename, $pagename); } } if( defined( 'vmToolTipCalled')) { echo '<script language="Javascript" type="text/javascript" src="'. $mosConfig_live_site.'/components/'.$option.'/js/wz_tooltip.js"></script>'; } ?> virtuemart_parser.php <?php defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' ); global $my, $db, $perm, $ps_function, $ps_module, $ps_html, $ps_vendor_id, $vendor_image,$vendor_image_url, $keyword, $ps_payment_method,$ps_zone,$sess, $page, $func, $pagename, $modulename, $vars, $VM_LANG, $cmd, $ok, $mosConfig_lang, $auth, $ps_checkout,$error, $error_type, $func_perms, $func_list, $func_class, $func_method, $func_list, $dir_list, $vendor_currency_display_style, $vendor_freeshipping, $mm_action_url, $limit, $limitstart, $mainframe; // Raise memory_limit to 16M when it is too low // Especially the product section needs much memory

Page 104: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

$memLimit = @ini_get('memory_limit'); i f( stristr( $memLimit, 'k') ) { $memLimit = str_replace( 'k', '', str_replace( 'K', '', $memLimit )) * 1024; } elseif( stristr( $memLimit, 'm') ) { $memLimit = str_replace( 'm', '', str_replace( 'M', '', $memLimit )) * 1024 * 1024; } if( $memLimit < 16777216 ) { @ini_set('memory_limit', '16M'); } $option = mosGetParam( $_REQUEST, 'option' ); if( !defined( '_VM_PARSER_LOADED' )) { global $my; $_REQUEST['Itemid'] = intval( mosGetParam($_REQUEST, 'Itemid', 0) ); // Filter the PHP_SELF var and clean it $_SERVER['PHP_SELF'] = htmlspecialchars( $_SERVER['PHP_SELF'], ENT_QUOTES ); $page = mosgetparam($_REQUEST, 'page', ""); $func = mosgetparam($_REQUEST, 'func', ""); if( $my->id > 0 ) { // This is necessary to get the real GID $my->load( $my->id ); } if( !file_exists( $mosConfig_absolute_path. "/administrator/components/com_virtuemart/virtuemart.cfg.php" )) { die( "<h3>The configuration file for VirtueMart is missing!</h3>It should be here: <strong>" . $mosConfig_absolute_path. "/administrator/components/com_virtuemart/virtuemart.cfg.php</strong>" ); } // the configuration file for the Shop require_once( $mosConfig_absolute_path. "/administrator/components/com_virtuemart/virtuemart.cfg.php" ); // The abstract language class require_once( CLASSPATH."language.class.php" ); // load the Language File if (file_exists( ADMINPATH. 'languages/'.$mosConfig_lang.'.php' )) require_once( ADMINPATH. 'languages/'.$mosConfig_lang.'.php' ); else require_once( ADMINPATH. 'languages/english.php' ); /** @global vmLanguage $VM_LANG */ $GLOBALS['VM_LANG'] = $GLOBALS['PHPSHOP_LANG'] =& new vmLanguage(); /** @global Array $product_info: Stores Product Information for re-use */ $GLOBALS['product_info'] = Array(); /** @global Array $category_info: Stores Category Information for re-use */ $GLOBALS['category_info'] = Array(); /** @global Array $category_info: Stores Vendor Information for re-use */ $GLOBALS['vendor_info'] = Array(); // load the MAIN CLASSES // CLASSPATH is defined in the config file require_once(CLASSPATH."ps_database.php"); require_once(CLASSPATH."ps_main.php"); require_once(CLASSPATH."ps_cart.php"); require_once(CLASSPATH."ps_html.php"); require_once(CLASSPATH."ps_session.php"); require_once(CLASSPATH."ps_function.php"); require_once(CLASSPATH."ps_module.php");

Page 105: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

require_once(CLASSPATH."ps_perm.php"); require_once(CLASSPATH."ps_shopper_group.php"); require_once(CLASSPATH."vmAbstractObject.class.php"); require_once(CLASSPATH."htmlTools.class.php"); require_once(CLASSPATH."phpInputFilter/class.inputfilter.php"); require_once(CLASSPATH."Log/Log.php"); $vmLoggerConf = array( 'buffering' => true ); /** * This Log Object will help us log messages and errors * See http://pear.php.net/package/Log * @global Log vmLogger */ $vmLogger = &vmLog::singleton('display', '', '', $vmLoggerConf, PEAR_LOG_TIP); $GLOBALS['vmLogger'] =& $vmLogger; // Instantiate the DB class $db = new ps_DB(); // Instantiate the permission class $perm = new ps_perm(); // Instantiate the HTML helper class $ps_html = new ps_html(); // Constructor initializes the session! $sess = new ps_session(); // Initialize the cart $cart = ps_cart::initCart(); // Instantiate the module class $ps_module = new ps_module(); // Instantiate the function class $ps_function = new ps_function(); // Instantiate the ps_shopper_group class $ps_shopper_group = new ps_shopper_group(); // Set the mosConfig_live_site to its' SSL equivalent if( $_SERVER['SERVER_PORT'] == 443 || @$_SERVER['HTTPS'] == 'on' || @strstr( $page, "checkout." )) { // temporary solution until we have // $mosConfig_secure_site $GLOBALS['real_mosConfig_live_site'] = $GLOBALS['mosConfig_live_site']; $GLOBALS['mosConfig_live_site'] = ereg_replace('/$','',SECUREURL); $mm_action_url = SECUREURL; } else { $mm_action_url = URL; } // Enable Mambo Debug Mode when Shop Debug is on if( DEBUG == "1" ) { $GLOBALS['mosConfig_debug'] = 1; $database->_debug = 1; } // Set Mambo's Cookies for the SSL Domain as well // This makes it possible to use Shared SSL $sess->prepare_SSL_Session(); // the global file for PHPShop require_once( ADMINPATH . 'global.php' ); $currency_display = vendor_currency_display_style( $vendor_currency_display_style ); /** load Currency Display Class **/ require_once( CLASSPATH.'class_currency_display.php' );

Page 106: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

/** @global CurrencyDisplay $CURRENCY_DISPLAY */ $GLOBALS['CURRENCY_DISPLAY'] =& new CurrencyDisplay($currency_display["id"], $currency_display["symbol"], $currency_display["nbdecimal"], $currency_display["sdecimal"], $currency_display["thousands"], $currency_display["positive"], $currency_display["negative"]); // Get default and this users's Shopper Group $shopper_group = $ps_shopper_group->get_shoppergroup_by_id( $my->id ); // User authentication $auth = $perm->doAuthentication( $shopper_group ); if( $option == "com_virtuemart" ) { // Get sure that we have float values with a decimal point! @setlocale( LC_NUMERIC, 'en_US', 'en' ); // some input validation for limitstart if (!empty($_REQUEST['limitstart'])) { $_REQUEST['limitstart'] = intval( $_REQUEST['limitstart'] ); } $mosConfig_list_limit = isset( $mosConfig_list_limit ) ? $mosConfig_list_limit : SEARCH_ROWS; $keyword = substr( urldecode(mosgetparam($_REQUEST, 'keyword', '')), 0, 50 ); unset( $_REQUEST["error"] ); // Cast all the following fields to INT $parseToIntFields = array('user_id','product_id','category_id','manufacturer_id','id','cid','vendor_id','country_id','currency_id', 'order_id','module_id','function_id','payment_method_id','coupon_id','product_type_id') ; foreach( $parseToIntFields as $intField ) { if( !empty($_REQUEST[$intField]) && is_array($_REQUEST[$intField]) ) { mosArrayToInts( $_REQUEST[$intField]); } else { $_REQUEST[$intField] = $$intField = intval( mosgetparam($_REQUEST, $intField, 0) ); } } $_SESSION['session_userstate']['product_id'] = $product_id = $_REQUEST['product_id']; $_SESSION['session_userstate']['category_id'] = $category_id = $_REQUEST['category_id']; $user_info_id = mosgetparam($_REQUEST, 'user_info_id' ); $myInsecureArray = array('keyword' => $keyword, 'user_info_id' => $user_info_id, 'page' => $page, 'func' => $func ); /** * This InputFiler Object will help us filter malicious variable contents * @global vmInputFiler vmInputFiler */ $GLOBALS['vmInputFilter'] = $vmInputFilter = new vmInputFilter(); // prevent SQL injection if( $perm->check('admin,storeadmin') ) { $myInsecureArray = $vmInputFilter->safeSQL( $myInsecureArray );

Page 107: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

$myInsecureArray = $vmInputFilter->process( $myInsecureArray ) ; // Re-insert the escaped strings into $_REQUEST foreach( $myInsecureArray as $requestvar => $requestval) { $_REQUEST[$requestvar] = $requestval; } } else { // Strip all tags from all input values $_REQUEST = $vmInputFilter->process( $_REQUEST ); $_REQUEST = $vmInputFilter->safeSQL( $_REQUEST ); } // Limit the keyword (=search string) length to 50 $_SESSION['session_userstate']['keyword'] = $keyword = substr(mosgetparam($_REQUEST, 'keyword', ''), 0, 50); $vars = $_REQUEST; // Check if we have to run a Shop Function // and if the user is allowed to execute it $funcParams = $ps_function->checkFuncPermissions( $func ); /********************************************** ** Get Page/Directory Permissions ** Displays error if directory is not registered, ** user has no permission to view it , or file doesn't exist ************************************************/ if (empty($page)) {// default page if (defined('_PSHOP_ADMIN')) { $page = "store.index"; } else { $page = HOMEPAGE; } } // Let's check if the user is allowed to view the page // if not, $page is set to ERROR_PAGE $pagePermissionsOK = $ps_module->checkModulePermissions( $page ); $ok = true; if ( !empty( $funcParams["method"] ) ) { // Get the function parameters: function name and class name $q = "SELECT #__{vm}_module.module_name,#__{vm}_function.function_class"; $q .= " FROM #__{vm}_module,#__{vm}_function WHERE "; $q .= "#__{vm}_module.module_id=#__{vm}_function.module_id AND "; $q .= "#__{vm}_function.function_method='".$funcParams["method"]."' AND "; $q .= "#__{vm}_function.function_class='".$funcParams["class"]."'"; $db->query($q); $db->next_record(); $class = $db->f('function_class'); if( file_exists( CLASSPATH."$class.php" ) ) { // Load class definition file require_once( CLASSPATH.$db->f("function_class").".php" ); $classname = str_replace( '.class', '', $funcParams["class"]); // create an object $string = "\$$classname = new $classname;"; eval( $string ); // RUN THE FUNCTION // $ok = $class->function( $vars ); $cmd = "\$ok = \$".$classname."->" . $funcParams["method"] . "(\$vars);"; eval( $cmd );

Page 108: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media

if ($ok == false) { $no_last = 1; if( $_SESSION['last_page'] != HOMEPAGE ) { $page = $_SESSION['last_page']; } $my_page= explode ( '.', $page ); $modulename = $my_page[0]; $pagename = $my_page[1]; $_REQUEST['keyword']= $_SESSION['session_userstate']['keyword']; $_REQUEST['category_id']= $_SESSION['session_userstate']['category_id']; $_REQUEST['product_id']=$product_id = $_SESSION['session_userstate']['product_id']; } } else { $vmLogger->debug( "Could not include the class file $class" ); } if (!empty($vars["error"])) { $error = $vars["error"]; } if (!empty($error)) { echo vmCommonHTML::getErrorField($error); } } else { $no_last = 0; //$error=""; } if ($ok == true && empty($error) && !defined('_DONT_VIEW_PAGE')) { $_SESSION['last_page'] = $page; } } // I don't get it, why Joomla uses masked gid values! if( !defined( '_PSHOP_ADMIN' )) { if( class_exists('jfactory')) { $my =& JFactory::getUser(); } else { $my = $mainframe->getUser(); } if( isset( $my->_table )) { $my = $my->_table; } } // the Log object holds all error messages // here we flush the buffer and print out all messages $vmLogger->printLog(); // Now we can switch to implicit flushing $vmLogger->_buffering = false; define( '_VM_PARSER_LOADED', 1 ); } ?>

Page 109: APLIKASI PEMESANAN SPARE PART MOTOR BERBASIS WEB · Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media