PERANCANGAN APLIKASI PENJUALAN HASIL PERKEBUNAN
SECARA ONLINE DENGAN MENGGUNAKAN PHP dan MySQL
SKRIPSI
KIKI RAHMAYANI HARAHAP
021401017
PROGRAM STUDI S-1 ILMU KOMPUTER
DEPARTEMEN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
PERANCANGAN APLIKASI PENJUALAN HASIL PERKEBUNAN
SECARA ONLINE DENGAN MENGGUNAKAN PHP dan MySQL
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar
Sarjana Komputer
KIKI RAHMAYANI HARAHAP
021401017
PROGRAM STUDI S-1 ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA
PERSETUJUAN
Judul : PERANCANGAN APLIKASI PERKEBUNAN SECARA ONLINE DENGAN MENGGUNAKAN PHP dan MySQL
Kategori : SKRIPSI
Nama : KIKI RAHMAYANI HARAHAP
Nomor Induk Mahasiswa : 021401017
Program Studi : S-1 ILMU KOMPUTER
Departemen : ILMU KOMPUTER
Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN ALAM
(FMIPA) UNIVERSITAS SUMATERA UTARA
Diluluskan di Medan, Juni 2008
Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
Drs. Dahlan Sitompul, M.Eng Drs. James Piter Marbun, M.Kom
NIP 132 316 481 NIP 131 639 804
Diketahui/Disetujui oleh
Departemen Ilmu Komputer FMIPA USU Ketua,
PERNYATAAN
PERANCANGAN APLIKASI PENJUALAN HASIL PERKEBUNAN SECARA ONLINE DENGAN MENGGUNAKAN PHP dan MySQL
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing masing disebutkan sumbernya.
Medan, Juni 2008
PENGHARGAAN
Puji dan syukur penulis panjatkan ke hadirat Allah SWT, atas berkat, rahmat dan karunia yang diberikan-Nya kepada penulis, sehingga penulis dapat menyelesaikan tugas akhir ini.
ABSTRAK
SELLING APPLICATION DESIGN OF PLANTATION PRODUCT IN ONLINE
WAY BY USING PHP and MySQL
ABSTRACT
DAFTAR ISI
Halaman
Persetujuan ii
Pernyataan iii
Penghargaan iv
Abstrak v
1.2 Identifikasi Masalah 2
1.3 Maksud dan Tujuan 2
1.4 Batasan Masalah 2
1.5 Metodologi Penelitian 3
1.6 Sistematika Penulisan 3
BAB 2 LANDASAN TEORI
2.3.5.1 Bagan Alir Sistem (Flowchart) 15
2.3.5.2 Bagan Alir Dokumen 15
2.3.5.3 Bagan Alir Skematik 17
2.3.5.4 Bagan Alir Program 17
2.3.5.5 Bagan Alir Proses 17
2.4 Pengenalan Pemrograman PHP 18
2.5 Fungsi-Fungsi dalam Pemrogramanan PHP 19
2.7 Tipe Data dalam Pemrogramanan PHP 21
2.8 Operator dalam Pemrogramanan PHP 21
2.9 Pengenalan Data Base MySQL 24
3.2.2 Diagaram Konteks (Context Diagram) 26
3.2.3 Perancangan Susunan Diagram Tampil 28
3.2.3.1 Perancangan Diagram Tampil Administator 28
Pada Antarmuka Pembeli 41
3.3 Algoritma 42
3.3.1 Algoritma Home Administrator 42
3.3.2 Algoritma Login Administrator 42
3.3.3 Algoritma Data Kategori 43
3.3.4 Algoritma Data Produk 43
3.3.5 Algoritma Data Order 44
3.3.6 Algoritma Data Pembelian 46
BAB 4 IMPLEMENTASI PERANGKAT LUNAK
4.1 Batasan Implementasi 48
4.2 Implementasi Program 48
4.2.1 Aplikasi Administrator 49
4.2.1.1 Halaman Home 49
4.2.1.3 Halaman Tambah Kategori 50 4.2.1.4 Halaman Produk pada Administrator 51 4.2.1.5 Halaman Tambah Produk 52
4.2.1.6 Halaman Order 53
4.2.1.7 Halaman User pada Administrator 55
4.2.2 Aplikasi Antarmuka Pembeli 57
4.2.2.1 Halaman Utama 57
4.2.2.2 Halaman Produk-Produk pada Kategori 58
4.2.2.3 Halaman Pembelian 59
4.2.2.4 Halaman Penutup 65
4.2.3 Prosedur Program 66
4.2.3.1 Prosedur Program untuk
menampilkan Kategori 66
4.2.3.1 Prosedur untuk Tambah Kategori 68
BAB 5 PENUTUP
5.1 Kesimpulan 70
5.2 Saran 70
DAFTAR PUSTAKA 71
LAMPIRAN A Listing Program 73
LAMPIRAN B Flowchart Modul Administrator 98
DAFTAR GAMBAR
Halaman
Gambar 2.1 Struktur basis data 10
Gambar 2.2 Simbol Data Store 13
Gambar 2.3 Simbol Alur Data 14
Gambar 2.4 Simbol-Simbol di Bagan Alir Proses 18
Gambar 3.1 Bagan Berjenjang Aplikasi Online 27
Gambar 3.2 Diagram Konteks Aplikasi Penjualan Secara Online 27 Gambar 3.3 Diagram Tampil untuk Antarmuka Administrator 28
Gambar 3.4 Diagram Tampil pada Antarmuka Pembeli 29
Gambar 3.5 Diagram Arus Data Level 1 30
Gambar 3.6 Diagram Arus Data Level 2 31
Gambar 3.7 Diagram Arus Data Level 3 32
Gambar 3.8 Hubungan Antartabel 33
Gambar 3.9 Hubungan File-File PHP pada Administrator 40 Gambar 3.10 Hubungan File-File PHP pada Antarmuka Pembeli 41
Gambar 4.1 Halaman Utama pada Administrator 49
Gambar 4.2 Halaman Kategori Penjualan pada Administrator 50 Gambar 4.3 Halaman Penambahan Kategori pada Administrator 51 Gambar 4.4 Halaman Produk dari Kategori pada Administrator 52
Gambar 4.5 Halaman Tambah Produk 53
Gambar 4.6 Halaman Penyimpanan Data Order pada Administrator 54 Gambar 4.7 Halaman Penjabaran Order pada Administrator 55 Gambar 4.8 Halaman Penyimpanan Data User pada Administrator 56
Gambar 4.9 Halaman Tambah User pada Administrator 57
Gambar 4.10 Halaman Utama Antarmuka Pembeli 58
Gambar 4.11 Halaman Menampilkan Produk dari Salah Satu Kategori 59
Gambar 4.12 Halaman Pembelian pada Antarmuka Pembeli 60
Gambar 4.13 Halaman Pembelian dan Pemesanan 61
Gambar 4.14 Halaman Konfirmasi Pembelian 62
Gambar 4.15 Halaman Formulir Data Pembeli 63
Gambar 4.16 Lanjutan Halaman Formulir Pembeli 64
Gambar 4.17 Halaman Konfirmasi Pesanan dan Data Pembeli 65
DAFTAR TABEL
Halaman
Tabel 2.1 Fungsi dalam PHP 18
Tabel 2.2 Operator Aritmatika 22
Tabel 2.3 Operator Increment/Decrement 22
Tabel 2.4 Operator Perbandingan 23
Tabel 2.5 Tipe Data String 25
Tabel 2.6 Tipe Data Tanggal 25
Tabel 3.1 Struktur Tabel User Administrator 34
Tabel 3.2 Struktur Tabel Shop_config 34
Tabel 3.3 Struktur Tabel Product 35
Tabel 3.4 Struktur Tabel Order_item 36
Tabel 3.5 Struktur Tabel Order 37
Tabel 3.6 Struktur Tabel Currency 38
Tabel 3.7 Struktur Tabel Category 38
DAFTAR ISI
Halaman
Persetujuan ii
Pernyataan iii
Penghargaan iv
Abstrak v
1.2 Identifikasi Masalah 2
1.3 Maksud dan Tujuan 2
1.4 Batasan Masalah 2
1.5 Metodologi Penelitian 3
1.6 Sistematika Penulisan 3
BAB 2 LANDASAN TEORI
2.5 Fungsi-Fungsi dalam Pemrogramanan PHP 19
2.6 Variabel dalam Pemrogramanan PHP 21
2.7 Tipe Data dalam Pemrogramanan PHP 21
2.8 Operator dalam Pemrogramanan PHP 21
2.9 Pengenalan Data Base MySQL 24
BAB 3 PERANCANGAN SISTEM
3.1 Metode Perancangan 26
3.2 Hasil Perancangan 26
3.2.1 Bagan Berjenjang 26
3.2.2 Diagaram Konteks (Context Diagram) 26
3.2.3 Perancangan Susunan Diagram Tampil 28
3.2.3.1 Perancangan Diagram Tampil Administator 28
Pada Antarmuka Pembeli 41
3.3 Algoritma 42
3.3.1 Algoritma Home Administrator 42
3.3.2 Algoritma Login Administrator 42
3.3.3 Algoritma Data Kategori 43
3.3.4 Algoritma Data Produk 43
3.3.5 Algoritma Data Order 44
3.3.6 Algoritma Data Pembelian 46
BAB 4 IMPLEMENTASI PERANGKAT LUNAK
4.1 Batasan Implementasi 48
4.2 Implementasi Program 48
4.2.1 Aplikasi Administrator 49
4.2.1.1 Halaman Home 49
4.2.1.2 Halaman Kategori 50
4.2.1.3 Halaman Tambah Kategori 50
4.2.1.4 Halaman Produk pada Administrator 51
4.2.1.5 Halaman Tambah Produk 52
4.2.1.6 Halaman Order 53
4.2.2 Aplikasi Antarmuka Pembeli 57
4.2.2.1 Halaman Utama 57
4.2.2.2 Halaman Produk-Produk pada Kategori 58
4.2.2.3 Halaman Pembelian 59
4.2.2.4 Halaman Penutup 65
4.2.3 Prosedur Program 66
4.2.3.1 Prosedur Program untuk
menampilkan Kategori 66
4.2.3.1 Prosedur untuk Tambah Kategori 68
BAB 5 PENUTUP
5.1 Kesimpulan 70
5.2 Saran 70
DAFTAR PUSTAKA 71
DAFTAR TABEL
Halaman
Tabel 2.1 Fungsi dalam PHP 18
Tabel 2.2 Operator Aritmatika 22
Tabel 2.3 Operator Increment/Decrement 22
Tabel 2.4 Operator Perbandingan 23
Tabel 2.5 Tipe Data String 25
Tabel 2.6 Tipe Data Tanggal 25
Tabel 3.1 Struktur Tabel User Administrator 34
Tabel 3.2 Struktur Tabel Shop_config 34
Tabel 3.3 Struktur Tabel Product 35
Tabel 3.4 Struktur Tabel Order_item 36
Tabel 3.5 Struktur Tabel Order 37
Tabel 3.6 Struktur Tabel Currency 38
Tabel 3.7 Struktur Tabel Category 38
DAFTAR GAMBAR
Halaman
Gambar 2.1 Struktur basis data 10
Gambar 2.2 Simbol Data Store 13
Gambar 2.3 Simbol Alur Data 14
Gambar 2.4 Simbol-Simbol di Bagan Alir Proses 18
Gambar 3.1 Bagan Berjenjang Aplikasi Online 27
Gambar 3.2 Diagram Konteks Aplikasi Penjualan Secara Online 27 Gambar 3.3 Diagram Tampil untuk Antarmuka Administrator 28
Gambar 3.4 Diagram Tampil pada Antarmuka Pembeli 29
Gambar 3.5 Diagram Arus Data Level 1 30
Gambar 3.6 Diagram Arus Data Level 2 31
Gambar 3.7 Diagram Arus Data Level 3 32
Gambar 3.8 Hubungan Antartabel 33
Gambar 3.9 Hubungan File-File PHP pada Administrator 40 Gambar 3.10 Hubungan File-File PHP pada Antarmuka Pembeli 41
Gambar 4.1 Halaman Utama pada Administrator 49
Gambar 4.2 Halaman Kategori Penjualan pada Administrator 50 Gambar 4.3 Halaman Penambahan Kategori pada Administrator 51 Gambar 4.4 Halaman Produk dari Kategori pada Administrator 52
Gambar 4.5 Halaman Tambah Produk 53
Gambar 4.6 Halaman Penyimpanan Data Order pada Administrator 54 Gambar 4.7 Halaman Penjabaran Order pada Administrator 55 Gambar 4.8 Halaman Penyimpanan Data User pada Administrator 56
Gambar 4.9 Halaman Tambah User pada Administrator 57
Gambar 4.10 Halaman Utama Antarmuka Pembeli 58
Gambar 4.11 Halaman Menampilkan Produk dari Salah Satu Kategori 59
Gambar 4.12 Halaman Pembelian pada Antarmuka Pembeli 60
Gambar 4.13 Halaman Pembelian dan Pemesanan 61
Gambar 4.14 Halaman Konfirmasi Pembelian 62
Gambar 4.15 Halaman Formulir Data Pembeli 63
Gambar 4.16 Lanjutan Halaman Formulir Pembeli 64
Gambar 4.17 Halaman Konfirmasi Pesanan dan Data Pembeli 65
ABSTRAK
SELLING APPLICATION DESIGN OF PLANTATION PRODUCT IN ONLINE WAY BY USING PHP and MySQL
ABSTRACT
BAB 1
PENDAHULUAN
1.1 Latar Belakang
Dalam setiap perusahaan baik skala besar maupun kecil, selalu berupaya agar
pemasaran produk yang dihasilkan perusahaannya dikenal oleh pasar. Berbagai cara
dilakukan marketing agar produk yang akan dipasarkan diminati oleh orang banyak,
mulai dari door to door, selebaran, mass media hingga melalui internet yang sangat
diminati orang sibuk.
Promosi lewat internet juga bervariasi, ada yang hanya dengan kata-kata slogan
yang menumpang ke halaman promosi orang lain, ada berbentuk iklan yang khusus
masuk ke dunia periklanan, ada yang membangun sendiri halaman promosi, bahkan ada
yang membangun halaman promosi sekaligus menjual barang melalui internet.
Promosi barang hingga menjual barang lewat internet sering disebut dengan istilah
“belanja online” yaitu belanja lewat internet, dan membeli barang dengan mengklik
ikon beli dan spesifikasi barang-barang yang sudah tertera. Belanja lewat internet adalah
belanja secara nyata, meskipun tidak ada pertemuan langsung antara produsen
(supplier), penjual dan pembeli.
Halaman jelajah yang digunakan untuk belanja lewat internet tersebut sering
disebut “aplikasi online” atau lebih dikenal dengan istilah “shopping chart” yaitu
mediator yang digunakan dalam transaksi jual beli di dunia maya, melihat barang yang
akan kita beli tanpa menyentuhnya. Bertitik tolak dari hal tersebut diatas, disusunlah
tugas akhir yang membahas tentang perancangan sistem informasi atau aplikasi online
penjualan berbasis web yang berjudul Perancangan Aplikasi Penjualan Hasil
Perkebunan Secara Online dengan Menggunakan PHP dan MySQL.
Aplikasi online pada tugas akhir ini berkisar pada pemasaran hasil tanaman
palawija saja, yang dibangun untuk mendukung dan membantu orang-orang yang
bergerak dibidang pertanian yang menghasilkan tanaman-tanaman palawija, dengan
1.2 Identifikasi Masalah
Adapun permasalahan yang akan dibahas pada penulisan tugas akhir ini adalah :
1. Pengembangan perangkat lunak Aplikasi Jual beli secara online.
Pada permasalahan ini akan dilakukan pembuatan perangkat lunak Aplikasi
Penjualan hasil tanaman palawija secara online dengan menggunakan bahasa
pemrograman PHP dan Database MySQL.
2. Aplikasi penjualan hasil tanaman palawija secara online memverifikasi data
yang masuk sehingga orang yang berbelanja akan merasa nyaman.
1.3 Maksud dan Tujuan Penulisan
Adapun maksud dari penulisan tugas akhir ini adalah membangun Aplikasi Penjualan
hasil tanaman palawija secara online dengan menggunakan Bahasa Pemrograman PHP
dengan Database MySQL.
Adapun tujuan dari penulisan tugas akhir ini adalah:
1. Dengan aplikasi ini, orang dapat berbelanja lewat internet, dan membayar
barang yang dibeli dengan menggunakan nomor rekening bank konsumen,
tanpa harus ada perjumpaan antara pembeli dan penjual.
2. Mempermudah serta memperluas usaha para produsen tanaman palawija
dalam memasarkan hasil pertaniannya.
1.4Batasan Masalah
Untuk lebih memperjelas permasalahan yang akan dibahas, maka permasalahan pada
penulisan tugas akhir ini dibatasi dalam ruang lingkup yaitu:
1. Membuat Aplikasi Berbasis Internet yaitu Aplikasi penjualan hasil tanaman
palawija lewat internet yang dapat diakses oleh khalayak umum.
2. Membangun Aplikasi penjualan tanaman palawija secara online
3. Membangun aplikasi penjualan secara online mengutamakan kenyamanan
pengunjung dengan hak akses yang tidak terbatas.
4. Aplikasi penjualan online yang dibangun dihubungkan dengan database yang
dapat digunakan sebagai pengambilan keputusan tentang keadaan stok
tanaman palawija yang tersedia.
5. Hasil pertanian dalam Aplikasi hanya mencakup hasil tomat, cabai dan
wortel tetapi tanpa tertutup kemungkinan untuk menambah hasil pertanian
lainnya.
1.5Metode Penelitian
Penelitian ini dilakukan dengan beberapa tahapan, yaitu:
1. Observasi
Observasi dilakukan baik secara teoritis ataupun secara praktik melakukan
riset dan penelitian kepada para produsen pertanian.
2. Perancangan Database
Pada tahap ini dibangun database menggunakan MySQL sebagai tempat
penyimpanan data yang dibutuhkan oleh aplikasi online.
3. Perancangan Aplikasi
Pada tahap ini dibuat aplikasi yang menggunakan PHP dan proses
menghubungkannya dengan database MySQL yang telah dibangun lebih
dulu.
4. Implementasi
Pada tahap ini adalah proses diimplementasikannya program yang telah jadi
atau dapat juga disebut proses pengujicobaan program.
1.6Sistematika Penulisan
Agar penulisan menjadi lebih terstruktur, maka penulisan ini dibagi menjadi lima bab
Bab I : PENDAHULUAN
Dalam bab ini dijelaskan mengenai latar belakang pemilihan judul, identifikasi
masalah, tujuan penulisan, batasan masalah, serta sistematika penulisan.
Bab II : LANDASAN TEORI
Dalam bab ini dibahas teori–teori yang merupakan dasar pemecahan masalah
dari ruang lingkup penelitian yang dibahas seperti pengertian pemrograman aplikasi
berbasis internet dan hubungannya dengan database.
Bab III: PERANCANGAN SISTEM
Bab ini berisi tentang rancangan sistem yang diusulkan. Pada bab ini juga
dibahas tentang DFD, spesifikasi data, dan algoritma program.
Bab IV: IMPLEMENTASI PERANGKAT LUNAK
Dalam bab ini akan dibahas mengenai implementasi perangkat lunak yang
digunakan untuk menangani perbelanjaan lewat internet.
Bab V: KESIMPULAN DAN SARAN
Dalam bab terakhir ini akan dibahas kesimpulan yang dapat diambil secara
keseluruhan dari uraian bab-bab sebelumnya, dan saran–saran dari hasil yang diperoleh
BAB 2
LANDASAN TEORI
2.1 Pengenalan Web
2.1.1 Sejarah Web
Sejarah Web dimulai pada bulan Maret 1989 ketika Tim Berner – Lee yang bekerja di
laboratorium Fisika Pertikel Eropa atau yang dikenal dengan nama CERN (Consei
European pour la Recherce Nuclaire) yang berada di Genewa, Swiss, mengajukan
protocol yaitu suatu tata cara untuk berkomunikasi sistem distribusi informasi internet
yang digunakan untuk berbagi informasi di antara para fisikawan (Abdul Kadir, 2003).
2.1.2 Definisi Web
World Wide Web (www) atau biasa disebut dengan web, merupakan salah satu sumber
daya internet yang berkembang pesat. Informasi web didistribusikan melalui pendekatan
hypertext, yang memungkinkan suatu teks pendek menjadi acuan untuk membuka
dokumen yang lain. Dengan pendekatan hypertext ini seseorang dapat memperoleh
informasi dengan meloncat dari suatu dokumen ke dokumen yang lain.
Dokumen-dokumen yang diaksespun dapat tersebar di pelbagai mesin dan bahkan di berbagai
negara. Bagai jaring laba–laba, jejaring web telah membentang ke seluruh penjuru dunia
(Abdul Kadir, 2003).
Web menyediakan jaringan di mana-mana dan murah, mempunyai pengguna
berdasarkan software web browser yang distandarisasi yang berjalan pada berbagai
komputer biasa. Untuk pengembang, software web server gratis secara gratis tersedia,
dapat merespon permintaan untuk dokumen dan program. Beberapa bahasa scripting
telah diadaptasikan atau dirancang untuk menghasilkan program untuk digunakan
2.1.3 Aplikasi Web
Suatu aplikasi web dirancang untuk membantu pengguna (user ) menyelesaikan atau
mengerjakan tugas dan merupakan sebuah aplikasi sederhana yang menampilkan
informasi di dalam jendela browser (Jhonsen, 2001).
Halaman web yang dikenal ada dua, yaitu statis dan dinamis. Statis maksudnya
adalah bahwa pengguna tidak dapat berinteraksi dengan halaman web. Pengguna hanya
dapat melihat informasi yang ada pada halaman web. Sedangkan pada halaman web
dinamis, pengguna diizinkan untuk berinteraksi dengan halaman web. Pengguna yang
berbeda mungkin akan melihat halaman web yang berbeda juga. Sebagai contoh, satu
pengguna melihat suatu katalog buku yang ada pada toko buku dan mungkin memilih
untuk menampilkan informasi tentang buku komputer, sedangkan pengguna lain
mungkin memilih untuk menampilkan informasi tentang buku terbaru, misalnya buku
akuntansi. Untuk menciptakan halaman web dinamis, harus digunakan bahasa yang
mendukung hal tersebut (Arif Ramadhan, 2005).
2.2 Definisi Sistem
Sistem sebagai jaringan kerja dari prosedur-prosedur yang saling berhubungan,
berkumpul bersama-sama untuk melakukan suatu kegiatan atau menyelesaikan sasaran
tertentu (Jogyanto, 1984).
Sistem adalah himpunan suatu benda nyata atau abstrak dari bagian-bagian atau
komponen-komponen yang saling berkaitan, berhubungan, berketergantungan, dan
saling mendukung yang secara keseluruhan bersatu dalam satu kesatuan untuk mencapai
tujuan tertentu secara efisien dan efektif (Janner Simarmata, 2004).
Sistem merupakan data yang telah disusun sedemikian rupa sehingga bermakna
dan bermanfaat karena dapat dikomunikasikan kepada seseorang yang akan
menggunakannya untuk mengambil keputusan yang baik (Valade, 2002). Syarat-syarat
1. Relevansi
Dalam konteks organisasi, informasi yang diperlukan adalah yang benar-benar
relevan dengan permasalahan, misi, dan tujuan perusahaan.
2. Ketepatan Waktu
Informasi harus tersedia tepat pada waktunya. Syarat ini terutama sangat penting
pada saat organisasi membutuhkan informasi, ketika manajer hendak membuat
keputusan-keputusan yang krusial.
3. Akurat
Syarat ini mengharuskan bahwa informasi bersih dari kesalahan dan kekeliruan.
Ini juga berarti bahwa informasi harus jelas dan secara akurat mencerminkan
makna yang terkandung dari data pendukungnya.
Informasi adalah data yang sudah diproses dalam bentuk yang berguna bagi
pemakai, dan mempunyai nilai pikir yang nyata bagi pembuatan keputusan pada saat
sedang berjalan atau untuk prospek masa depan.
2.3 Sistem Basis Data
Basis data adalah kumpulan file yang mempunyai kaitan antara satu file dengan file
yang lainnya sehingga membentuk suatu bangunan data untuk menginformasikan satu
perusahaan atau instansi dalam batasan tertentu.
Basis data tidak memasukkan kumpulan data informal, biasa atau manual.
Penyimpanan dan pemrosesan data menggunakan formalisasi kemampuan sistem
komputer, mengakibatkan suatu keberadaan sebagai suatu entitas terpisah di dalam
suatu organisasi dan di dalam suatu sistem berbasis komputer. Basis data berkaitan
dengan beberapa satuan organisasi yang jelas.
Kadang-kadang hal ini berguna untuk membedakan basis data dari berkas atau
sederetan media seperti kartu berlobang atau perekam magnetic. Alat-alat penyimpanan
langsung memberikan kemungkinan baru untuk secara eksplisit menghubungkan
record-record data di dalam dan di antara berkas-berkas.
Istilah berkas masih berguna untuk mengartikan record dimana semuanya
berasal dari jenis dan deskripsi format yang sama. Ada dua pembagian sistem basis
data yaitu:
1. Sistem Basis Data Multiuser
Sistem basis data multiuser adalah sistem basis data berupa client server dimana banyak pengguna yang dapat mengakses basis data dalam waktu yang
bersamaan. Sebagai contoh yaitu suatu web server, dimana server itulah yang
berbicara dengan server basis datanya. Client menjalankan perangkat lunak
browser (satu-satunya perangkat lunak pada client yang berhubungan dengan
user). Sistem basis data multiuser ini sangat cocok digunakan untuk sistem yang dibangun dalam skala yang sangat besar.
2. Sistem Basis Data Single User
Sistem basis data single user adalah sistem basis data yang terdapat pada PC standalone dengan kata lain, pengguna tidak dapat melakukan akses basis data pada waktu yang bersamaan. Sistem basis data single user merupakan kebalikan dari sistem basis data multiuser. Sistem basis data single user kurang efektif karena sistem tidak dapat dipergunakan oleh banyak pemakai, sehingga sistem
ini biasanya berjalan pada sistem-sistem yang relatif kecil.
2.3.1 Karakteristik Basis Data
Adapun yang menjadi karakteristik basis data adalah sebagai berikut:
1. Suatu kumpulan data yang saling berhubungan yang disimpan secara
bersama-sama tanpa mengganggu satu bersama-sama lainnya atau membentuk data cadangan.
2. Penambahan data baru, modifikasi data dan pengambilan kembali data dapat
dilakukan dengan mudah dan terkontrol.
3. Dapat digunakan oleh satu program aplikasi atau lebih secara optimal
4. Penyimpanan yang sedemikian rupa sehingga berguna untuk efisiensi
2.3.2 Struktur Basis Data
Suatu basis data dihimpun dari suatu skema atau pola logika dari unsur-unsur yang
dapat digolongkan sebagai struktur basis data, struktur basis data dapat dilihat pada
Gambar 2.1.
Gambar 2.1 Struktur Basis Data
1. Basis data adalah kumpulan dari file yang mempunyai kaitan antara satu file
dengan file yang lainnya.
2. File adalah kumpulan dari record sejenis yang mempunyai panjang dengan
elemen yang sama, atribut sama, namun berbeda-beda nilainya.
3. Record adalah kumpulan dari elemen yang saling berkaitan menginformasikan
tentang suatu entity secara lengkap.
4. Field adalah elemen terkecil dalam basis data. BASIS DATA
FILE FILE FILE
RECORD RECORD RECORD
2.3.3 Metode Perancangan Basis Data
Jenis-jenis metode perancangan basis data adalah sebagai berikut:
1. Perancangan konseptual
Perancangan model konseptual merupakan tugas basis data administrator yaitu
orang yang mempunyai kekuasaan sebagai pusat pengontrol terhadap seluruh sistem.
Sedangkan data maupun program yang mengakses data disebut sebagai basis data.
Model konseptual merupakan kombinasi beberapa cara untuk memproses data untuk
beberapa aplikasi. Konsep konseptual tidak tergantung pada aplikasi individual pada
DBMS yang digunakan pada perangkat keras serta model fisik.
Pada perancangan model konseptual penekanan tinjauan dilakukan pada struktur data.
Relasi antarfile tidaklah perlu dipikirkan tentang terapan yang akan dilakukan pada
basis data. Pendekatan yang dilakukan pada perancangan model konseptual adalah
menggunakan model data relasional. Terdapat dua buah teknik untuk melakukan
perancangan model konseptual yaitu:
a. Teknik Normalisasi
b. Teknik Entity Relationship
Teknik normalisasi merupakan proses pengelompokan data elemen menjadi tabel-tabel
yang menunjukan entitas dan relasinya. Pada proses normalisasi selalu diuji kondisi,
apabila ada kehilangan pada saat menambah, menghapus, membaca, mengubah pada
suatu basis data. Bila ada kesalahan pada saat pengujian tersebut, maka relasi
dipecahkan menjadi beberapa tabel lagi atau dengan kata lain perancangan belum
Perancangan basis data teknik Entity Relationship yaitu pada model data relasional
hubungan antara file direlasikan dengan hubungan antara kunci relasi yang merupakan
kunci utama dari masing-masing file. Perancangan basis data yang tepat akan
menyebabkan data yang dirancang menjadi optimal.
2. Perancangan Logikal
Model data logikal adalah suatu teknik untuk menjelaskan dengan baik struktur
informasi basis data dan aturan-aturan sebagai masukan pada proses
perancangan basis data.
Langkah-langkah dalam model data logikal ditunjukan dalam satu set kriteria untuk
mendapatkan model data logikal optimal, yaitu:
1. Kebenaran struktur
2. Kemudahan
3. Tidak redudansi, tidak mempunyai informasi yang berlebihan
4. Dapat dipakai bersama
5. Mudah dikembangkan
6. Perancangan fisik
Langkah terakhir dalam perancangan basis data ialah perancangan basis data fisik.
Dalam tahap ini ditentukan struktur penyimpanan internal dan organisasi file dari basis
data.
Bersamaan dengan kegiatan ini, program aplikasi dirancang dan diimplementasikan
sebagai transaksi basis data yang sesuai dengan spesifikasi transaksi level data, sehingga
basis data yang diinginkan secara fisik menjadi optimal dari segi ruang dan waktu.
Data flow diagram adalah alat pembuatan model yang memungkinkan perancang sistem
untuk menggambarkan sistem sebagai suatu jaringan proses fungsional yang
dihubungkan satu sama lain dengan alir data, baik secara manual maupun
komputerisasi. DFD ini sering disebut juga dengan nama Bubble Chart, model proses,
diagram alur kerja, atau model fungsi. DFD ini adalah salah satu alat pembuatan model
yang sering digunakan, khususnya bila fungsi-fungsi sistem merupakan bagian yang
lebih penting dan kompleks dari data yang digunakan untuk menjelaskan aliran
informasi dan transformasi data yang bergerak dari pemasukan data hingga keluaran.
Untuk memudahkan pembacaan DFD, maka penggambaran DFD disusun berdasarkan
tingkatan atau level dari atas ke bawah, yaitu:
a. Diagram Konteks (Level 0)
Diagram konteks merupakan diagram paling atas yang terdiri dari suatu proses
dan menggambarkan ruang lingkup proses. Hal yang digambarkan dalam
diagram konteks adalah hubungan terminator dengan sistem dan juga gambaran
sistem dalam suatu proses. Sedangkan hal yang tidak digambarkan dalam
diagram konteks adalah hubungan antara terminator dengan data store.
b. Diagram Zero (Level 1)
Diagram zero merupakan diagram yang berada di antara diagram konteks dan
diagram detail serta menggambarkan proses utama dari DFD. Hal yang
digambarkan dalam diagram zero adalah proses utama dari sistem serta
hubungan entitas, proses, alur data, dan data store.
c. Diagram Detail (Primitif)
Diagram detail merupakan penguraian dalam proses yang ada dalam diagram
zero. Diagram yang paling rendah dan tidak dapat diuraikan lagi. Data Flow
Diagram (DFD) memiliki empat komponen, yaitu:
Terminator mewakili entitas yang berkomunikasi dengan sistem yang sedang
dikembangkan. Terminator merupakan kesatuan di lingkungan sistem yang
dapat berupa orang, organisasi, atau sistem lainnya yang berada di
lingkungan luar sistem yang akan memberikan input maupun output dari
sistem. Biasanya terminator ini dikenal dengan nama entitas (entity), sumber
dan tujuan (source and sink). Terminator dapat juga berupa departemen,
divisi atau sistem diluar sistem yang berkomunikasi dengan sistem yang
dikembangkan. Ada tiga hal penting yang harus diingat tentang terminator:
1. Terminator merupakan bagian atau lingkungan luar sistem. Alur data yang
menghubungkan terminator dengan berbagai proses sistem menunjukkan
ubungan sistem dengan dunia luar.
2. Profesional sistem tidak dapat mengubah isi atau cara kerja, organisasi
atau prosedur yang berkaitan dengan terminator.
3. Hubungan yang ada antarterminator yang satu dengan yang lain tidak
dapat digambarkan pada DFD.
2. Proses
Proses sering dikenal dengan nama bubble, fungsi, atau informasi.
Komponen proses menggambarkan bagian dari sistem yang
mentransformasikan input ke output, atau dapat dikatakan bahwa komponen
proses menggambarkan transformasi satu input atau lebih menjadi output.
Proses dilambangkan dengan lingkaran atau empat persegi panjang tegak
dengan sudut tumpul. Proses diberi nama untuk menerangkan proses atau
kegiatan apa yang sedang atau akan dilaksanakan.
3. Data Store (Penyimpanan Data)
Data store digunakan sebagai sarana untuk pengumpulan data. Data store
disimbolkan dengan dua garis horizontal yang paralel yang tertutup pada
salah satu ujungnya atau dua garis horizontal. Suatu nama perlu diberikan
Mobil Mobil
Gambar 2.2 Simbol Data Store
Data store ini biasanya berkaitan dengan penyimpanan seperti: file atau
database yang berkaitan dengan penyimpanan secara komputerisasi,
contohnya: file pita magnetik, file disket, dan file hard disk. Data store juga
berkaitan dengan penyimpanan data.
4. Alur Data (Data Flow)
Suatu data flow atau alur data dapat dipresentasikan dengan anak panah yang
menunjukkan arah menuju ke dan keluar dari suatu proses. Alur data ini
digunakan untuk menerangkan perpindahan data atau satu paket data atau
informasi dari suatu bagian sistem ke bagian lainnya. Alur data dapat
disimbolkan dengan panah. Selain menunjukkan arah, alur data pada model
yang dibuat oleh perancang sistem dapat merepresentasikan bit, karakter,
pesan, formulir, bilangan real, dan macam-macam informasi–informasi yang
berkaitan dengan komputer.
DATA INFORMASI
Gambar 2.3 Simbol Alur Data
2.3.5 Bagan Alir (Flowchart)
Bagan alir adalah bagan (chart) yang menunjukkkan alir (flow) di dalam program atau prosedur sistem secara logika. Bagan alir digunakan terutama untuk alat bantu
komunikasi dan untuk dokumentasi. Pada waktu menggambar suatu bagan alir, analis
sistem atau pemrogram dapat mengikuti pedoman-pedoman sebagai berikut:
1. Bagan alir sebaiknya digambar dari atas ke bawah dan mulai dari bagian kiri
dari suatu halaman.
3. Harus ditunjukkan dari mana kegiatan akan dimulai dan dimana akan
berakhirnya.
4. Masing-masing kegiatan di dalam bagan alir sebaiknya digunakan suatu kata
yang mewakili suatu pekerjaan, misalnya: “persiapkan” dokumen, “Hitung”
gaji.
5. Masing-masing kegiatan di dalam bagan alir harus di dalam urutan yang
semestinya.
6. Kegiatan yang terpotong dan akan disambung di tempat lain harus ditunjukkan
dengan jelas menggunakan simbol penghubung.
7. Gunakanlah simbol-simbol bagan alir yang standar.
Ada lima macam bagan alir, yaitu :
1. Bagan alir sistem (system flowchart). 2. Bagan alir dokumen (document flowchart). 3. Bagan alir skematik (schematic flowchart). 4. Bagan alir program (program flowchart). 5. Bagan alir proses (process flowchart).
2.3.5.1 Bagan Alir Sistem (Sytem Flowchart)
Bagan alir sistem (system flowchart) merupakan bagan yang menunjukkan arus pekerjaan secara keseluruhan dari sistem. Bagan ini mejelaskan urut-urutan dari
prosedur-prosedur yang ada di dalam sistem. Bagan alir sistem menunjukkan apa yang
dikerjakan di sistem. Bagan alir sistem digambar dengan menggunakan simbol-simbol
berikut ini:
Simbol dokumen
Menunjukkan dokumen input dan output baik untuk
proses manual, mekanik, atau komputer.
Simbol kegiatan manual
Simbol simpanan offline
File non-komputer yang diarsip urut angka(numerical).
File non-komputer yang diarsip urut huruf (alphabetical).
File non-komputer yang diarsip urut tanggal
(choronologal).
Simbol kartu plong
Menunjukkan input atau output yang menggunakan Kartu
plong (punched card).
Simbol proses
Menunjukkan kegiatan proses dari operasi program komputer.
Simbol operasi luar
Menunjukkan operasi yang dilakukan di luar proses operasi komputer.
Simbol pengurutan offline
Menunjukkan proses pengurutan data di luar proses komputer.
N
A
Simbol pita magnetik
Menunjukkan input atau output menggunakan pita magnetik.
Simbol hard disk
Menunjukkan input atau output menggunakan hard disk.
Simbol diskette
Menunjukkan input atau output menggunakan diskette.
Simbol display
Menunjukkan output yang ditampilkan di monitor.
2.3.5.2 Bagan Alir Dokumen
Bagan alir dokumen (document flowchart) atau disebut juga bagan alir formulir (from flowchart) atau paperwork flowchart, merupakan bagan alir yang menunjukkan arus dari laporan dan formulir termasuk tembusan-tembusannya. Bagan alir dokumen ini
memakai simbol-simbol yang sama dengan yang digunakan di dalam bagan alir sistem.
2.3.5.3 Bagan Alir Skematik
Bagan alir skematik (schematic flowchart) merupakan bagan alir yang mirip dengan bagan alir sistem, yaitu untuk menggambarkan prosedur di dalam sistem. Perbedaannya
adalah, bagan alir skematik selain menggunakan simbol-simbol bagan alir sistem, juga
menggunakan gambar-gambar komputer dan peralatan lainnya yang digunakan. Maksud
kurang paham dengan simbol-simbol bagan alir. Penggunaan gambar-gambar ini
memudahkan untuk dipahami, tetapi sulit dan lama menggambarnya.
2.3.5.4 Bagan Alir Program
Bagan alir program (program flowchart) merupakan bagan yang menjelaskan secara rinci langkah-langkah dari proses program. Bagan alir program dibuat dari verivikasi
bagan alir sistem. Bagan alir program dibuat dengan menggunakan simbol-simbol
berikut: Simbol Input/Output digunakan untuk mewakili data input/output.
2.3.5.5 Bagan Alir Proses
Bagan alir proses (process flowchart) merupakan bagan alir yang banyak digunakan di teknik industri. Bagan alir ini juga berguna bagi analis sistem untuk menggambarkan
proses dalam suatu prosedur. Bagan alir proses menggunakan lima simbol tersendiri
yang dapat dilihat pada Gambar 2.4.
Menunjukkan suatu operasi (operation)
Menunjukkan suatu pemindahan (movement)
Menunjukkan suatu simpanan (storage)
Menunjukkan suatu inspeksi (inspection)
Menunjukkan suatu penundaan (delay)
Bagan alir proses selain dapat menunjukkan kegiatan dan simpanan yang
digunakan dalam suatu prosedur, dapat juga menunjukkan jarak kegiatan yang satu
dengan yang lainnya serta waktu yang diperlukan untuk suatu kegiatan.
2.4 Pengenalan Pemrograman PHP
PHP dibuat oleh Rasmus Lerdorf, seorang programmer Unix dan Perl pada bulan
Agustus-September 1994. PHP adalah salah satu bahasa server-side yang didesain khusus untuk aplikasi web. PHP disisipkan di antara bahasa HTML dan karena bahasa
server-side, maka bahasa PHP akan dieksekusi di server, sehingga yang dikirimkan ke browser adalah “hasil jadi” dalam bentuk HTML, dan kode PHP tidak akan terlihat.
PHP termasuk dalam Open Source Product. Jadi dapat diubah source code dan didistribusikannya secara bebas. PHP juga diedarkan secara gratis. PHP juga dapat
berjalan di berbagai web server seperti IIS dan Apache. Di awal Januari 2001, PHP
telah dipakai lebih dari 5 juta domain di seluruh dunia, dan akan terus bertambah karena
kemudahan aplikasi PHP ini dibandingkan dengan bahasa server side yang lain. Angka
sesungguhnya dapat dilihat di http:
Pengembangan PHP terus dilakukan dan kini PHP telah sampai pada versi-nya
adalah PHP 4.0 yang diterbitkan pada awal Mei 2000. Adapun kelebihan-kelebihan
PHP yaitu:
a. PHP mudah dibuat dan kecepatan akses tinggi.
b. PHP dapat berjalan dalam web server yang berbeda dan dalam sistem operasi
yang berbeda pula. PHP dapat berjalan pada sistem operasi Unix, Windows98,
Windows NT dan Macintosh.
c. PHP diterbitkan secara gratis.
d. PHP juga dapat berjalan pada web server Microsoft Personal Web Server,
Apache, IIS, Xitami, dan sebagainya.
e. PHP adalah termasuk bahasa yang embedded (dapat ditempel atau diletakkan
dalam tag HTML).
f. PHP termasuk server-side programming.
1. Oracle
2. Sybase
3. mSQL
4. MySQL
5. Solid
6. Generic ODBC
7. Postgres SQL
PHP juga mendukung komunikasi dengan layanan lain melalui protokol IMAP,
SNMP, NNTP, POP3 dan HTTP. Teks editor yang dapat digunakan untuk membuat
program PHP adalah Notepad, PHPed, Vi, emac, UltraEdit, dan yang terakhir yang
diluncurkan adalah Macromedia Dreamweaver. Sekarang ini banyak programmer web
menggunakan teks editor Macromedia Dreamweaver karena kemudahan yang
ditawarkan dalam mendesain sebuah web site. Sementara browser yang digunakan oleh
PHP untuk melihat hasilnya antara lain dapat menggunakan IE 4.0 atau lebih, Netscape
Navigator dan lainnya.
2.5 Fungsi-Fungsi dalam Pemrogramanan PHP
Untuk mengetahui tipe data suatu variabel dapat diperiksa dengan menggunakan
fungsi-fungsi yang telah disediakan oleh PHP. Beberapa fungsi-fungsi tersebut dapat dilihat pada
Tabel 2.1 Fungsi dalam PHP
Fungsi Keterangan
gettype Untuk memperoleh tipe data yang terdapat pada sebuah variabel. Format
penulisannya: Getttype(variabel) Hasilnya berupa tipe data dalam PHP
Is_array Untuk mengetahui apakah variabel tersebut berupa array atau tidak.
Format penulisannya: Is_array(variabel) Hasil:
True: variabel argument adalah array
False: variabel argument bukan array
Is_boll Untuk mengetahui apakah variabel tersebut berupa boolean atau tidak.
Format penulisannya: Is_boll (variabel) Hasil:
True: variabel argument adalah boolean
False: variabel argument bukan boolean
Is_double Untuk mengetahui apakah variabel tersebut berupa double atau tidak.
Format penulisannya: Is_double (variabel) Hasil:
True: variabel argument adalah double
False: variabel argument bukan double
Is_float Hampir sama dengan is_double
Is_int Untuk mengetahui apakah variabel tersebut berupa integer atau tidak.
Format penulisannya: Is_int (variabel) Hasil:
True: variabel argument adalah integer
False: variabel argument bukan integer
Is_string Untuk mengetahui apakah variabel tersebut berupa string atau tidak.
Format penulisannya: Is_string(variabel) Hasil:
True: variabel argument adalah string
2.6 Variabel dalam Pemrograman PHP
Variabel digunakan untuk menyimpan data sementara, dan nilainya dapat berubah-ubah
setiap kali program dijalankan. Dalam PHP, setiap variabel selalu dimulai dengan tanda
‘$’ dan diikuti dengan nama variabelnya, tidak memandang data tersebut apakah
integer, real, maupun string, PHP akan secara otomatis mengkonversi data menurut
tipenya. Nama variabel dapat berupa kombinasi antara huruf alfabet dan angka dengan
panjang maksimal 32 karakter. Secara singkat dapat dikatakan bahwa variabel dalam
PHP memiliki aturan:
a. Diawali dengan tanda dolar ($)
b. Penamaan variabel bersifat case sensitive (membedakan huruf besar dan kecil)
c. Nama variabel hanya dapat diawali dengan huruf atau garis bawah, diikuti
dengan beberapa huruf atau angka maupun garis bawah.
Variabel dalam PHP tidak harus dideklarasikan terlebih dahulu sebelum
digunakan, tidak seperti dalam bahasa pemrograman tertentu yang harus
mendeklarasikan variabel terlebih dahulu.
2.7 Tipe Data dalam Pemrogramanan PHP
PHP mempunyai lima macam tipe data yaitu:
1. Integer
2. Float/Double atau billangan pecahan
3. String
4. Array
5. Objek
Operator merupakan suatu simbol yang dipakai untuk memanipulasi data, seperti
perkalian, penjumlahan, pengurangan, pembagian. Adapun operator-operator dalam
PHP adalah sebagai berikut:
1. Operator Aritmetika
Operator aritmetika adalah operator yang digunakan untuk melakukan fungsi
matematika. Operator aritmetika dalam PHP dapat dilihat pada Tabel 2.2.
Tabel 2.2 Operator Aritmetika
Operator Operasi Penggunaan
* Perkalian $a*$b
/ Pembagian $a/$b
% Modulus $a%$b
+ Penjumlahan $a+$b
- Pengurangan $a-$b
2. Operator Increment/Decrement
Pre/Post increment dan decrement masing-masing adalah penambahan dan
pengurangan satu. Apabila operator diletakan sebelum variabel, misal ++$i atau
--$i akan ditambahkan atau dikurangkan 1 sebelum keseluruhan operasi dalam
ekspresi dikerjakan dan sebaliknya apabila operator diletakan setelah variabel,
misal $i++ atau $i--, maka nilai $i akan ditambah atau dikurangi 1 setelah
operasi dalam ekspresi dikerjakan. Operator increment/decrement dapat dilihat
pada Tabel 2.3.
Tabel 2.3 Operator Increment/Decrement
++ Pre/Post Increment ++$a atau $a--
-- Pre/Post decrement --$b atau $b--
3. Operator String
Hanya ada satu operator string, yaitu operator concatenation (·).
4. Operator Bitwise
Operator bitwise dapat digunakan untuk membuat bit tertentu dari suatu integer
menjadi 0 atau 1.
5. Operator Perbandingan
Operator perbandingan dapat dilihat pada Tabel 2.4.
Tabel 2.4 Operator Perbandingan
Operator Nama Contoh Hasil
6. Operator Ternary
Operator ternary menggunakan tanda “?”. Operator ini akan melakukan evaluasi
ekspresi kemudian berdasarkan hasil evaluasi ini bila bernilai benar (tidak sama
dengan 0 atau sama dengan null), maka statement benar dikerjakan, dan jika
penyederhanaan dari bentuk if .. else yang setiap blok dari if dan else hanya satu
perintah. Sehingga model ini cocok untuk melakukan proses pengisian suatu
hasil pengujian.
2.9 Pengenalan Data Base MySQL
MySQL dikembangkan oleh sebuah perusahaan Swedia bernama MySQl AB, yang
pada waktu itu bernama TcX DataKonsult AB, sejak sekitar 1994 – 1995, meski cikal
bakal kodenya telah disebutkan sejak 1979. Tujuan mula-mula TcX membuat MySQL
pada waktu itu juga memang untuk mengembangkan aplikasi Web untuk klien–TcX,
yaitu perusahaan pengembang software dan konsultan basis data. MySQL versi 1.0
dirilis Mei 1996 secara terbatas, baru di bulan Oktober versi 3.1.1.0 dilepas ke publik.
MySQL termasuk jenis RDBMS (Relational Database Management System), sehingga istilah seperti tabel, baris, dan kolom tetap digunakan dalam MySQL. Pada
MySQL sebuah database mengandung satu atau beberapa tabel yang terdiri dari
sejumlah baris dan kolom. Dalam konteks bahasa SQL, pada umumnya informasi
tersimpan dalam tabel-tabel yang secara logik merupakan struktur dua dimensi yang
terdiri atas baris-baris data (row atau record) yang berada dalam satu atau lebih kolom (column). Baris pada tabel sering disebut sebagai instance dari data sedangkan kolom sering disebut sebagai attributes atau field.
2.10 Tipe Data Field Basis Data MySQL
MySQL mengenal beberapa tipe data field, yaitu:
1. Tipe Data Numerik
Tipe data numerik dibedakan dalam dua macam kelompok, tipe data integer dan
tipe data floating point. Tipe data integer untuk data bilangan bulat, tipe data
2. Tipe data String
Tipe data string dapat dilihat pada Tabel 2.5.
Tabel 2.5 Tipe Data String
Tipe data Kisaran Nilai
CHAR 1-255 character
VARCHAR 1-255 character
TYNYBLOB,TYNYTEXT 1-255 character
BLOB, TEXT 1-65535 character
MEDIUMBLOB,
MEDIUMTEXT
1-16777215 character
LONGBLOB,
LONGTEXT
1-4294967295 character
ENUM Maksimum 65535 character
SET Maksimum 64 elemen
3. Tipe Data Char() dan Varchar()
Tipe data char() dan varchar() pada prinsipnya sama, perbedaannya pada jumlah
memori yang dibutuhkan untuk penyimpanan. Memori yang dibutuhkan untuk
tipe data char() bersifat statis, besarnya bergantung pada berapa jumlah character
yang ditetapkan pada field tersebut dideklarasikan. Sebaliknya, pada tipe data
varchar() besarnya memori penyimpanan bergantung pada beberapa character
yang dipakai ditambah 1 byte yang berisi data jumlah character yang dipakai.
Untuk data tanggal dan waktu (jam) tersedia tipe-tipe data field yang dapat
dilihat pada Tabel 2.6.
Tabel 2.6 Tipe Data Tanggal
Tipe data Kisaran Nilai
DATETIME
DATE
TIMESTAMP
TIME
YEARS
1000-01-01 00:00 to 9999-12-31 23:59:59
1000-01-01’ to ‘9999-12-31’
1970-01-01 00:00:00’-2037
-838:59:59’ to’838:59:59:59’
BAB 3
PERANCANGAN SISTEM
3.1 Metode Perancangan
Metode perancangan dari Aplikasi Penjualan Secara Online ini menggunakan metode
pendekatan atas bawah (top down approach). Dimana perancangan dimulai dari bentuk
yang paling global kemudian diturunkan menjadi bentuk yang lebih detail. Aplikasi ini
terdiri dari tiga bagian utama yaitu Administrator, Antarmuka Pembeli, dan Sistem
Manajemen Basis Data.
3.2 Hasil Perancangan
3.2.1 Bagan Berjenjang
Bagan berjenjang dapat dijadikan pedoman alur dan susunan untuk perancangan
aplikasi selanjutnya karena bagan berjenjang ini berisi semua alur proses dalam
merancang sistem aplikasi ini. Bagan berjenjang aplikasi ini dapat dilihat pada Gambar
3.1.
3.2.2 Diagram Konteks
Diagram konteks dari sistem ini memiliki tiga external entity yaitu produsen (supplier), administrator yang juga dapat dianggap manajemen atau distributor dan pembeli yang
juga dapat disebut konsumen (customer). Tetapi yang berhubungan langsung dengan sistem hanya dua entitas saja yaitu administrator dan pembeli. Administrator dapat juga
dianggap sebagai manajemen penjualan, karena seorang administrator yang hanya dapat
mengetahui persediaan stok penjualan serta mengatur hubungan dengan produsen
penyedia stok penjualan. Untuk lebih jelas Diagram Konteks sistem ini dapat dilihat
Gambar 3.1 Bagan Berjenjang Aplikasi Online
verifikasi Setting data penjualan Proses pembelian dan
dan stock pengisian data oleh pembeli 0
Aplikasi Penjualan Tanaman Palawija Secara Online Dengan Menggunakan PHP
dan MySQL
2
Tampilan Aplikasi Penjualan
1.1
Aplikasi Penjualan Hasil Perkebunan Secara Online Dengan
Gambar 3.2 Diagram Konteks Aplikasi Penjualan Secara Online
3.2.3 Perancangan Susunan Diagram Tampil
Diagram tampil mendeskripsikan kemampuan visualisasi dari tampilan yang akan
dirancang.
3.2.3.1 Perancangan Susunan Diagram Tampil Administrator
Diagram tampil atau susunan perancangan tampilan dari Antarmuka Administrator
terdiri dari halaman kategori, halaman produk jenis dari kategori itu, halaman simpan
pesanan dari pembeli, halaman config yang berfungsi untuk mengubah tampilan data –
data administrator pada antarmuka pembeli, dan halaman user yang berfungsi untuk
mengubah maupun menghapus dan menambah user administrator. Diagram Tampil ini
dapat dilihat pada Gambar 3.3.
3.2.3.2 Perancangan Susunan Diagram Tampil Antarmuka Pembeli
Diagram tampil antarmuka pembeli ini terdiri dari halaman yang menampilkan semua
kategori, halaman yang menampilkan satu dari tiga macam kategori, dimana pada
sistem ini kategori yang dibahas hanya tiga kategori saja yaitu kategori wortel, tomat,
dan cabai. Selanjutnya, akan ditampilkan halaman jenis–jenis produk dari masing–
masing ketiga kategori tersebut, dan berlanjut di pemesanan oleh pembeli, setelah
pembeli melakukan pembelian pembeli akan mengisi data, dan berlanjut terbukanya
halaman dimana pembeli dapat melihat total daftar pembelian beserta harganya. Untuk
lebih jelasnya dapat dilihat pada Gambar 3.4.
Gambar 3.4 Diagram Tampil Pada Antarmuka Pembeli Halaman Antarmuka Pembeli
Halaman menampilkan semua kategori
Kategori
Halaman Pengisian Data Pembeli
3.2.4 Diagram Arus Data
3.2.4.1 Diagram Arus Data Level 1
Diagram arus data level 1 pada sistem ini dimulai pada Aplikasi Antarmuka
Administrator, dan terdiri dari dua proses yaitu, proses login dan proses menghasilkan
data yang akan ditampilkan pada antarmuka pembeli. Tampilan pada antarmuka
pembeli inilah yang merupakan diagram arus data level 2 pada sistem ini. Diagram arus
data level 1 sistem ini diperlihatkan pada Gambar 3.5.
Nama user & password
3.2.4.2 Diagram Arus Data Level 2
Diagram arus data level 2 prosesnya terjadi pada antarmuka pembeli. Data penjualan
yang telah dihasilkan pada managemen administrator ditampilkan pada antarmuka
pembeli. Dari proses pada antarmuka pembeli dihasilkan data – data yang dialirkan
kembali ke manejemen administrator. Aliran data inilah yang merupakan arus data level
3. Diagram arus data level 2 sistem ini dapat dilihat pada Gambar 3.6.
Kategori produk
Kategori panjualan mata uang yang dipakai
Dalam proses pembayaran
Data item – item perincian
Yang dipesan pesanan
Data si pemesan
Dan yang membayar
Gambar 3.6 Diagram Arus Data Level 2
3.2.4.3 Diagram Arus Data Level 3
Pada diagram arus data level 3, proses aliran data berlangsung dari sistem antarmuka
pembeli (customer) menuju pada sistem administrator. Adapun data yang dialirkan adalah data order (pemesan dan pembayar), data pesanan, dan penjabaran data – data
Db2 Data Kategori
Db2 Data Produk
Db2 Data Currency
1
Antarmuka Pembeli
Db3
Data Order Db3
Data Order Item
Db3
pemesan dan pesanan. Penjabaran disini mencakup waktu pesanan dan total harga
pesanan. Diagram arus data level 3 dapat dilihat pada Gambar 3.7.
Aliran aliran data pesanan
Gambar 3.7 Diagram Arus Data Level 3
3.2.5 Perancangan Basis Data
Perancangan basis data dari sistem ini terdiri dari delapan tabel. Di antara delapan tabel
tersebut terdapat dua tabel yang berdiri sendiri-sendiri atau tidak memiliki relasi dengan
tabel lain. Kedua tabel tersebut adalah tabel user administrator dan tabel configurasi
shop.
3.2.6 Hubungan Antartabel
Adapun hubungan antartabel dari sistem ini dapat dilihat pada Gambar 3.8.
Db3 Data Order
Db3 Data Order Item
Db3
Data Waktu Pesanan
n
Gambar 3.8 Hubungan Antartabel
Gambar di atas menunjukkan hubungan antara entitas yang berbeda di mana pertama-
tama diasumsikan hanya ada satu administrator sistem di dalam Aplikasi Online ini.
3.2.6.1 Tabel User
Tabel user dibuat untuk menyimpan dan menampung data administrator, user disini
maksudnya adalah termasuk administrator. Yang berhak melakukan penambahan dan
pengubahan pada Aplikasi Online ini. Untuk lebih jelas field–field yang dibuat dalam
tabel user dapat dilihat pada Tabel 3.1.
Tabel 3.1 Struktur Tabel User Administrator
Field name Type Field size Keterangan
User_id Integer 10 Nomor Id user (primary key index)
User_name Varchar 20 Nama user
User_password Text Password user
User_regdate Date Tanggal registrasi
User_last_login Date Tanggal login terakhir
3.2.6.2 Tabel Shop_config
Tabel shop_config sebagai tempat penyimpanan administrator, secara spesifik data
administrator disini adalah orang yang membuat sistem usaha penjualan secara online
ini. Data yang tersimpan di tabel inilah yang ditampilkan pada antarmuka pembeli
seperti nomor telepon yang dapat dihubungi, alamat email, dan hal lainnya yang
menyangkut tentang siapa orang dibalik sistem perusahaan online ini. Berikut adalah
field–field yang dibuat dalam tabel Shop_config, yang dapat dilihat pada Tabel 3.2.
Tabel 3.2 Struktur Tabel Shop_config
Field Name Type Field Size Keterangan
Sc_name Varchar 50 Nama si pembuat program
(administrator)
Sc_phone Varchar 30 Nomor telepon
Sc_email Varchar 30 Alamat email
Sc_shipping_cost Decimal Ketetapan harga penjualan
Sc_order_email Enum Alamat email pembeli atau pemesan
Sc_currency Integer 10 Mata uang yang digunakan.
3.2.6.3 Tabel Product
Tabel product dibuat untuk menampung jenis-jenis dari penjualan. Sistem penjualan
online ini menjual tiga jenis tanaman palawija, yaitu wortel, tomat dan cabai. Tabel
product menyimpan jenis–jenis ataupun macam dari masing–masing kategori yang
diatur mengikuti kondisi pasar. Tabel ini pada dasarnya didesain kosong, apabila ada
tambahan ataupun perubahan produk, maka tabel ini menyimpan datanya. Field–field
yang dibuat dalam table product dapat dilihat pada Tabel 3.3.
Tabel 3.3 Struktur Tabel Product
Field name Type Field size Keterangan
Pd_id Integer 10 Parent id mengacu pada kategori dari
produk
Cat_id Integer 10 Mengacu pada kategori secara lebih spesifik
Pd_name Varchar 100 Nama dari produk
Pd_description Text Pendiskripsian dari produk yang bertujuan
menarik minat pembeli.
Pd_price Decimal Tetapan harga perproduk
Pd_qty Smallint 5 Pendiskripsian stok yang tersedia dari
produk ini.
Pd_image Varchar 200 Gambar dari produk
Pd_thumbnail Varchar 200 Gambar dari produk
Pd_last_update Date Tanggal terakhir produk diupdate
3.2.6.4 Tabel Order_item
Tabel ini dibuat dan digunakan untuk tempat penyimpanan data penjualan.
Administrator menyimpan macam–macam produk yang berhasil terjual pada tabel ini.
Sama halnya dengan tabel poduct, tabel ini pada pendesain awal juga kosong (empty). Karena tabel ini disediakan untuk menampung data dari antarmuka pembeli langsung,
dan administrator dapat mengubah isi tabel ini pada aplikasi administrator. Untuk lebih
jelas field–field yang dibuat dalam tabel ini dapat dilihat pada Tabel 3.4.
Tabel 3.4 Struktur Tabel Order_item
Field name Type Field size Keterangan
Od_id Integer 10 Kategori yang dipesan
Pd_id Integer 10 Nama produk yang dipesan
Od_qty Integer 10 Banyaknya jumlah pesanan
3.2.6.5 Tabel Order
Tabel ini digunakan untuk menampung dan menyimpan data pembeli dan yang
melakukan pembayaran. Data pembelian dan pembayaran dibedakan dalam sistem ini,
tetapi data tersimpan dalam satu tabel. Pada antarmuka pembeli, apabila si pembeli
melakukan pemesanan, maka si pembeli harus mengisi formulir data pada sistem
antarmuka. Data yang diisi oleh si pembeli inilah yang tersimpan ke dalam tabel order.
Begitu juga dengan yang melakukan pembayaran,data akan tersimpan kedalam tabel
ini. Apabila yang melakukan pembelian dan yang melakukan pembayaran adalah orang
yang berbeda, maka datanya secara terperinci akan disimpan ke dalam tabel order.
Tabel 3.5 Struktur Tabel Order
Field name Type Field Size Keterangan
Od_id Integer 10 Nomor pesanan
Od_date Date Tanggal dilakukannya pesanan
Od_last update Date Tanggal terakhir dilakukannya
perubahan
Od_status Status pesanan
Od_memo Varchar 255 Konfirmasi pesanan
Od_shipping_first_name Varchar 50 Nama awal si pemesan
Od_shipping_last_name Varchar 50 Nama akhir dari si pemesan
Od_shipping_address1 Varchar 100 Alamat si pemesan
Od_shipping_address2 Varchar 100 Alamat alternatif si pemesan
Od_shipping _phone Varchar 32 Nomor telepon si pemesan
Od_shipping_city Varchar 100 Kota tempat tinggal si pemesan
Od_shipping_state Varchar 32 Propinsi tempat tinggal si
pemesan
Od_shipping_postal_code Varchar 10 Kode pos
Od_shipping_cost Total harga yang harus dibayar
Od_payment_first_name Varchar 50 Nama awal si pembayar
Od_payment_last_name Varchar 50 Nama akhir si pembayar
Od_payment_address1 Varchar 100 Alamat yang si pembayar
3.2.6.6 Tabel Currency
Tabel ini digunakan untuk menyimpan mata uang yang dipergunakan dalam proses jual
secara online ini. Dari awal dibuatnya sistem ini, tabel Currency sudah ditetapkan berisi
tiga jenis mata uang. Intinya, tabel ini tidak bersifat kosong, tetapi dari awal tabel ini
sudah berisi yang bentuknya tetap. Tabel ini tidak dapat diubah setiap saat seperti
halnya tabel produk yang dapat diubah setiap saat, dari desain awal basis data tabel ini
sudah terisi. Untuk lebih jelas field–field dari tabel ini dapat dilihat pada Tabel 3.6.
Tabel 3.6 Struktur Tabel Currency
Field name Type Field size Keterangan
Cy_id Integer 10 Penomoran jenis mata uang
Cy_code Char 3 Kode mata uang (‘EUR’,’GBP’,’JPY’,’USD’)
Cy_simbol Varchar 8 Simbol mata uang
3.2.6.7 Tabel Category
Sama halnya dengan tabel Currency, tabel Category juga sudah berisi ketetapan dari
awal. Tabel ini tidak kosong, sesuai dengan permasalahan yang dibahas, yaitu Penjualan
Tanaman Palawija yang mencakup tiga jenis palawija: wortel, tomat dan cabai,
sehingga dalam tabel Category sudah berisi simpanan tiga jenis tanaman ini. Field–field
dari tabel category dapat dilihat pada Tabel 3.7.
Tabel 3.7 Struktur Tabel Category
Field name Type Field size Keterangan
Cat_id Integer 10 Induk utama macam – macam kategori
Cat_name Varchar 50 Nama kategori
Cat_description Varchar 200 Pendeskripsian kategori
Cat_image Varchar 50 Gambar dari kategori
3.2.6.8 Tabel Cart
Tabel Cart adalah tabel yang berfungsi sebagai tempat penyimpanan data pesanan atau
pembelian. Hampir sama fungsinya dengan tabel Order_item, hanya saja kalau tabel
Order_item berkaitan dengan tabel Order, tabel Cart tidak berhubungan langsung
dengan tabel Order. Penjabarannya, tabel order berisi data pembeli dan tabel order_item
berisi data produk–produk yang dipesan oleh si pemesan yang datanya ada di tabel
Order. Sedangkan tabel Cart berisi kalkulasi dan akumulasi pesanan–pesanan yang
telah dilakukan pada antarmuka pembeli. Field–field yang dibuat dalam tabel Cart dapat
dilihat pada Tabel 3.8.
Tabel 3.8 Struktur Tabel Cart
Fiel name Type Field size Keterangan
Ct_id Integer 10 Nomor induk pesanan
Pd_id Integer 10 Nomor induk sub pesanan
Ct_qty Mediumint 8 Total banyaknya dan harga pesanan
Ct_session_id Char 32 Nomor induk waktu pemesanan
Ct_date Date Tanggal dilakukannya pemesanan
3.2.7 Perancangan Modul-Modul PHP
3.2.7.1 Perancangan File-File PHP pada Antarmuka Administrator
Untuk memberikan kemampuan editing, maka harus ditentukan penciptaan, pengeditan
data, penghapusan data pada sistem. Pada main.php akan ditampilkan lima bagian yang
shopconfig. Pada masing–masing menu tersusun file–file php yang mempunyai
kegunaan dan fungsi dalam mendukung kemampuan sistem aplikasi administrator ini.
Untuk lebih jelas dapat dilihat pada Gambar 3.9.
Selain dari file-file php yang diperlihatkan pada gambar di bawah, aplikasi
administrator juga memiliki file php pendukung yang terdapat dalam sublibrary.
Adapun file php yang termasuk kedalam sublibrary itu antara lain function.php. File ini
merupakan tonggak penting dalam menjalankan sistem aplikasi administrator karena
pada file function.php adalah suatu metode untuk mengelompokkan program yang ada
menu utama, artinya semua fungsi–fungsi pada file–file php yang ada pada menu utama
hanya dijalankan pada satu file php saja yaitu function.php.
Index.php Login.php
Main.php
Kategori Add.php List.php Modify.php Processcategory.p h
Product Add.php Gagal.php
Gambar 3.9 Hubungan File-File PHP pada Administrator
3.2.7.2 Perancangan File–File PHP pada Antarmuka Pembeli
Pada antarmuka pembeli file–file php yang menjadi menu utama tidak sebanyak seperti
pada antarmuka administrator. Pada antarmuka pembeli tidak terbagi ke beberapa
bagian menu. Karena pada antarmuka pembeli file–file php hanya melanjutkan file–file
php yang ada pada administrator. Segala penambahan, pengurangan dan penghapusan
dilakukan pada administrator. Adapun file–file php yang terdapat pada antarmuka
pembeli akan diperlihatkan pada Gambar 3.10.
Index.php
Cart.php Proses pemesanan
Gambar 3.10 Hubungan File–File PHP pada Antarmuka Pembeli
Sama hal seperti antarmuka administrator, pada antarmuka pembeli juga terdapat file
pendukung utama jalannya program, yaitu file yang terdapat dalam sublibrary.
Perbedaanya adalah file fungsi program pada antarmuka pembeli tidak dijadikan satu
seperti file fungsi pada administrator yang dijadikan satu pada file function.php. File–
file fungsi pada antarmuka pembeli terpisah menjadi tiga file fungsi. Ketiga file fungsi
tersebut adalah checkout-functions.php, cart-functions.php, dan success-functions.php.
3.3 Algoritma
Algoritma merupakan langkah-langkah maupun urutan bertahap dan spesifik dari suatu
masalah. Algoritma digunakan untuk menganalisis serta menjelaskan urutan dan
hubungan antara kegiatan-kegiatan yang akan ditempuh. Selain itu algoritma juga
berfungsi untuk menyelesaikan suatu permasalahan sehingga tercapai suatu tujuan.
Berikut ini merupakan beberapa algoritma yang menjadi inti dari perancangan sistem
ini, yaitu Algoritma Home Administrator,Login Administrator, Data Kategori, Data Produk, Data User Administrator, Data Pembeli (Order), Data Pembelian (Order_item, Cart).
Berikut merupakan langkah-langkah bertahap dan spesifik dari halaman home pada
modul Administrator.
Open index.php
Input main
If home = true then
Open index.php
End if
End
3.3.2 Algoritma Login Administrator
Berikut adalah algoritma login pada modul Administrator. Jika Administrator
memberikan password yang sesuai, maka selanjutnya halaman Administrator akan terbuka
Input admin
If login admin = true then
Input user, password
Open table tbl_users where user = user input and
password = password input
If found then
Open admin/main.php
Else
Open admin/index.php
End if
End if
3.3.3 Algoritma Data Kategori
Dibawah ini merupakan langkah-langkah bertahap dari halaman kategori, dimana pada
Input category
Local variable Tambah, Ubah, Hapus
Open admin/category/index.php?view=add
If Update = true then
Input category_id,category_parent_id
category_name,category_description,category_image
Open tbl_category
Insert into tbl_category (category_id,
category_parent_id,category_name,
category_description, category_image)
End If
If Ubah = true then
Update tbl_category set category_id = category_id
input, category_parent_id = category_parent_id input,
category_name = category_name input,
category_description = category_description input,
category_image = category_image input
End if
If Hapus = true then
Delete from tbl_category where category_id =
category_id input
End if
3.3.4 Algoritma Data Produk
Sama halnya dengan data kategori, pada algoritma data produk dibawah ini mencakup
tambah produk, ubah produk dan hapus produk.
Input product
Local variable Tambah, Ubah, Hapus
Open admin/product/index.php?view=add
If Update = true then
Input product_id, category_id, product_name,