Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD...

27
1

Transcript of Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD...

Page 1: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

1

Page 2: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

2

Panduan Web Toko Online

Sistem Informasi PenjualanHaPe Secara Online – Virtual

Bank( Programmer : Bunafit Nugroho & Team )

Daftar Harga (SMS ke : 0838 6716 1314) eBook versi Afiliasi : Rp. 50.000, -

http://tokoonlinevirtualbank.nkmultimedia.comwww.bisnisafiliasi.com

Script Web Contoh v1 : Rp. 150.000,-( versi phpTriad, dengan PHP 4 dan MySQL, register Global OFF )

Script Web Contoh v2 : Rp. 500.000,-( versi XAMPP, dengan PHP 5 dan MySQL, register Global ON )

Page 3: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

3

Adalah web dengan konsep sebagai bahan referensi/contekan/ acuan Tugas Akhir (TA), Skripsi, KerjaPraktek atau Tesis bidang Informatika Komputer.Konsep ini gratis, tapi skrip web toko contohnya

dijual dengan harga Rp. 150.000,- (promo untuk 10orang pertama)

Tersedia Source Code Perpustakaan dari programJava, Visual Basic 6.0, Delphi dan C++ Builder, juga

tersedia dengan konsep Multi User danClient/Server

Untuk mendapatkan No Rekening transfer, silahkan kirim email seperti

contoh di atas. Atau, kirim SMS ke nomor 0838 6716 1314.

Contoh pesan SMS v1 : "planetKode, minta No Rekening buat pembayaranSc PHP Web Toko HaPe v1 phpTriad ". Kami akan segera membalas.

Contoh pesan SMS v2 : "planetKode, minta No Rekening buat pembayaranSc PHP Web Toko HaPe v2 XAMPP ". Kami akan segera membalas.

Page 4: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

4

ERD / Relasi Tabel

Page 5: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

5

Analisis Sistem BasisdataToko Online untuk Counter

Handphone

4.1 PendahuluanPada bab ini Anda akan Kami tuntun untuk dapat membuat standar database yang

digunakan untuk membuat Toko Online. Database ini tidak hanya dapat digunakan untukaplikasi yang sedang Kita bangun saja, akan tetapi juga dapat digunakan untuk membuataplikasi Toko Online lain yang memiliki prosedur dan sistem yang hampir sama.

Dengan adanya bab ini, maka Anda semua akan Kami tuntut untuk mampu melakukanperancangan pada sebuah aplikasi Toko Online. Sehingga, setelah menyelesaikanpembahasan bab ini, Anda akan mampu untuk menganalisis kebutuhan database dan mampuuntuk mengembangkan kekurangan -kekurangan yang terdapat pada basisdata yang sedangdibangun.

4.2 Mendefinisikan Sistem dan BasisdataPada buku ini, studi kasus yang digunakan dalam pembuatan toko online men gacu pada

objek counter handphone atau toko telpon cellular. Sehingga, sekarang persepsi Anda harusdifokuskan pada toko tersebut. Walaupun objek yang Kita bahas adalah mengenai counterhandphone, akan tetapi sistem dan alur program ini dapat Anda terapkan pada kasus yangAnda hadapi. Untuk lebih jelasnya, Anda dapat mengikuti pembahasan berikut ini.

4.2.1 Alasan Mendefinisikan Data

Sebelum Kita dapat mendefinisikan database dan melakukan coding program, makasebagai pegangan Kita harus melakukan pencarian data pada objek yang bersangkutan.Sebagai contoh, apabila Kita hendak membangun sistem pemesanan online pada counterAfit’s Phone, maka pada toko/counter tersebut Anda harus memburu data -data yangdibutuhkanSehingga dengan adanya data -data yang berkenaan dengan counter handphone tesebut, Kitadapat mendefinisikan data apasaja yang hendak ditampilkan. Selain itu, Kita juga harusmengumpulkan data-data mengenai penyediaan barang handphone yang akan ditawarkansecara online.Dengan data-data tersebut, maka Kita sebagai pengembang dapat dengan mudah untukmengimplementasikan sistem manual yang telah ada ke dalam sistem informasi secara online.

4.2.2 Mendefinisikan Objek Data

Setelah mengetahui alasan-alasan mengenai pencarian data, maka tugas Kita adalahmendefinisikan semua objek data yang ada di dalam sistem manual, tentunya objek -objektersebut ada data yang akan diinformasikan pada sistem online nantinya.

Informasi yang berkenaan dengan counter tersebut sebaiknya didefinisikan denganlengkapnya. Hal ini dapat memperm udah dan memberikan daya tarik pengunjung dalam

Page 6: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

6

menjelajahi portal yang Kita miliki. Berkenaan dengan data counter handphone, beberapa halyang mungkin akan Kita butuhkan adalah:

Profile counter handphone : Profile merupakan informasi detail mengenaicounter/toko handphone yang bersangkutan. Di dalam data ini menyangkut misi, visiataupun sejarah berdirinya counter yang bersangkutan.

Data Merk yang Tersedia : Ini merupakan data yang telah mengarah pada datahandphone. Kita dapat mendaftar merek handphone a pa saja yang dijual pada counterbersangkutan.

Data Tipe yang dijual : Setelah merek, Anda dapat mendata jenis atau tipe handphoneapa saja yang disediakan di dalam counter tersebut. Data -data yang berkaitan dengan tipeadalah keterangan lengkap tentang ha ndphone tersebut, tentu saja beserta harga dan stokyang masih tersedia.

Alur Pemesanan : Setelah beberapa data di atas Anda ketahui, maka Anda dapatmendiskusikan teknik pemesanannya dengan pemilik counter. Sehingga bentuk daninformasi tambahannya dapat disesuaikan dengan keinginan pemilik counter.

Kurang lebih beberapa informasi yang harus Anda kumpulkan seperti daftar di atas, Andajuga dapat mendefinisikannya dengan menyesuaikan counter handphone yang bersangkutan.

4.2.3 Alur Kerja Program

Pada study kasus toko online yang Kita bangun ini, program yang Kita bangun akanbebentuk portal (web dinamis). Jadi, selain menyediakan sistem pemesanan online, portal inijuga menyediakan web portal yang menampilkan informasi mengenai counter Afit’s Phone.

Pada awal program dibuka, kepada seorang pengunjung akan disajikan sebuahhalaman portal yang menyediakan informasi counter bersangkutan. Pada halaman tersebutpengunjung dapat mengisikan pesan atau kritik kepada pemilik counter. Selain itu, sebagaiinformasi juga akan Kita tampilkan halaman berita/news mengenai data -data handphonemaupun berkenaan dengan informasi umum.Untuk melakukan pemesanan, pengunjung dapat mengklik tombol/hyperlink Pemesanan,sehingga pengunjung akan dibawa pada program sistem pemesanan barang.

4.2.4 Alur Kerja Sistem Pemesanan

Pada waktu pertama kali pengunjung masuk pada halaman index pemesanan, makaprogram akan melakukan pencatatan dengan membaca nomor IP Address dari komputer klienyang digunakan untuk program pemesanan. Nomor IP inilah yang digun akan untukmemisahkan data pilihan barang handphone dengan data yang juga dipilih oleh pengunjunglain pada tempat yang berbeda dan waktu yang sama.

Dengan menggunakan pencatatan nomor IP ini, maka setiap pemesanan yang dilakukanpada komputer klien A, datanya tidak akan campur dengan data handphone yang sedangdipesan oleh klien B, klien C atau klien D. Penggunaan metode inilah yang menjadikanprogram pemesanan yang Kita bangun mampu bertindak sebagai aplikasi yang Multi Userdan Client Server. Sehingga program dapat melayani banyak pengakses dalam waktu yangbersamaan dan dalam tempat yang berbeda -beda.

Beberapa hal yang dapat Anda ketahui mengenai jalannya pemesanan dapat Anda lihatpada daftar berikut:

1. Di dalam halaman program pemesanan, pengunjung dapat langsung memilih merek danjenis handphone yang akan dibeli.

2. Pada saat memilih barang, pemesan dapat menentukan jumlah barang yang akan dipesan.

Page 7: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

7

3. Setelah menekan tombol Pesan, maka informasi data yang dipilih akan disimpan padatempat penyimpanan sementara. Dalam program yang Kita bangun, penyimpanansementara diterapkan dengan tabel bernama kantong. Selain cara ini, Anda juga dapatmenggunakan penyimpanan sementara dengan cookies.

4. Data-data yang ada di dalam halaman kantong pembelian akan dihapus apabila tanggalpemilihannya telah melewati satu hari dihitung dari hari ini. Jadi, setiap masuk padakantong pembelian program akan selalu melakukan pembersihan data kantong denganberdasarkan nomor IP-nya dan keterlambatan pemesanan. Dengan cara tersebut,misalnya pada tanggal 12-04-2005 melakukan pemilihan barang, akan tetapi tidak jadidibayar, maka apabila pada tanggal 13 -04-2005 mengunjungi portal ini data -datanyaakan dihapus. Sehingga Kita tidak akan melihat tampilan pemesanan yang Kita gagalkanpada hari sebelumnya.

5. Dikatakan bahwa data-data yang ada di dalam kantong pembelian merupakan datasementara, sehingga sebelum barang tersebut dibayar, Kita dapat melakukanpenghapusan.

6. Untuk menambah jumlah barang yang telah dipilih, Anda dapat mengubah datanyadengan cara memilih tombol ubah. Dengan fasilitas tersebut, maka calon pemesan dapatmenambah atau mengurangi jumlah barang yang telah dipilih dan masuk pada kantong.

7. Setelah proses pemilihan data -data yang hendak dipesan selesai, maka Anda dapatmelanjutkan proses pemesanan pada proses pembayaran.

8. Pada sistem pembayaran, seorang pemesan harus memiliki nomor rekening pada bankyang ditunjuk. Dalam sistem yang Kita bangun, data -data bank (nomor rekening, pin dansaldo) akan Kita simpan pada tabel bernama v_bank.

9. Pada proses pembayaran, Pemesan tidak harus menggunakan nomor rekening yangdimilikinya. Akan tetapi pemesan dapat menggunakan sembarang rekening yang ada.Jadi, apabila Anda mengetahui nomor rekening teman, maka Anda dapatmenggunakannya.

10. Apabila proses autentifikasi rekening dan pin rekening dinyatakan berhasil, makaprogram akan segera mentransfer data -data yang dipilih (pada tabel kantong) ke dalamtabel pemesanan.

11. Pada proses transfer data, program juga akan melakukan pengurangan saldo padarekening yang digunakan, dan menambahkannya pada nomor rekening yang dimilikioleh counter (dalam hal ini nama rekeningnya adalah centranet).

12. Setelah pemesanan dinyatakan berhasil, maka pemesan akan segera diberikan nomorfaktur atau nomor pemesanan yang dapat dijad ikan sebagai tanda bukti telah melakukanpemesanan. Tanda bukti inti dapat didownload dan diprint oleh pemesan.

Selain kartu tanda pemesanan di atas, Anda juga dapat memperoleh deskripsi barang yangtelah Anda pesan sebelumnya. Caranya adalah dengan masuk pada program informasipemesanan. Pada program tersebut Anda dapat memasukan nomor faktur dan kode pembeliyang sesuai dengan kartu tanda pesan yang telah Anda peroleh. Apabila benar, maka programakan segera menampilkan seluruh data handphone yang telah d ipesan.

4.2.5 Database yang akan Digunakan

Karena Objek Toko yang akan dibangun adalah Toko Handphone, maka Kita dapatmempermudahnya dengan membuat database bernama handphonedb. Di dalam database

Page 8: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

8

inilah nantinya Kita akan membuat berbagai jenis tabel yang dibu tuhkan dalammendokumentasikan data-data handphone dan proses pemesanan.Pada database handphonedb tersebut akan Kita gunakan untuk merekam semua data -datayang berkenaan dengan sistem informasi counter Afit’s Phone serta data handphone yangakan dijual.

4.3 Implementasi Pembuatan Database dan TabelBaiklah, sekarang mari Kita membuat perancangan database dan tabel yang akan digunakansebagai basisdata untuk menyimpan data -data handphone yang akan Kita buat. Sebelumnyamungkin Anda harus memastikan bahwa server database Anda telah aktif sehingga siap untukdigunakan. Apabila belum, Anda dapat menjalankan daemonnya seperti pembahasan bab 2.Untuk membuatnya, Anda dapat memperhatikan beberapa langkah berikut:

4.3.1 Membuat Database dan Mengaktifkannya

Sebelum melakukan perancangan dan menerapkan hasil rancangannya ke dalam databaseMySQL, maka pada langkah pertama Anda harus dalam kondisi aktif di dalam serverMySQL. Sehingga sekarang Anda harus melakukan login pada server MySQL, perhatikancara berikut:

bunafit@centranet:~$ mysql -u bunafit -pEnter password: ****Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 8 to server version: 4.1.7 -max

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>

Setelah kondisi Anda berada pada Prompt MySQL, maka Anda dapat membuat databasebernama handphonedb dan mengaktifkannya dengan cara berikut:

mysql> CREATE DATABASE handphonedb;Query OK, 1 row affected (0.11 sec)

Pada query di atas, pernyataan “Query OK, 1 row affected (0.11 sec) ” menandakanbahwa Kita sekarang telah berhasil membuat database baru bernama handphonedb. Di dalamdatabase inilah semua informasi akan Kita dokumentasikan, sehingga dapat ditampilkan padahalaman program.Sekarang Kita akan mencoba untuk mengaktif kan database handphonedb yang telah Kitabuat, gunakanlah perintah berikut untuk mengaktifkannya.

mysql> USE handphonedb;Database changed

Pada perintah di atas, pernyataan “ Database changed ” menandakan kondisi Kita sekarang telahberada di dalam database handphonedb. Berarti Kita sekarang dapat melakukan pembutantabel di dalam database tersebut.

4.3.2 Merancang Tabel Administrator

Untuk memanajemen sistem basisdata yang Kita bangun ini, Kita akan membuatbeberapa modul yang dapat melakukan operasi penambah an data merk, tipe maupunmelakukan manipulasi dan informasi pada data -data lain di dalam database handphonedb.

Page 9: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

9

Untuk mengamankan program pengelola database tersebut, Kita dapat membuat programautentifikasi yang fungsinya sebagai gerbang atau login untuk masuk pada sistem. Padaprogram autentifikasi yang Kita buat, username dan password yang digunakan akan disimpanpada tabel yang bernama administrator. Struktur rancangan dari tabel administrator dapatAnda lihat pada tabel berikut:

Tabel 4.1 Rancangan Tabel Administrator

Kolom Tipe Lebar Keteranganuser_admin VARCHAR 25 PRIMARY KEYpass_admin VARCHAR 25

Untuk mengetahui lebih jelas dari rancangan tabel administrator di atas, maka Kami dapatmendefinisikan kolom dan fungsinya sebagai berikut:

User_admin : adalah kolom yang digunakan untuk merekam data username dariseorang administrator.

Pass_admin : adalah kolom yang digunakan untuk merekam data passworddari username yang dimiliki oleh seorang administrator. Pada kolom ini, data yangdigunakan akan Kita enkripsi dengan bentuk data berupa PASSWORD.

Setelah memahami beberapa deskripsi kolom dari tabel administrator di atas, maka sekarangAnda dapat membuat tabel tersebut dengan menggunakan perintah:

CREATE TABLE administrator ( user_admin VARCHAR(25) NOT NULL, pass_admin VARCHAR(25) NOT NULL, PRIMARY KEY (user_admin) );

Dengan menggunakan perintah di atas, maka anda akan memiliki tabel administrator denganbentuk deskripsi sebagai berikut:

mysql> DESC administrator;+------------+-------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+------------+-------------+------+-----+---------+-------+| user_admin | varchar(25) | | PRI | | || pass_admin | varchar(25) | | | | |+------------+-------------+------+-----+---------+-------+2 rows in set (0.00 sec)

Pada program administrasi yang akan Kita bagun, Anda dapat masuk sebagai seorang admindengan menggunakan username “admin” dan passwordnya adalah “cent ranet”. Maka dari itu,Anda dapat memasukkan datanya seperti tabel berikut:

Tabel 4.2 Data Login untuk administrator

User Login Password LoginAdmin centranet

Perintah yang digunakan untuk memasukan data seperti tabel di atas adalah sebagai berikut:

INSERT INTO administrator

VALUES ('admin',PASSWORD('centranet’));

Page 10: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

10

Setelah selesai, maka username dan password di atas harus Anda ingat, karena setiap kaliakan masuk pada sistem administrasi harus memasukkan user dan password di atas.

4.3.3 Merancang Tabel Pengunjung

Tabel pengunjung ini akan Kita gunakan untuk mencatat nomor IP komputer klien yangsedang melakukan browsing pada sistem yang Kita bangun. Sehingga setiap orang yangmelakukan browsing atau pemesanan akan memiliki nomor pengenal berupa IP Addresssendiri-sendiri.

Nomor pengenal yang akan Kita simpan pada tabel ini berupa gabungan antara IPAddress dan tanggal sekarang. Pengenal yang disimpan pada tabel ini juga akan digunakansebagai pengenal data pemesanan. Sehingga setiap pengunjung yang melakukan pemilihandata akan dicatat dengan pengenal IP address dan tanggal. Struktur tabel pengunjung yangakan digunakan adalah:

Tabel 4.3 Rancangan Tabel pengunjungKolom Tipe Lebar KeteranganIplocal VARCHAR 25 PRIMARY KEYTanggal DATEJam CHAR 2

Untuk mengetahui lebih jelas dari rancangan tabel pengunjung di atas, maka Kami dapatmendefinisikan kolom dan fungsinya sebagai berikut:

Iplocal : kolom ini akan digunakan untuk mencatat data IP komputer klien dan datatanggal. Bentuk yang akan disimpan di da lam kolom tersebut adalah “ tahun-bulan-tanggal-nomorIP”. Pada kolom ini dibentuk sebagai kunci primer karena tidak mungkinada nomor IP yang sama dalam satu jaringan baik WAN (Wide Area Network) maupunLAN (Local Area Network) dan MAN (Medium Area Network ).

Tanggal : kolom ini akan digunakan untuk merekam tanggal saat pengunjung mengakseswebsite ini.

Jam : kolom ini akan digunakan untuk merekam jam berapa pengunjung mengakseswebsite ini.

Dari bentuk rancangan di atas, Anda dapat merealisasikan ke dalam d atabase MySQL denganmenggunakan perintah berikut:

CREATE TABLE pengunjung ( iplocal varchar(25) NOT NULL default '', tanggal date NOT NULL default '0000 -00-00', jam char(2) NOT NULL default '', PRIMARY KEY (iplocal));

Setelah query ditas dijalankan, maka Anda akan segera memiliki tabel pengunjung denganbentuk deskripsi seperti tampilan berikut:

mysql> DESC pengunjung;+---------+-------------+------+-----+------------+-------+| Field | Type | Null | Key | Default | Extra |+---------+-------------+------+-----+------------+-------+| iplocal | varchar(25) | | PRI | | || tanggal | date | | | 0000 -00-00 | || jam | char(2) | | | | |+---------+-------------+------+-----+------------+-------+

Page 11: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

11

3 rows in set (0.02 sec)

4.3.4 MerancangTabel Merk Handphone

Sistem yang Kita bangun adalah pemesanan barang elektronik berupa handphone atautelepon celluar, maka untuk menyimpan data -data handphone Kita memerlukan tabel y angdapat mengelompokkan barangnya ke dalam beberapa merek.

Tabel yang akan Kita gunakan untuk merekamnya adalah tabel merkhp. Di dalam tabelini semua data yang berkenaan dengan merek handphone yang disediakan pada counter akandisimpan. Berikut adalah rancangan tabel tersebut:

Tabel 4.4 Rancangan Tabel merkhpKolom Tipe Lebar Keterangankd_merk CHAR 4 PRIMARY KEYmerkhp VARCHAR 35keterangan VARCHAR 100

Untuk mengetahui lebih jelas dari rancangan tabel pengunjung di atas, maka Kami dapatmendefinisikan kolom dan fungsinya sebagai berikut:

Kd_merk : kolom ini berfungsi untuk mewakili tabel merkhp dalam relasi database.Sebagai kolom wakil, maka kolom ini dapat Kita pasang dengan tipe Primary Key.Sehingga data-data yang dimasukkan di dalam kolom ini bentuknya unik (tidak kembar).Kemungkinan data yang dimasukkan didalamnya misalnya seperti NOKI (Untuk merkNokia), SEAM (Untuk merk Siemens) dll.

Merkhp : kolom ini digunakan untuk menyimpan nama merk dari data handphoneyang disediakan. Contoh datanya adalah Nokia, Siemens, Motorola, dan lain -lain.

Keterangan : kolom ini digunakan untuk mendeskripsikan secara lengkapmengenai merek handphone yang dipasarkan. Pada kolom ini bisa saja tidak diisi dengandata, akan tetapi untuk kelengkapannya sebaiknya dat anya Kita masukkan.

Setelah memahami struktur merkhp seperti tabel di atas, maka sekarang Anda dapatmenerapkannya pada database MySQL. perintah yang dapat Anda gunakan adalah:

CREATE TABLE merkhp ( kd_merk CHAR(4) NOT NULL default '', merkhp VARCHAR(35) NOT NULL default '', keterangan VARCHAR(100) NOT NULL default '', PRIMARY KEY (kd_merk));

Setelah selesai menjalankan query di atas, maka Anda akan segera mendapatkan tabelbernama merkhp. Perhatikan kondisi strukturnya dengan perintah DESC beri kut:

mysql> DESC merkhp;+------------+--------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+------------+--------------+------+-----+---------+-------+| kd_merk | char(4) | | PRI | | || merkhp | varchar(35) | | | | || keterangan | varchar(100) | | | | |+------------+--------------+------+-----+---------+-------+3 rows in set (0.02 sec)

Page 12: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

12

Sekarang, masukanlah data merk ha ndphone yang disediakan oleh counter Afit’s Phone.Beberapa contoh data yang dapat Anda masukkan adalah dengan menjalankan perintahberikut:

INSERT INTO merkhp VALUES ('SNER','Sony Ericsen', 'Soni er....');INSERT INTO merkhp VALUES ('NOKI','Nokia','');INSERT INTO merkhp VALUES ('SEAM','Seamen','');INSERT INTO merkhp VALUES ('ERIC','Ericson','');INSERT INTO merkhp VALUES ('MOTO','Motorola','');INSERT INTO merkhp VALUES ('SAMS','Samsung','');

Dengan menggunakan perintah di atas, maka pada tabel merkhp sekarang telah terdapat 6baris data. Buktikan dengan menggunakan perintah SELECT seperti tampilan berikut:

mysql> SELECT * FROM merkhp;+---------+--------------+-------------+| kd_merk | merkhp | keterangan |+---------+--------------+-------------+| SNER | Sony Ericsen | Soni er.... || NOKI | Nokia | || SEAM | Seamen | || ERIC | Ericson | || MOTO | Motorola | || SAMS | Samsung | |+---------+--------------+-------------+6 rows in set (0.03 sec)

4.3.5 Merancang Tabel Tipe Handphone

Data terkecil setelah merek adalah tipe. Untuk setiap merek tentunya terdapat banyak sekalitipe handphone yang diproduksinya. Pada sistem yang Kita bangun, data -data tipe handphoneakan Kita simpan pada tabel yang bernama tipehp. Anda dapat melihat rancangannya sepertitabel berikut.

Tabel 4.5 Rancangan Tabel tipehpKolom Tipe Lebar Keteranganid_tipe INT 4 PRIMARY KEY,

AUTO INCREMENT,UNZIGNED ZEROFILL

kd_merk CHAR 4tipehp VARCHAR 45gambar VARCHAR 60harga INT 15stok INT 4ongkoskirim INT 15garansi VARCHAR 25fasilitas VARCHAR 100deskripsi VARCHAR 225

Untuk mengetahui lebih jelas dari rancangan tabel tipehp di atas, maka Kami dapatmendefinisikan kolom dan fungsinya sebagai berikut:

Id_tipe : kolom ini merupakan kolom primer yang datanya dapat mewakili setiap barispada tabel-tabel yang lain. Untuk mempermudah dalam penggunaanya, maka kolom inidijadikan dengan bentuk kunci yang memliki k emampuan sebagai auto increment data.Sehingga walupun datanya tidak dimasukan, maka secara otomatis datanya disi dengandata urut sebelumnya. Parameter UNZIGNED ZEROFILL berfungsi untuk membuat nomordengan digit genap, seperti 0001, 0002, 0003, dll.

Page 13: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

13

Kd_mer : kolom ini merupakan kunci tamu yang berasal dari tabel merkhp. Denganmenggunakan bentuk relasi ini, maka hubungan antara tabel merkhp dengan tipehp adalahOne to Many. Jadi, untuk satu merk memungkinkan memiliki tipe handphone yang lebihdari satu (banyak).

Tipehp : kolom ini digunakan untuk merekam nama tipe handphone. Apabila dilihatdari kedudukannya, kolom ini menjadi informasi utama dari tabel tipehp.

Gambar : kolom ini digunakan untuk merekam data path gambar yang sesuai dengantipe handphone yang dimasukkan. Gambar ini berasal dari file yang masuk pada saatinput dan upload gambar.

Garansi : kolom ini digunakan untuk mencatat lama garansi dari setiap tipe handphoneyang ada. Contoh data yang dimasukan adalah “12 bulan, 14 bulan, dll ).

Fasilitas : kolom ini digunakan untuk merekam data tentang fasilitas yang disediakanoleh tipe handphone. Karena data ini akan ditampilkan ke dalam bentuk web, maka dalammemasukan datanya harus diformat ke dalam bentuk script HTML.

Deskripsi : hampir sama dengan kolom fasilitas. Kolom ini digunakan untukmemberikan keterangan secara lengkap pada tipe handphone yang bersangkutan. Bedanyadengan fasilitas adalah, bahwa pada kolom ini khsusus menjelaskan masalah yang tidakdibahas pada kolom fasilitas. Misalnya sejara h, perkembangan atau perbandingan tipehandphone dengan tipe yang lainnya. Karena datanya sangat banyak, maka Kita dapatmenyetingnya alam tipe data text.

Setelah memahami rancangan struktur tabel tipehp di atas, maka sekarang Anda dapatmenerapkannya pada database MySQL. untuk lebih jelasnya, Anda dapat menggunakanperintah berikut di dalam prompt mysql.

CREATE TABLE tipehp ( id_tipe INT(4) unsigned zerofill NOT NULL auto_increment, kd_merk CHAR(4) NOT NULL default '', tipehp VARCHAR(45) NOT NULL default '', gambar VARCHAR(60) NOT NULL default '', harga INT(15) NOT NULL default '0', stok INT(4) NOT NULL default '0', ongkoskirim INT(15) NOT NULL default '0', garansi VARCHAR(25) NOT NULL default '', fasilitas VARCHAR(200) NOT NULL default '', deskripsi VARCHAR(225) NOT NULL default '', PRIMARY KEY (id_tipe));

dengan perintah di atas, maka sekarang Anda akan memiliki tabel tipehp dengan bentukstruktur berikut:

Page 14: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

14

Untuk kelengkapan datanya, sekarang Anda dapat mema sukkan beberapa data tipehandphone pada tabel tipehp. Perhatikan perintah berikut:

INSERT INTO tipehpVALUES (0001,'MOTO','Motorola v600 Camera Phone','Att600.gif',1670400,2,25000,'12 bulan','<UL>\r\n <LI>Built-In VGA Camera With Zoom \r\n <LI>Bluetooth® Connectivity \r\n <LI>Speaker Phone With Voice Dialing \r\n <LI>Personal Information Manager (PIM) Functionality \r\n <LI>Situational Lights \r\n <LI>MMS - Multi Media Messaging \r\n <LI>Picture Caller ID \r\n <LI>Color Display&nbsp; \r\n <LI>390 Min Talk/175 Hours Standby \r\n <LI>Weight—4.40 Ounces \r\n <LI>Dimensions—3.50\" x 1.90\" x 1.00\" \r\n <LI>1000 Entry Phonebook \r\n <LI>Ringtones &amp; Vibrating Option \r\n <LI>Games—Built-In and Downloadable / Supports Wireless Multiplayer Gaming \r\n </LI></UL>\r\n','');

INSERT INTO tipehpVALUES (0002,'MOTO','Motorola v265','motorola_v265.jpg',960000,5,20000,'10 bulan','<UL>\r\n <LI>4x Digital Zoom With Self-timer \r\n <LI>Advanced voice recognition for hands-free dialing \r\n <LI>Vibrant color internal screen \r\n <LI>Office-quality Speakerphone \r\n <LI>BREW 2.1 for downloadable apps \r\n <LI>200 Min Talk/150 Hours Standby \r\n <LI>Weight—3.77 Ounces \r\n <LI>Dimensions—3.60\" x 1.80\" x 0.90\"</< li> \r\n <LI>500 Entry Phonebook \r\n <LI>64 Chord Polyphonic Ring Tones \r\n <LI>Vibrating Option \r\n <LI>Built-in Alarm </LI></UL>\r\n','');

INSERT INTO tipehpVALUES (0003,'MOTO','Motorola v551 Camera Pho ne','motorola_v551.jpg',672000,10,20000,'12 bulan','<UL>\r\n <LI>Bluetooth Wireless Technology \r\n <LI>Built in Digital VGA Camera \r\n <LI>Record Video Clips \r\n <LI>Quad-Band GSM&nbsp; (World Phone) \r\n <LI>Built In Speaker Phone \r\n <LI>225 Min Talk/225 Hours Standby \r\n

Page 15: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

15

<LI>Weight—4.23 Ounces \r\n <LI>Dimensions—3.50\" x 1.93\" x 0.97\" \r\n <LI>1,000 Entry Phonebook \r\n <LI>Alert Ringer Options—Polyphonic, Customized For Each Caller \r\n <LI>Vibrating Option \r\n <LI>Games </LI></UL>\r\n','');

INSERT INTO tipehpVALUES (0004,'SAMS','Samsung A740 Camera Phone','samsung_a740.jpg',580000,15,30000,'12 bulan','<UL>\r\n <LI>Digital Camera w/ Flash &amp; Self -portrait \r\n <LI>Beautiful Color Displays, Inside and Out \r\n <LI>To-Do List and Voice Memo \r\n <LI>Large Phonebook \r\n <LI>Speaker-independent Hands-free Dialing \r\n <LI>AOL Instant Messenger Built-in \r\n <LI>32 Ringtones &amp; Vibrate Mode \r\n <LI>Picture Caller ID &amp; Ringer Profiles \r\n <LI>Alarm, Calculator &amp; Calendar \r\n <LI>300 Entry Phonebook \r\n <LI>3 Hours Talk/8 Days Standby \r\n <LI>Built-in Memory 1.5 MB \r\n <LI>Dimensions— 3.50\" x 1.80\" x 1.00\" \r\n <LI>Weight—3.46 oz. </LI></UL>\r\n','');

INSERT INTO tipehpVALUES (0005,'SAMS','Samsung e715 Camera Phone','samsung_e715.gif',960000,5,25000,'12 bulan','<UL>\r\n <LI>MMS—with maximum message size of 50KB / Supports Voice Messages \r\n <LI>Built-in Camera with flash, self-timer, multi-shot, CMOS sensor \r\n <LI>GPRS High-speed data \r\n <LI>Java capable \r\n <LI>Color Display \r\n <LI>Wireless Internet Ready \r\n <LI>Battery Type—LiIon 900 mAh \r\n <LI>240 Min Talk/300 Hours Standby \r\n <LI>1000 Entry Phone Book \r\n <LI>40-chord polyphonic ringtones \r\n <LI>Vibrating Option \r\n <LI>Weight—3.35 Ounces \r\n <LI>SMS Messaging—2-Way with T9® Predictive Text

Messaging</LI></UL>\r\n','');

INSERT INTO tipehpVALUES (0006,'NOKI','Nokia 6600 Camera Phone','nokia-6600_large.jpg',2550000,4,30000,'12 bulan','<ul>\r\n <li> Dukungan OS Symbian versi 7.0 </li> \r\n <li>Memory internal sebesar 6MB</li> \r\n <li>Dukungan GPRS dan HSCSD</li>\r\n <li>Mampu merekam momen-momen penting lewat video recordernya</li>\r\n <li>Hasil rekanam lewat video maupun jepretan kamera dapat disimpan langsung \r\n pada mdeia gallery yang sudah disiapkan</li>\r\n <li>Menggunakan WAP versi 2.0 dan JAVA MIDP 2.0</li> \r\n</ul>\r\n','Bagaikan sumber air yang tak pernah kering. Vendor ponsel asal Finlandia ini terus menggulirkan satu demi satu produk ponselnya dengan segudang keragaman. Boleh dibilang hampir

Page 16: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

16

setiap bulannya selalu ada produk baru yang dilempar ke pasar. Seperti kali ini Nokia kembali menggerojoki pasar dengan seri terbarunya Nokia 6600. \r\n\r\nTampil sangat lengkap dan merupakan ponsel pertama Nokia yang mengadopsi layar warna dengan teknologi TFT (Thin Film Transistor) berke dalaman 65 ribu warna. Selain layar warna, teknologi yang telah dibenamkan didalamnya juga termasuk kelas atas dengan versi baru. Sebut saja XTML, Java MIDP 2.0, Mobile Wallet versi 2.0 dan WAP versi 2.0. Ditunjang software Symbian versi 7.0 menjadikan ponsel ini semakin terlihat bobotnya. Di jajaran keluarga Nokia, seri 6600 merupakan ponsel pertama yang menggunakan sistem operating Symbian versi 7.0.\r\n\r\n');

Pada query masukan data tipe handphone di atas, datanya telah Kita format denga n bentukkode HTML. Sehingga dengan format di atas, halaman web dapat menampilkan datanyasesuai dengan format data yang dimasukan. Untuk mempermudah dalam memasukan data diatas, sebaiknya Anda desain dahulu data masukannya menggunakan editor web seperti FrontPages ataupun Dreamweaver.

4.3.6 Merancang Tabel Pembeli

Dalam setiap kali pemesanan dinyatakan berhasil, maka seseorang yang melakukantransaksi harus memasukan data -data pribadinya beserta alamat tempat tinggalnya ataualamat pengiriman datanya. Semua da ta-data yang dimasukkan oleh pelangan tersebut akandisimpan pada tabel pembeli. Rancangan tabel pembeli dapat Anda lihat pada tabel berikut.

Tabel 4.6 Rancangan Tabel pembeliKolom Tipe Lebar Keterangankd_pembeli CHAR 4 PRIMARY KEYiplocal VARCHAR 25nama VARCHAR 35alamat VARCHAR 60kota VARCHAR 60propinsi VARCHAR 60negara VARCHAR 60kdpost INT 5email VARCHAR 40telp_rumah VARCHAR 15telp_hp VARCHAR 15no_rek VARCHAR 15

Untuk mengetahui lebih jelas dari rancangan tabel pembeli di atas, maka Kami dapatmendefinisikan kolom dan fungsinya sebagai berikut:

Kd_pembeli: kolom ini digunakan untuk merekam kode pengenal dari setiappembeli/pelanggan yang telah melakukan transaksi. Kode yang disimpan di dalam kolomini akan dibuat secara otomatis. Jadi, Kita akan membuat script untuk otomatisasi kodepembelian.

Iplocal : adalah kolom yang digunakan untuk merekam data (tanggal+IP Address)yang didapatkan dari tabel pengunjung. Pada tabel pengunjung, data iplocal berasal daripenggabungan antara tanggal pemesanan dan nomor IP komputer client yang digunakan.

Nama : kolom ini digunakan untuk merekam data nama dari pengunjung yang telahberhasil melakukan pembelian.

Page 17: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

17

Alamat : data yang disimpan pada kolom ini akan dijadikan sebagai alamat tuju anpengiriman barang yang dipesan. Jadi, apabila Anda melakukan pemesanan, maka alamatyang akan dijadikan sebagai tujuan pengiriman harus dimasukkan pada kolom ini.

Kota : Anda dapaat menyimpan data kota tempat pembeli tinggal. Sehingga dapatmelakukan pencaraian alamat yang dimasukan dapat diketahui dengan cepat.

Propinsi : data lokasi yang kondisinya di atas kota adalah propinsi. Data yangdimasukkan di dalam tabel ini untuk menjelaskan di propinsi mana letak dari alamat yangakan menjadi target pengiriman.

Negara : kolom ini digunakan untuk merekam data pengenal dari nama negera tempatorang melakukan pemesanan dan target alamat yang dituju untuk pengiriman.

E_mail : kolom ini digunakan sebagai media penyimpanan data konfirmasi berupaalamat E-mail.

Telp_rumah: kolom ini digunakan untuk merekam data alamat konfirmasi berupa nomortelepon rumah.

Telp_hp : merupakan kolom yang digunakan untuk merekam nomor handphone.

No_rek : kolom ini digunakan untuk merekam data nomor rekening yang digunakanuntuk melakukan transaksi pembayaran.

Setelah memahami bentuk rancangan dari tabel pembeli, maka Anda dapatmengimplementasikannya dengan cara menuliskan perintah berikut pada prompt MySQL.

CREATE TABLE pembeli ( kd_pembeli CHAR(4) NOT NULL default '', iplocal VARCHAR(25) NOT NULL default '', nama VARCHAR(35) NOT NULL default '', alamat VARCHAR(60) NOT NULL default '', kota VARCHAR(60) NOT NULL default '', propinsi VARCHAR(60) NOT NULL default '', negara VARCHAR(60) NOT NULL default '', kdpost INT(5) NOT NULL default '0', email VARCHAR(40) NOT NULL default '', telp_rumah VARCHAR(15) NOT NULL default '', telp_hp VARCHAR(15) NOT NULL default '', no_rek VARCHAR(15) NOT NULL default '0', PRIMARY KEY (kd_pembeli));

Setelah perintah di atas berhas il dibuat, maka Anda akan segera mendapatkan bentuktampilan tabel pembeli seperti struktur berikut:mysql> DESC pembeli;+------------+-------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+------------+-------------+------+-----+---------+-------+| kd_pembeli | char(4) | | PRI | | || iplocal | varchar(25) | | | | || nama | varchar(35) | | | | || alamat | varchar(60) | | | | || kota | varchar(60) | | | | || propinsi | varchar(60) | | | | || negara | varchar(60) | | | | || kdpost | int(5) | | | 0 | || email | varchar(40) | | | | || telp_rumah | varchar(15) | | | | || telp_hp | varchar(15) | | | | |

Page 18: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

18

| no_rek | varchar(15) | | | 0 | |+------------+-------------+------+-----+---------+-------+12 rows in set (0.09 sec)

4.3.7 Merancang Tabel Pemesanan

Tabel pemesanan digunakan untuk merekam semua data yang sebelumnya berada didalam tabel kantong. Data yang ditransfer ke dalam tabel pemesanan m emiliki syarat apabilaproses validasi nomor rekening telalah dilakukan dengan sukses. Pada tabel ini, setiap kalimelakukan pemesanan pelanggan akan diberikan nomor faktur pemesanan yang menjadibukti dari pembelian.

Secara fungsi, tabel ini hanya akan me nyimpan data faktur pembelian, kode pembelinyaserta tanggal pembelian saja, sedangkan untuk data barangnya secara lengkap akan disimpanpada tabel det_pesan. Untuk lebih jelasnya, Anda dapat melihat rancangan tabel datapemesanan seperti pada tabel beriku t:

Tabel 4.7 Rancangan Tabel PemesananKolom Tipe Lebar KeteranganNo_faktur CHAR 7 PRIMARY KEYkd_pembeli CHAR 4tanggal DATE

Untuk mengetahui lebih jelas dari rancangan tabel pemesanan di atas, maka Kami dapatmendefinisikan kolom dan fungsinya sebagai berikut:

No_faktur: kolom ini digunakan untuk mencatat nomor faktur atau nomor pembelianyang diberikan kepada pembeli yang telah berhasil melakukan pemesanan. Nomor fakturyang dimasukkan ke dalam tabel ini berasal dari script yang mampu mencipt akan nomorpembelian secara otomatis. Misalnya FAK0001, FAK0002, dll.

Kd_pembeli : kolom ini digunakan untuk merekam data kode pemebeli yang telahmelakukan transaksi pemesanan. Kolom ini berelasi dengan kd_pembeli yang ada didalam tabel pembeli.

Tanggal : kolom ini digunakan untuk mencatat data tanggal saat melakukanpemesanan barang.

Dengan melihat struktur rancangan tabel di atas, Kita dapat menerapkan tabel pemesananpada database MySQL. berikut adalah perintahnya:

CREATE TABLE pemesanan ( id_pesan INT(4) unsigned zerofill NOT NULL auto_increment, kd_pembeli CHAR(4) NOT NULL default '', tanggal DATE NOT NULL default '0000-00-00', PRIMARY KEY (id_pesan));

Setelah Anda menjalankan perintah di atas, maka pada database handphonedb telahbertambah satu tabel dengan nama pemesanan. Perhatikan deskripsi tabel tersebut.

mysql> DESC pemesanan;+------------+---------+------+-----+------------+-------+| Field | Type | Null | Key | Default | Extra |+------------+---------+------+-----+------------+-------+| no_faktur | char(7) | | PRI | | |

Page 19: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

19

| kd_pembeli | char(4) | | | | || tanggal | date | | | 0000 -00-00 | |+------------+---------+------+-----+------------+-------+3 rows in set (0.58 sec)

4.3.8 Merancang Tabel Detail Pesan

Tabel detail pesan (det_pesan) digunakan untuk mendeskripsikan data lengkaphandphone yang telah dipesan. Fungsi utama dari tabel ini adalah menerangkan nomor fakturyang ada di dalam tabel pemesana n. Keterangan lengkap mengenai semua barang yang telahdipesan akan disimpan pada tabel det_pesan ini. Berikut adalah rancangan tabelnya.

Tabel 4.8 Rancangan Tabel det_pesanKolom Tipe Lebar Keteranganid_dpesan INT 4 PRIMARY KEY,

AUTO INCREMENT,UNZIGNED ZEROFILL

No_faktur CHAR 7Id_tipe CHAR 4Jumlah INT 3Totalharga INT 12

Untuk mengetahui lebih jelas dari rancangan tabel det_pesan di atas, maka Kami dapatmendefinisikan kolom dan fungsinya sebagai berikut:

Id_dpesan: kolom ini digunakan untuk kunci utama dari tabel det_pesan. Untukmempermudah memasukkan data, kolom ini dibuat dalam bentuk penambahan secaraotomatis (auto increment).

No_faktur: kolom ini berasal dari tabel pemesanan, sehingga sifat hubungan antara tabelpemesanan dan tabel det_pesan adalah One to Many, artinya dalam satu kali pemesanan(satu nomor faktur) pembeli dapat membeli barang lebih dari satu handphone.

Id_tipe : kolom ini berasal dari tabel tipehp. Fungsi keberadaan kolom ini adalahdigunakan untuk mencatat tipe han dphone apa yang telah dipesan.

Jumlah : kolom ini digunakan untuk merekam data jumlah handphone yang dipesan.Karena data jumlah, maka kolom ini dibuat dalam bentuk integer.

Totharga : kolom ini digunakan untuk menjumlahkan harga total dari barang yangdibeli, total ini didapatkan dari perkalian antara harga barang x dengan jumlah barangyang dipesan.

Sekarang Anda dapat merealisasikan desai tabel det_pesan di atas dengan menggunakanperintah berikut:

CREATE TABLE det_pesan ( id_dpesan INT(6) NOT NULL auto_increment, id_pesan CHAR(4) NOT NULL default '', id_tipe CHAR(4) NOT NULL default '', jumlah INT(3) NOT NULL default '0', totalharga INT(12) NOT NULL default '0', PRIMARY KEY (id_dpesan));

setelah perintah di atas dijalankan, maka Anda akan segera mendapatkan tabel det_pesandengan struktur seperti deskripsi tabel berikut:

Page 20: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

20

mysql> DESC det_pesan;+-----------+---------+------+-----+---------+----------------+| Field | Type | Null | Key | Default | Extra |+-----------+---------+------+-----+---------+----------------+| id_dpesan | int(6) | | PRI | NULL | auto_increment || no_faktur | char(7) | | | | || id_tipe | char(4) | | | | || jumlah | int(3) | | | 0 | || totharga | int(12) | | | 0 | |+-----------+---------+------+-----+---------+----------------+5 rows in set (0.06 sec)

4.3.9 Merancang Tabel Pembayaran

Tabel ini digunakan untuk mend ata pembayaran setiap kali pemesan berhasil melakukantransaksi pemesanan. Data-data yang dimasukkan di dalam tabel ini berupa total uang yangdibayarkan dan waktu saat melakukan transaksi pemesanan. Berikut adalah rancangan daritabel pembayaran.

Tabel 4.9 Rancangan Tabel PembayaranKolom Tipe Lebar Keteranganid_bayar INT 5 PRIMARY KEY,

AUTO INCREMENTId_pesan CHAR 4Totalharga INT 12Totalbayar INT 12Tanggal DATEJam TIME

Untuk mengetahui lebih jelas dari rancangan tabel pembayaran di atas, maka Kami dapatmendefinisikan kolom dan fungsinya sebagai berikut:

Id_bayar : kolom ini merupakan kode kunci dari tabel pembayaran, data yang ada didalam ini dibentuk dengan metode auto increment. Sehingga secara otomatis datanyaakan masuk dengan cara urut data.

Id_pesan : karena tabel ini berfungsi untuk merekam data pembayaran saat pemesanan,maka kolom ini digunakan untuk merelasikan antara proses transaksi pemesanan denganpembayaran.

Totharga : kolom ini digunakan untuk mencatat berapa jumlah h arga total dari semuabarang yang telah dipesan untuk satu kali pemesanan yang telah dilakukan.

Totbayar : kolom ini datanya sama dengan kolom totharga, yaitu jumlah uang yangtelah dibayarkan .

Tanggal : kolom ini digunakan untuk merekam tanggal saat pro ses pembayaranberlangsung. Data yang ada di dalam kolom ini akan sama dengan kolom tanggal yangada di dalam tabel pemesanan.

Jam : kolom ini digunakan untuk merekam jam pembayaran berlangsung.

Dari deskripsi rancangan tabel di atas, maka Anda dapat mener apkannya pada databaseMySQL dengan menggunakan query berikut:

CREATE TABLE pembayaran ( id_bayar INT(5) NOT NULL auto_increment, id_pesan CHAR(4) NOT NULL default '', totalharga INT(12) NOT NULL default '0',

Page 21: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

21

totalbayar INT(12) NOT NULL default '0', tanggal DATE NOT NULL default '0000-00-00', jam TIME NOT NULL default '00:00:00', PRIMARY KEY (id_bayar));

hasil dari query di atas akan tampak seperti bentuk deskripsi tabel berikut:

mysql> DESC pembayaran;+------------+---------+------+-----+------------+----------------+| Field | Type | Null | Key | Default | Extra |+------------+---------+------+-----+------------+----------------+| id_bayar | int(5) | | PRI | NULL | auto_increment || id_pesan | char(4) | | | | || totalharga | int(12) | | | 0 | || totalbayar | int(12) | | | 0 | || tanggal | date | | | 0000-00-00 | || jam | time | | | 00:00:00 | |+------------+---------+------+-----+------------+----------------+6 rows in set (0.05 sec)

4.3.10 Membuat Tabel Kantong Pembelian

Sebelum semua data yang dipesan dimasukkan ke dalam tabel pemesan an, maka data-databarang yang dipilih akan disimpan pada tabel kantong. Dalam hal ini, tabel kantong berfungsisebagai keranjang belanja yang dapat merekam data -data sementara sebelum data barangtersebut dibayar. Rancangan tabel tersebut adalah.

Tabel 4.10 Rancangan Tabel kantongKolom Tipe Lebar Keteranganid_kantong INT 5 PRIMARY KEY,

AUTOINCREMENT

Iplocal VARCHAR 25Id_tipe CHAR 4Jumlah INT 3Tanggal DATEJam CHAR 2

Untuk mengetahui lebih jelas dari rancangan tabel kantong di atas, maka Kami dapatmendefinisikan kolom dan fungsinya sebagai berikut:

Id_kantong : kolom ini akan menjadi kunci utama dari tabel kantong. Untukmempermudah pemasukan data, maka kolom ini dibuat dengan tipe Auto Increment.

Iplocal : kolom ini digunakan untuk me rekam pengenal dari komputer yangdigunakan untuk melakukan transaksi. Sehingga server dapat membedakan setiap datayang dipilih adalah data miliki siapa. Hal ini karena menyangkut sistem yang Kita bangundapat digunakan dalam waktu yang bersamaan oleh ban yak pengguna.

Id_tipe : adalah kolom yang digunakan untuk merekam data kode tipe barang yangdipilih. Kolom ini berasal dari tabel tipehp.

Jumlah : kolom ini berfungsi untuk merekam data jumlah barang yang telah dipesan.Untuk data jumlah, Kita dapat memas ang dengan bentuk Integer.

Tanggal : kolom ini digunakan untuk mencatat waktu tanggal saat Kita memlih baranguntuk dipesan

Jam : digunakan untuk merekam waktu berupa jam saat barang dipilih.

Page 22: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

22

Setelah memahami struktur tabel di atas, maka Anda dapat menerap kan desainya padadatabase MySQL. Berikut adalah querinya:

CREATE TABLE kantong ( id_kantong INT(5) NOT NULL auto_increment, iplocal VARCHAR(25) NOT NULL default '', id_tipe CHAR(4) NOT NULL default '', jumlah INT(3) NOT NULL default '0', tanggal DATE NOT NULL default '0000-00-00', jam CHAR(2) NOT NULL default '', PRIMARY KEY (id_kantong));

Hasil dari query di atas dapat Anda lihat seperti deskripsi tabel berikut:

4.3.11 Membuat Tabel Virtual Bank

Untuk mempermudah membangun sistem pemesanan ini, Kita akan menggunakan tabelbank virtual sebagai media penyimpanan data rekening dan saldonya. Sehingga pada saatmelakukan validasi rekening, program akan melakukan pengecekan data rekening dan saldopada tabel ini. Rancangan dari t abel v_bank dapat Anda lihat pada tabel berikut:

Tabel 4.11 Rancangan Tabel v_bankKolom Tipe Lebar KeteranganNo_rek VARCHAR 15 PRIMARY KEYPin_rek VARCHAR 15Jml_saldo INT 12

Untuk mengetahui lebih jelas dari rancangan tabel v_bank di atas, maka Kami dapatmendefinisikan kolom dan fungsinya sebagai berikut:

No_rek : kolom ini digunakan untuk merekam data nomor rekening. Pemesan dapatmenggunakan semua nomor rekening yang disimpan pada tabel ini apabila pinnya jugamengetahuinya.

Pin_rek : kolom ini digunakan untuk merekam data pin rekening dari nomor rekening.Untuk dapat menggunakan nomor rekening, maka Kita juga harus mengetahui nomor pinyang sesuai.

Jml_saldo : kolom ini digunakan untuk merekam jumlah finansial saldo yang dimilikioleh rekening bersangkutan. Setiap kali pemesanan berlangsung, maka jumlah saldo yangada di dalam kolom ini akan selalu dikurangi dan datanya akan ditambahkan padarekening “centranet” milik Afit’s Phone.

Page 23: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

23

Sekarang Anda dapat menerapkan deskripsi tabel v_bank di atas pada database MySQL.Perintah yang dapat Anda gunakan adalah:

CREATE TABLE v_bank ( no_rek VARCHAR(15) NOT NULL default '', pin_rek VARCHAR(15) NOT NULL default '', jml_saldo INT(10) NOT NULL default '0', PRIMARY KEY (no_rek));

Setelah perintah di atas dijalankan, maka Anda akan memiliki tabel v_bank dengan strukturseperti deskripsi berikut:

mysql> DESC v_bank;+-----------+-------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+-----------+-------------+------+-----+---------+-------+| no_rek | varchar(15) | | PRI | | || pin_rek | varchar(15) | | | | || jml_saldo | int(10) | | | 0 | |+-----------+-------------+------+-----+---------+-------+3 rows in set (0.03 sec)

Untuk mempermudah Anda dalam menggunakan tabel ini, maka sekarang masukkanlahbeberapa rekening dan jumlah saldo masing -masing rekening. Berikut adalah perintahnya:

INSERT INTO v_bank VALUES ('centranet','b unafit',0);INSERT INTO v_bank VALUES ('123456','654321',10000000);INSERT INTO v_bank VALUES ('234567','765432',10000000);

Setelah query input di atas dijalankan, maka kondisi tabel v_bank Anda sekarang akan berisi3 baris data rekening. Perhatikan hasil seleksi berikut:

mysql> select * from v_bank;+-----------+---------+-----------+| no_rek | pin_rek | jml_saldo |+-----------+---------+-----------+| centranet | bunafit | 0 || 123456 | 654321 | 10000000 || 234567 | 765432 | 10000000 |+-----------+---------+-----------+3 rows in set (0.01 sec)

Pada seleksi data di atas, nomor rekening “centranet” merupakan nomor rekening pusat yangdimiliki oleh Afit’s Phone. Pada saat melakukan pemesanan, pelanggan dapat menggunakannomor rekening selain “centranet”, yaitu 123456 atau 23456.Pada saat proses validasi rekening dinyatakan berhasil, maka jumlah saldo pada rekeningyang digunakan akan dikurangi dengan total harga yang harus dibayarkan. Jumlah uangpengurangan tersebut selanjutnya dimasukkan ke dalam nomor rekening pusat dengan alamat“centranet”.4.3.12 Merancang Relasional Tabel

Relasional merupakan hubungan antara beberapa tabel yang saling memiliki keterkaitandata dan tidak dapat dipisah-pisahkan. Tidak ada sebuah sistem informasi ya ng dalampemakaian database yang tidak membutuhkan berelasi dalam basisdatanya. Begitu jugadengan sistem Informasi Toko Online, Kita pasti akan memerlukan sebuah sistem basisdatayang saling berelasi dengan tabel yang lain.

Page 24: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

24

Dari berbagai objek data yang d idapatkan pada subbab sebelumnya, maka, maka kuranglebih Kita akan memerlukan database dengan relasional tabel seperti yang tampak padagambar berikut:

Tabel halamanberita

id_beritajudul_beritadetail_beritatanggal

Tabel Pengunjung

iplocal *tanggaljam

Tabel guestbook

idnamaemailsexkomentardate

Tabel det_pesan

id_dpesan *no_faktur **id_tipe **jumlahtotharga

Tabel kantong

id_kantong *iplocal **id_tipe **jumlahtothargatanggaljam

Tabel merkhp

kd_merk *merkhpketerangan

Tabel pemesanan

no_faktur *kd_pembelitanggal

Tabel pembayaran

id_bayar *id_dpesan **totalhargatotalbayartanggaljam

Tabel tipehp

id_tipe *kd_merk **tipehpgambarhargastokongkoskirimgaransifasilitasdeskripsi

Tabel pembeli

kd_pembeli *iplocal **namaalamatkotapropinsikegarakdpostemailtelp_rumahtelp_hpno_rek **

Tabel v_bank

no_rek *pin_rekjml_saldo

Tabel administrator

user_adminpass_admin

Gambar 4.1 Relasi antar tabelDengan menggunakan struktur tabel yang terb agi-bagi seperti yang tampak pada gambar diatas, maka setiap atribut data dapat dipisah -pisahkan menurut tabel. Sehingga redudansi(perulangan data) atau kesalahan rekaman data tidak terjadi.

4.4 Kebutuhan Database di Luar SistemSelah semua tabel inti di atas, Kita masih memerlukan beberapa tabel yang berkenaan

dengan informasi dan untuk konfirmasi pengunjung kepada counter atau admin pengelola.Sehingga di dalam website yang Kita bangun dapat memiliki informasi berupa news/berita

Page 25: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

25

serta kolom pengisian data konfirmasi atau kritik saran. Berikut adalah yang akandibutuhkan.

4.4.1 Membuat Tabel Guestbook

Tabel questbook digunakan untuk membuat kolom kritik dan saran. Dengan adanyafasilitas ini, maka seorang pengunjung dapat mengirimkan kritik, saran atau konfirmasikepada pengelola berkenaan dengan sistem atau masalah yang dihadapi dalam menggunakanprogram yang ada. Struktur tabel guestbook yang dapat dibuat adalah:

Tabel 4.12 Rancangan Tabel guestbookKolom Tipe Lebar KeteranganId INT 3 PRIMARY KEY,

AUTOINCREMENT

Nama VARCHAR 35Email VARCHAR 60Sex ENUM(‘P’,’W’)Komentar VARCHAR 200Date DATE

Dari struktur tabel di atas, Anda dapat menerapkannya pada database MySQL denganmenggunakan perintah berikut:

CREATE TABLE guestbook ( id INT(3) NOT NULL auto_increment, nama VARCHAR(35) NOT NULL default '', email VARCHAR(60) NOT NULL default '', sex ENUM('P','W') NOT NULL default 'P', komentar VARCHAR(200) NOT NULL default '', date DATE NOT NULL default '0000-00-00', PRIMARY KEY (id));

Setelah perintah di atas dijalankan, maka Anda dapat melihat hasil pembautannya denganmenampilkan deskripsinya. Berikut adalah hasilnya:

4.4.2 Membuat Tabel Berita

Program yang akan Kita buat akan menampilkan beberapa berita. Di dalam kolom b erita,Kita dapat menginformasikan beberapa berita yang berkaitan dengan perkembanganhandphone, informasi internal sistem maupun berita umum yang sedang terjadi. Rancangantabel tersebut adalah:

Page 26: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

26

Tabel 4.13 Rancangan Tabel halamanberitaKolom Tipe Lebar KeteranganId_berita INT 3 PRIMARY KEY,

AUTOINCREMENT

Judul_berita VARCHAR 100Detail_berita TEXTTanggal DATE

Untuk mereaslisasikan rancangan tabel di atas, Anda dapat menggunakan perintah berikut:

CREATE TABLE halamanberita ( id_berita int(3) NOT NULL auto_increment, judul_berita varchar(100) NOT NULL default '', detail_berita text NOT NULL, tanggal date NOT NULL default '0000 -00-00', PRIMARY KEY (id_berita))

Hasil dari queri di atas dapat Anda perlihatkan dengan menggunakan pe rintah DESC. Berikutadalah tampilan deskripsinya:

Sebagai contoh beritannya, sekarang Anda dapat memasukan beberapa baris berita pada tabelhalamanberita dengan menggunakan query berikut:

INSERT INTO halamanberitaVALUES (1,'Gempa Bumi Melanda Nias','Baru beberapa hari masyarakat di Pulai Nias merasakan ketenangan, sekarang ALLAH telah menguji kembali dengan terguncangnya Gempa yang bertenaga 8,2 SL','2005-03-30');

INSERT INTO halamanberitaVALUES (2,'Keterlambatan Bantuan','Sampai berita ini dionlinekan, bantuan yang berasal dari pemerintah masih belum dapat didistirbusikan. Hal ini karena tidak adanya transportasi disana','2005-03-30');

INSERT INTO halamanberitaVALUES (7,'INDOSAT meluncurkan Mentari Hebat','Mentari hebat merupakan sebuah trobosan baru yang dikeluarkan oleh mentari dalam dalam melayani pelanggannya. Dengan menggunakan mentari hebat, maka pelanggan dapat melakukan call dengan biaya hemat sampai dengan 60%.', '2005-04-07');

Page 27: Panduan Web Toko Online - bunafit-komputer.combunafit-komputer.com/download/Web/Toko Online - ERD dan Analisis... · Sistem Informasi Penjualan HaPe Secara Online ... sehingga pengunjung

27

CONTOH EMAIL PEMESANAN

TUJUAN (To) :

SUBJEK(Subject)

: Pesan SC PHP : Toko Herbal

ISI SURAT : SURAT PESANAN DI SINI ......

IDENTITAS PEMESAN (Untuk Arsip) :1. Nama lengkap : ?2. Kuliah di mana : ?3. Nomor HP aktif (Untuk unik transfer) : ?

Untuk mendapatkan No Rekening transfer, silahkan kirim email seperti contoh di atas. Atau,

kirim SMS ke nomor 0838 6716 1314 .

Contoh pesan SMS v1 : "planetKode, minta No Rekening buat p embayaranSc PHP Web Toko HaPe v1 phpTriad ". Kami akan segera membalas.

Contoh pesan SMS v2 : "planetKode, minta No Rekening buat pembayaranSc PHP Web Toko HaPe v2 XAMPP ". Kami akan segera membalas.