Spesifikasi perangkat lunak yang digunakan dalam membangun aplikasi
E-Commerce berbasis web di toko EN COLECTION dapat dilihat pada Tabel 4.2
Tabel 4.2 Perangkat Lunak Yang Digunakan
No Perangkat Lunak Keterangan
1 Sistem Operasi Windows XP SP3
2 Web Browser Mozilla Firefox, Google Chrome
3 Bahasa Pemrograman PHP
4 DBMS MySQL
5 Code Editor Adobe Dreamweaver CS3
6 Modeler Microsoft Visio 2007
4.3Implementasi Database
Pembuatan database dilakukan dengan menggunakan aplikasi DBMS
MySQL. Implementasi database dalam bahasa SQL adalah sebagai berikut:
4.3.1Implementasi Tabel Barang
Tabel 4.3 Implementasi Tabel Barang CREATE TABLE IF NOT EXISTS `barang` (
`id_barang` int(11) NOT NULL AUTO_INCREMENT, `id_kategori` int(11) NOT NULL,
`nama_barang` varchar(50) NOT NULL, `harga` double NOT NULL,
`berat` float NOT NULL, `diskon` float NOT NULL, `deskripsi` text NOT NULL,
`tgl_posting` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id_barang`),
UNIQUE KEY `nama_barang` (`nama_barang`), KEY `id_kategori` (`id_kategori`)
4.3.2Implementasi Tabel Detail Barang
Tabel 4.4 Implementasi Tabel Detail Barang CREATE TABLE IF NOT EXISTS `detail_barang` (
`id_detail_barang` int(11) NOT NULL AUTO_INCREMENT, `id_barang` int(11) NOT NULL,
`id_warna` int(11) NOT NULL, `id_ukuran` int(11) NOT NULL, `stok` int(11) NOT NULL,
KEY `id_detail_barang` (`id_detail_barang`), KEY `id_barang` (`id_barang`),
KEY `id_warna` (`id_warna`), KEY `id_ukuran` (`id_ukuran`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=26 ;
4.3.3Implementasi Tabel Detail Pesanan
Tabel 4.5 Implementasi Tabel Detail Pesanan CREATE TABLE IF NOT EXISTS `detail_pesanan` (
`id_detail_pesanan` int(11) NOT NULL AUTO_INCREMENT, `id_pesanan` varchar(12) NOT NULL,
`id_detail_barang` int(11) NOT NULL, `harga` double NOT NULL,
`diskon` float NOT NULL, `jumlah` int(11) NOT NULL,
PRIMARY KEY (`id_detail_pesanan`),
KEY `id_pesanan` (`id_pesanan`,`id_detail_barang`), KEY `id_detail_barang` (`id_detail_barang`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=45 ;
4.3.4Implementasi Tabel Detail Retur
Tabel 4.6 Implementasi Tabel Detail Retur CREATE TABLE IF NOT EXISTS `detail_retur` (
`id_detail_retur` int(11) NOT NULL AUTO_INCREMENT, `id_retur` int(11) NOT NULL,
`id_detail_pesanan` int(11) NOT NULL, `jumlah` int(11) NOT NULL,
`alasan` varchar(50) NOT NULL, PRIMARY KEY (`id_detail_retur`), KEY `id_retur` (`id_retur`),
KEY `id_detail_pesanan` (`id_detail_pesanan`)
4.3.5Implementasi Tabel Kategori
Tabel 4.7 Implementasi Tabel Kategori CREATE TABLE IF NOT EXISTS `kategori` (
`id_kategori` int(11) NOT NULL AUTO_INCREMENT, `kategori` varchar(50) NOT NULL,
PRIMARY KEY (`id_kategori`),
UNIQUE KEY `nama_kategori` (`kategori`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=8 ;
4.3.6Implementasi Tabel Komentar
Tabel 4.8 Implementasi Tabel Komentar CREATE TABLE IF NOT EXISTS `komentar` (
`id_komentar` int(11) NOT NULL AUTO_INCREMENT, `id_barang` int(11) NOT NULL,
`id_pelanggan` int(11) NOT NULL, `komentar` text NOT NULL,
`ditampilkan` tinyint(1) NOT NULL, PRIMARY KEY (`id_komentar`),
KEY `id_barang` (`id_barang`), KEY `id_pelanggan` (`id_pelanggan`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
4.3.7Implementasi Tabel Kota
Tabel 4.9 Implementasi Tabel Kota CREATE TABLE IF NOT EXISTS `kota` (
`id_kota` int(11) NOT NULL, `id_provinsi` int(11) NOT NULL, `nama_kota` varchar(21) NOT NULL, PRIMARY KEY (`id_kota`),
KEY `id_provinsi` (`id_provinsi`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
4.3.8Implementasi Jasa Pengiriman
Tabel 4.10 Implementasi Tabel Jasa Pengiriman CREATE TABLE IF NOT EXISTS `jasa_pengiriman` ( `id_jasa_pengiriman` int(11) NOT NULL,
`nama_jasa_pengiriman` varchar(21) NOT NULL, `url_pengiriman` varchar(250) NOT NULL, PRIMARY KEY (`id_jasa_pengiriman`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
4.3.9Implementasi Tabel Kalender
Tabel 4.11 Implementasi Tabel Kalender CREATE TABLE IF NOT EXISTS `kalender` (
`id_kalender` int(11) NOT NULL AUTO_INCREMENT, `id_admin` int(11) NOT NULL,
`tanggal` date NOT NULL,
`keterangan` varchar(100) NOT NULL, PRIMARY KEY (`id_kalender`),
KEY `id_admin` (`id_admin`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=6 ;
4.3.10Implementasi Tabel Pelanggan
Tabel 4.12 Implementasi Tabel Pelanggan CREATE TABLE IF NOT EXISTS `pelanggan` (
`id_pelanggan` int(11) NOT NULL AUTO_INCREMENT, `id_kota` int(11) NOT NULL,
`nama` varchar(50) NOT NULL, `password` varchar(41) NOT NULL, `telepon` varchar(15) NOT NULL, `alamat` varchar(50) NOT NULL, `kodepos` varchar(5) NOT NULL, `email` varchar(30) NOT NULL, `fax` varchar(15) NOT NULL,
`tanggal_daftar` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, `diaktifkan` tinyint(1) NOT NULL,
PRIMARY KEY (`id_pelanggan`), UNIQUE KEY `email` (`email`), KEY `id_kota` (`id_kota`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=17 ;
4.3.11Implementasi Tabel Pembayaran
Tabel 4.13 Implementasi Tabel Pembayaran CREATE TABLE IF NOT EXISTS `pembayaran` (
`id_pembayaran` int(11) NOT NULL AUTO_INCREMENT, `id_pesanan` varchar(12) NOT NULL,
`nama` varchar(50) NOT NULL,
`jenis_bayar` varchar(50) NOT NULL, `jumlah` double NOT NULL,
`tujuan` varchar(50) NOT NULL, `tanggal_bayar` date NOT NULL, PRIMARY KEY (`id_pembayaran`), KEY `id_pesanan` (`id_pesanan`)
4.3.12Implementasi Tabel Pesanan
Tabel 4.14 Implementasi Tabel Pesanan CREATE TABLE IF NOT EXISTS `pesanan` (
`id_pesanan` varchar(12) NOT NULL, `id_pelanggan` int(11) NOT NULL, `id_ongkos_kirim` int(11) NOT NULL,
`tanggal_pesan` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`tanggal_kadaluarsa` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
`nama` varchar(50) NOT NULL, `alamat` varchar(200) NOT NULL, `kode_pos` varchar(6) NOT NULL, `sub_total` double NOT NULL, `ongkos` double NOT NULL,
`total_ongkos` double NOT NULL, `total_bayar` double NOT NULL, `komentar` text,
`status` tinyint(1) NOT NULL, PRIMARY KEY (`id_pesanan`),
KEY `id_pelanggan` (`id_pelanggan`), KEY `id_ongkos_kirim` (`id_ongkos_kirim`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
4.3.13Implementasi Tabel Transaksi
Tabel 4.15 Implementasi Tabel Transaksi CREATE TABLE IF NOT EXISTS `transaksi` (
`id_transaksi` int(11) NOT NULL AUTO_INCREMENT, `id_pesanan` varchar(12) NOT NULL,
`jenis_bayar` varchar(21) NOT NULL, `jumlah` double NOT NULL,
`tujuan` varchar(50) NOT NULL, `tanggal_bayar` date NOT NULL, PRIMARY KEY (`id_transaksi`), KEY `id_pesanan` (`id_pesanan`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=13 ;
4.3.14Implementasi Tabel Provinsi
Tabel 4.16 Implementasi Tabel Provinsi CREATE TABLE IF NOT EXISTS `provinsi` (
`id_provinsi` int(11) NOT NULL,
`nama_provinsi` varchar(21) NOT NULL, PRIMARY KEY (`id_provinsi`)
4.3.15Implementasi Tabel Rating
Tabel 4.17Implementasi Tabel Rating CREATE TABLE IF NOT EXISTS `rating` (
`id_rating` int(11) NOT NULL AUTO_INCREMENT, `id_barang` int(11) NOT NULL,
`id_pelanggan` int(11) NOT NULL, `nilai` tinyint(1) NOT NULL, PRIMARY KEY (`id_rating`), KEY `id_barang` (`id_barang`), KEY `id_pelanggan` (`id_pelanggan`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=9 ;
4.3.16Implementasi Tabel Retur
Tabel 4.18 Implementasi Tabel Retur CREATE TABLE IF NOT EXISTS `retur` (
`id_retur` int(11) NOT NULL AUTO_INCREMENT, `id_pesanan` varchar(12) NOT NULL,
`tanggal_retur` timestamp NOT NULL DEFAULT
CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, `resi_retur` varchar(13) NOT NULL,
`resi_kirim` varchar(13) NOT NULL, `status` tinyint(1) NOT NULL, PRIMARY KEY (`id_retur`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=7 ;
4.3.17Implementasi Tabel Paket Pengiriman
Tabel 4.19 Implementasi Paket Pengiriman CREATE TABLE IF NOT EXISTS `paket_pengiriman` ( `id_paket_pengiriman` int(11) NOT NULL,
`id_jasa_pengiriman` int(11) NOT NULL,
`nama_paket_pengiriman` varchar(21) NOT NULL, PRIMARY KEY (`id_paket_pengiriman`),
KEY `id_jasa_pengiriman` (`id_jasa_pengiriman`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
4.3.18Implementasi Tabel Pengiriman
Tabel 4.20 Implementasi Tabel Pengiriman CREATE TABLE IF NOT EXISTS `pengiriman` (
`id_pengiriman` int(11) NOT NULL AUTO_INCREMENT, `id_pesanan` varchar(12) NOT NULL,
`tanggal_kirim` date NOT NULL, `tanggal_terima` date NOT NULL,
`no_resi` varchar(13) NOT NULL, `status` tinyint(1) NOT NULL, PRIMARY KEY (`id_pengiriman`), KEY `id_pesanan` (`id_pesanan`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=14 ;
4.3.19Implementasi Tabel Pembayaran
Tabel 4.21 Implementasi Tabel Pmbayaran CREATE TABLE IF NOT EXISTS `pembayaran` (
`id_pembayaran` int(11) NOT NULL AUTO_INCREMENT, `id_pesanan` varchar(12) NOT NULL,
`nama` varchar(50) NOT NULL,
`jenis_bayar` varchar(50) NOT NULL, `jumlah` double NOT NULL,
`tujuan` varchar(50) NOT NULL, `tanggal_bayar` date NOT NULL, PRIMARY KEY (`id_pembayaran`), KEY `id_pesanan` (`id_pesanan`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=17 ;
4.3.20Implementasi Tabel Ongkos Kirim
Tabel 4.22 Implementasi Tabel Ongkos Kirim CREATE TABLE IF NOT EXISTS `ongkos_kirim` ( `id_ongkos_kirim` int(11) NOT NULL,
`id_paket_pengiriman` int(11) NOT NULL, `id_kota` int(11) NOT NULL,
`ongkos` double NOT NULL,
PRIMARY KEY (`id_ongkos_kirim`), KEY `id_kota` (`id_kota`),
KEY `id_paket_pengiriman` (`id_paket_pengiriman`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;