SlideShare a Scribd company logo
1 of 38
Download to read offline
In Country Training 2002
E-Commerce Hal. 1
Electronic Commerce
(E-Commerce)
In Country Training 2002
In Country Training 2002
E-Commerce Hal. 2
Oleh :
Tessy Badriyah
Nana Ramadijanti
POLITEKNIK ELEKTRONIKA NEGERI SURABAYA
INSTITUT TEKNOLOGI SEPULUH NOPEMBER
Surabaya, Pebruari 2002
In Country Training 2002
E-Commerce Hal. 3
DAFTAR ISI
Bab I : E-Commerce 1
1.1. Pendahuluan 4
1.2. Mekanisme E-Commerce 5
1.3. Software untuk Pembuatan E-Commerce 5
1.4. Mekanisme Pembayaran untuk E-Commerce 6
1.5. Keamanan di E-Commerce 7
1.6. Standart Enkripsi pada E-Commerce 9
1.7. Standart Teknologi untuk E-Commerce 5
1.8. Memulai Berjualan secara On-line 6
1.9. Mensetup sebuah E-Commerce 7
1.9.1. Keserderhanaan dan Kemudahan 9
1.9.2. Apa yang akan dijual dan bagaimana caranya ? 5
1.9.3. Pemenuhan Ekspektasi Pelanggan 6
1.9.4. Integrasi dengan sistem yang Sudah Ada 7
1.9.5. Pendekatan On-line 9
1.9.6. Pendekatan Batch/Off-line 5
1.10. Masa Depan E-Commerce dan Dampak Bisnisnya 6
In Country Training 2002
E-Commerce Hal. 4
BAB I
E-Commerce
Pembahasan mengenai e-Commerce meliputi 2 (dua) Bab. Tujuan pembelajaran pada
Bab 1 ini adalah :
Memberikan pengertian dan pemahaman mengenai konsep dasar dari e-Commerce
Kemudian pada bab selanjutnya akan dijelaskan mengenai desain dan implementasi e-
Commerce dengan dukungan bahasa pemrograman script PHP dan database MySQL.
1.1. Pendahuluan
Ecommerce, atau Electronic Commerce merupakan salah satu teknologi yang
berkembang pesat dalam dunia Internet. Penggunaann sistem E-Com, begitu biasanya E-
commerce disingkat, menguntungkan banyak pihak, baik pihak konsumen, maupun pihak
produsen dan penjual (retailer). Bagi pihak konsumen, menggunakan E-Com dapat membuat
waktu berbelanja menjadi singkat. Selain itu, harga barang-barang yang dijual melalui E-Com
biasanya lebih murah dibandingkan dengan harga di toko, karena jalur distribusi dari produsen
barang ke pihak penjual lebih singkat dibandingkan dengan toko konvensional. Online
shopping menyediakan banyak kemudahan dan kelebihan jika dibandingkan dengan cara
belanja yang konvensional. Selain bisa menjadi lebih cepat, di internet telah tersedia hampir
semua macam barang yang biasanya dijual secara lengkap. Selain itu, informasi tentang
barang jualan tersedia secara lengkap, sehingga walaupun proses pembelian dilakukan secara
on-line, akan tetapi banyak informasi penting didapatkan untuk suatu produk yang akan dibeli
1.2. Mekanisme E-Commerce
Pembeli yang hendak memilih belanjaan yang akan dibeli bisa menggunakan ‘shopping
cart’ untuk menyimpan data tentang barang-barang yang telah dipilih dan akan dibayar.
Konsep ‘shopping cart’ ini meniru kereta belanja yang biasanya digunakan orang untuk
berbelanja di pasar swalayan. ‘Shopping cart’ berupa formulir dalam web, dan dapat dibuat
dengan pemrograman script (misal : PHP) dan database (misal : MySQL). Barang-barang yang
sudah dimasukkan ke shopping cart masih bisa di-cancel, jika pembeli berniat untuk
membatalkan membeli barang tersebut.
Jika pembeli ingin membayar untuk barang yang telah dipilih, ia harus mengisi form
transaksi. Form transaksi ini menanyakan identitas pembeli serta nomor kartu kredit. Karena
informasi ini bisa disalahgunakan jika jatuh ke tangan yang salah, maka pihak penyedia jasa e-
In Country Training 2002
E-Commerce Hal. 5
commerce telah mengusahakan agar pengiriman data-data tersebut berjalan secara aman,
dengan menggunakan standar security tertentu.
Setelah pembeli mengadakan transaksi, retailer akan mengirimkan barang yang
dipesan melalui jasa pos langsung ke rumah pembeli. Beberapa cybershop menyediakan
fasilitas bagi pembeli untuk mengecek status barang yang telah dikirim melalui internet.
1.3. Software untuk Pembuatan E-Commerce
Dalam pembuatan ‘toko’ di internet (atau biasa disebut dengan istilah cybershop),
diperlukan software-software tertentu untuk mengatur inventarisasi barang dan proses
transaksi jual beli barang. Di pasaran, sudah terdapat software-software khusus untuk
membuat sistem E-Com, seperti Intershop Online keluaran Intershop Communications,
Merchant Server keluaran Microsoft Corp, dan Electronic Commerce Suite keluaran iCat.
Software-software itu khusus dijual kepada pihak-pihak yang berniat membangun cybershop,
dan dijual dengan harga ribuan dollar. Pada dasarnya software-software untuk pembuatan E-
Commerce ini menggunakan database untuk penyusunan katalog. Database misalnya DB2,
Oracle, atau MySQL.
1.4. Mekanisme Pembayaran untuk E-Commerce
Untuk pembayaran, e-commerce menyediakan banyak alternatif. Bentuk / cara
pembayaran yang digunakan di Internet umumnya bertumpu pada sistem keuangan nasional,
tapi ada juga beberapa yang mengacu kepada keuangan lokal / masyarakat.
Ada beberapa metoda pembayaran yang dapat digunakan, yaitu:
• Sistem pembayaran kartu kredit on-line.
• Sistem pembayaran check on-line.
Secara umum ada beberapa mekanisme pembayaran yang berkembang terutama yang
berkaitan dengan uang yang sifatnya lokal. Beberapa di ant ara-nya adalah:
• LETS http://www.gmlets.u-net.com/ sebuah model dari sistem kredit yang dibangun
masyarakat cyber.
• Security First Network Bank http://www.sfnb.com/ sebuah b ank di Internet.
• Jika ada perasaan tidak aman dalam melakukan transaksi online, maka sistem secure800
http://www.secure800.com/ dapat membantu mekanisme pembayaran melalui telepon bagi
pembelian yang dilakukan secara online.
In Country Training 2002
E-Commerce Hal. 6
Selanjutnya mekanisme pembayaran online yang terkait dengan sistem kartu kredit :
o Jika anda menjalankan cybercash server http://www.cybercash.com, maka orang akan
mendownload dompet cybercash, dan kemudian mereka akan mengirimkan nomor kartu
kredit mereka yang di enkripsi melalui Internet.
• Cybersource http://www.cybersource.com/ yang dipimpin oleh orang-orang yang
menjalankan software.net http://www.software.net/ - juga memberikan jasa untuk
pemrosesan kartu kredit real-time http://www.cybersource.com/service/ccard.htm.
Selanjutnya yang masih terkait dengan metoda pembayaran yang melibatkan pihak ke tiga
sebagai perantara adalah dengan menggunakan metoda check online. Diantaranya adalah:
• CheckFree http://www.checkfree.com/ adalah sebuah sistem pembayaran secara elektronik
yang telah dikembangkan sejak 1981, sistem tersebut mempunyai sebuah pembayaran
tanpa check (checkless) yang dapat digunakan dari sebuah PC.
• PaymentNet http://www.paymentnet.com/Home.htm akan membantu anda dalam
menghandle transaksi melalui kartu kredit maupun kartu debit secara online.
Referensi lebih lanjutnya untuk mekanisme pembayaran pada e-commerce dapat dibaca di
beberapa tempat seperti:
• Tulisan Roy Davis tentang Money--Past, Present, and Future dari
http://www.ex.ac.uk/~RDavies/arian/money.html.
• Tulisan tentang payment mechanisms designed for the internet yang di publihasikan oleh
Network Payment Mechanisms and Digital Cash page bisa diperoleh di
http://ganges.cs.tcd.ie/mepeirce/Project/oninternet.html.
• http://www.transaction.net/
1.5. Keamanan di E-Commerce
Banyak pendapat yang mengatakan bahwa transaksi di Internet tidak aman karena
banyaknya kasus tentang pembobolan sistem keamanan Internet. Hal yang paling berat adalah
meyakinkan para pembeli bahwa e-commerce adalah aman untuk mereka. Sebenarnya
sebagian besar dari pencurian kartu kredit terjadi di sebabkan oleh pegawai sales yang
menghandle nomor kartu kredit tersebut. Sistem e-commerce sebetulnya menghilangkan
keinginan mencuri tadi dengan cara meng-enkripsi nomor kartu kredit tersebut di server
perusahaan.
Para pakar e-commerce mengatakan bahwa transaksi e-commerce jauh lebih aman
daripada pembelian kartu kredit biasa. Karena setiap kali dilakukan pembayaran dengan
menggunakan kartu kredit – dan setiap kali resi pembelian kartu kredit tersebut dibuang –
maka sebetulnya telah terbuka informasi kartu kredit tersebut dapat dicuri. Transaksi dengan
In Country Training 2002
E-Commerce Hal. 7
kartu kredit dapat di enkripsi menggunakan Secure Sockets Layer (SSL)
http://www.builder.com/Business/Ecommerce20/ss05.html, sebuah protokol yang akan
mengamankan saluran komunikasi ke server, memproteksi data pada saat dikirimkan melalui
Internet. SSL menggunakan public key encryption, salah satu metoda enkripsi yang cukup kuat
saat ini. Untuk melihat apakah sebuah Web site di amankan menggunakan SSL dapat dilihat
pada awal URL digunakan https bukan http.
Pembuat browser dan perusahaan kartu kredit saat ini mempromosikan sebuah standar
tambahan bagi keamanan di namakan Secure Electronic Transaction (SET)
http://www.builder.com/Business/Ecommerce20/ss05.html. SET akan mengenkode nomor
kartu kredit yang ada di server vendor di Internet – yang hanya dapat membaca nomor kartu
kredit tersebut hanya bank dan perusahaan kartu kredit – artinya pegawai vendor / merchant
tidak bisa membaca sama sekali sehingga kemungkinan terjadi pencurian oleh vendor menjadi
tidak mungkin.
Dalam prakteknya, berbelanja di web memerlukan koneksi ke internet dan browser
yang mendukung transaksi elektronik yang aman, seperti Microsoft Internet Explorer dan
Netscape Navigator. Microsoft dan Netscape, bekerja sama dengan perusahaan kartu kredit
(Visa dan MasterCard), serta perusahaan-perusahaan internet security (seperti VeriSign), telah
membuat standar enkripsi khusus yang membuat transaksi melalui web menjadi sangat aman.
Yang menandakan suatu retailer web site aman atau tidak adalah adanya tanda khusus
yang muncul di status bar di bagian bawah layar browser. Pada IE, tanda yang muncul adalah
tanda gembok terkunci di pojok kanan status bar. Sedangkan pengguna Netscape Navigator,
akan melihat tanda kunci di pojok kiri status bar. Jika tanda-tanda tersebut muncul, berarti
Anda sedang ter-connect pada server yang aman. Walaupun begitu, karena standar yang
dipakai untuk secure connection ini relatif baru, belum semua cybershop menggunakan standar
ini.
Kumpulan dari banyak cybershop yang telah terintegrasi dinamakan cybermall.
Beberapa cybermall akan mengecek terlebih dahulu legitimasi dari cybershop yang akan
masuk, sehingga dapat menghindari adanya cybershop yang palsu. Beberapa cybermall juga
menyediakan jasa-jasa tambahan, seperti billing atau tagihan yang tersentralisasi, menjadikan
proses belanja menjadi lebih mudah dan aman.
1.6. Standart Enkripsi pada e-Commerce
Standar enkripsi yang digunakan dalam e-commerce pada saat ini adalah SET (Secure
Electronic Transaction). Selain digunakan untuk pembayaran dengan credit card, SET juga
digunakan untuk pembayaran dengan smartcard. Dengan menggunakan SET, kerahasiaan
informasi custo mer (berupa nama dan nomor kartunya) bisa dijaga. SET juga bisa menjaga
autotentifikasi atau identitas penjual dan customer, sehingga tidak bisa disalahgunakan oleh
sembarang orang.
In Country Training 2002
E-Commerce Hal. 8
1.7. Standart Teknologi untuk E-Commerce
Di samping berbagai standar yang digunakan di Intenet, e-commerce juga
menggunakan standar yang digunakan sendiri, umumnya digunakan dalam transaksi bisnis-ke-
bisnis. Beberapa diantara yang sering digunakan adalah:
Secure Socket Layer (SSL): Protokol ini di disain untuk membangun sebuah saluran
yang aman ke server. SSL menggunakan teknik enkripsi public key untuk memproteksi data
yang di kirimkan melalui Internet. SSL dibuat oleh Netscape tapi sekarang telah di publikasikan
di public domain.
Secure Electronic Transactions (SET): SET akan mengenkodekan nomor kartu kredit
yang di simpan di server merchant. Standar ini di buat oleh Visa dan MasterCard, sehingga
akan langsung di dukung oleh masyarakat perbankan. Ujicoba pertama kali dari SET di e-
commerce dilakukan di Asia.
1.8. Memulai Berjualan secara On-Line
Saat ini banyak sekali produk-produk yang memungkinkan kita mensetup situs e-
commerce dan langsung berjualan dalam waktu beberapa hari / minggu, mulai dari yang
simple, murah hingga mahal dan kompleks.
Para pengusaha kecil mungkin harus melihat jauh diluar ISP-nya untuk melihat solusi-
solusi murah tadi. Contohnya, Forman interactive http://www.formaninteractive.com/
memberikan produk Internet creator seharga kurang dari US$150. Perangkat lunak tersebut
menggunakan beberapa wizard untuk menolong anda membuat halaman web yang aman untuk
menjual produk anda. Bahkan jika meletakan halaman web tersebut di server Forman, mereka
akan membantu menangani pembayaran melalui CheckFree http://www.checkfree.com/.
Solusi-solusi yang murah dan menarik ini juga tampaknya juga diberikan oleh
indosatcom sebuah anak perusahaan dari Indosat yang memfokuskan diri di e-commerce.
Salah satu produk indosatcom adalah EDIWeb menjadi menarik untuk para pengusaha kecil
yang hanya bermodal akses ke WARNET. Telkom juga meluncurkan plasa.com belum terhitung
inisiatif lain seperti Wasantara dll.
Untuk mulai berjualan secara on-line, terlebih dahulu terdapat beberapa istilah yang perlu
diketahui beberapa diantara-nya adalah:
• Digital atau electronic cash: juga dikenal sebagai e-cash, istilah ini ditujukan untuk
beberapa pola / metoda yang memungkinkan seseorang untuk membeli barang atau
jasa dengan cara mengirimkan nomor dari satu komputer ke komputer yang lain. Salah
satu kelebihan yang dibawa oleh digital cash adalah sifatnya yang anonymous dan
dapat di pakai ulang, seperti uang cash biasa. Hal ini merupakan perbedaan utama
antara e-cash dengan transaksi kartu kredit melalui Internet. Untuk informasi lebih
In Country Training 2002
E-Commerce Hal. 9
lanjut dapat dilihat di PC Webopaedia http://www.sandybay.com/pc-
web/digital_cash.htm.
• Digital money: adalah terminologi global untuk berbagai e-cash dan mekanisme
pembayaran elektronik di Internet.
• Disintermediation: adalah proses untuk memotong jalur perantara. Kira-kira pada saat
perusahaan yang berbasiskan web membypass kanal retail tradisional dan menjual
secara langsung ke pelanggan / pembeli, maka perantara tradisional – seperti toko dan
jasa mail order – akan kehilangan pekerjaan.
• Electronic checks: pada saat ini sedang di ujicoba oleh CyberCash
http://www.cybercash.com/
• Electronic wallet : Pola pembayaran – seperti CyberCash Internet Wallet
http://www.cybercash.com/, akan menyimpan nomor kartu kredit anda di harddisk
anda dalam bentuk terenkripsi yang aman.
• Extranet: adalah sebuah kelanjutan dari intranet perusahaan yang mengkaitkan
jaringan internal satu perusahaan dengan jaringan internal supplier mereka maupun
pelanggan mereka. Dengan cara itu sangat mungkin untuk mengembangkan aplikasi e-
commerce yang memungkinkan menyambungkan semua aspek bisnis, dari proses
pemesanan hingga pembayaran.
• Micropaymet adalah transaksi dalam jumlah kecil antara beberapa ratus rupiah hingga
puluhan ribu rupiah, misalnya untuk mengambil / mengakses grafik, game maupun
informasi. Pay-as-you-go micropayment seharusnya akan membuat revolusi di dunia e-
commerce. Contohnya ESPN SportsZone http://espn.sportszone.com/ menggunakan
CyberCoin untuk membayar US$1 untuk mengaskses situs mereka selama satu hari –
tanpa perlu membayar penuh langganan bulanan.
1.9. Mensetup sebuah e-Commerce
Seperti dijelaskan sebelumnya, sebuah e-commerce berbeda dengan situs web biasa
karena perbedaan objektif diantara mereka. Yang satu diarahkan untuk memperoleh
pemasukan secara langsung dari penjualan, sedang sebuah situs web tradisional lebih di
orientasikan kepada komunikasi. Hal ini selanjutnya akan menyebabkan beberapa perbedaan
teknis dalam mensetup sebuah situs. Beberapa hal yang berkaitan dengan e-commerce akan
dicoba dibahas berikut ini.
In Country Training 2002
E-Commerce Hal. 10
1.9.1. Kesederhanaan dan Kemudahan
Bila dibandingkan sebuah katalog dengan brosur atau bentuk media marketing lainnya
yang biasa digunakan di dunia konvensional. Katalog biasanya mempunyai struktur yang
berbeda. Katalog biasanya mempunyai index untuk kecepatan akses ke informasi, usaha yang
serius biasanya diberikan untuk menjamin agar layout sebuah katalog menjadi jelas dan mudah
dibaca. Secara alamiah, katalog lebih repetitif - ada elemen-elemen grafik yang di ulang di
setiap halaman untuk memberikan petunjuk kepada pembaca halaman web.
Hal yang digunakan dalam katalog di dunia konvensional akan digunakan juga di dunia
elektronik. Mereka mempunyai tujuan yang sangat berbeda dengan situs web yang murni untuk
public relation, hal tersebut harus nampak pada layout situs. Situs dapat menggunakan pola
situs multimedia seperti animasi, suara, dan aplet Java. Karena sebuah e-commerce harus
melayani pembeli yang akan membeli secara langsung, maka sebuah e-commerce harus bersih
dan effisien agar dapat dibaca dengan cepat. Yang menjadi penekanan adalah kejelasan dan
kemudahan penggunaan. Grafik sebaiknya kecil dan repetitif. Penggunaan tombol dan label
harus jelas dan mudah dimengerti. Tombol dengan teks lebih disukai. Pemrograman HTML
harus dilakukan secara efisien. Contohnya untuk menampilkan hasil searching dalam bentuk
tabel. Umumnya browser akan lambat untuk menampilkan tabel; browser harus men-download
seluruh content sebelum bisa menampilkan tabel-nya. Oleh karena itu akan lebih effisien untuk
menggunakan multiple / beberapa tabel.
1.9.2. Apa yang akan dijual dan bagaimana caranya
Kebanyakan e-commerce di Internet menjual barang yang relatif murah, seperti
barang konsumen biasa (seperti buku dan CD) atau barang operasional (seperti pena dan
bloknote). Pembeli dapat browse atau memilih barang, memasukan barang yang dipilih ke
virtual shopping cart. Setelah mereka selesai berbelanja, mereka perlu registrasi, membayar
dengan kartu kredit atau bentuk e-uang yang lain, dan barang akan dikirimkan kepada mereka
melalui kurir - atau, pada software, e-buku, e-artikel, e-lagu, mereka bisa mendownload
produk tersebut secara langsung.
Sebetulnya e-commerce tidak terbatas pada barang berharga murah, jasa telah
terbukti sangat populer. Banyak bank telah membuka cabang elektronik-nya. Berbagai industri
jasa mulai bergerak online. Contoh, 1-800-MYLOGO <http://www.1800mylogo.com/> sebuah
jasa disain telah memungkinkan logo di pesan secara online.
Barang berharga tinggi seperti mobil dan rumah memang belum dapat dijual secara baik
melalui media online. Akan tetapi media online dapat menjadi kanal pre-sales yang sangat baik
sehingga merupakan versi enhanced dari situs pemasaran tradisional.
In Country Training 2002
E-Commerce Hal. 11
Program katalog pada e-commerce dapat berupa kombinasi script di server (PHP, CGI,
servlets dan lainnya) dengan feature utama seperti shopping cart, fasilitas search, browsing
yang effisien, dan registrasi user (yang mungkin termasuk didalamnya validasi kartu kredit).
1.9.3. Pemenuhan Ekspektasi Pelanggan
Perusahaan mapan yang melakukan migrasi ke e-commerce biasanya harus
menghadapi masalah tambahan yaitu harus dapat memenuhi ekspektasi customer based
mereka yang sudah ada. Sebuah strategi e-commerce yang sukses akan bertumpu pada
kekuatan yang sudah ada di perusahaan dan meng-enhance apa yang dapat perusahaan itu
berikan. Penanganan yang spesial diberikan untuk menjamin agar pelanggan yang sudah ada
dapat dengan mudah mengakses produk-produk yang sudah familiar bagi mereka. Yang lebih
penting lagi, penanganan yang hati-hati harus di perhatikan agar servis level yang sama dapat
diberikan secara online seperti hal-nya secara offline.
Ada dua (2) pendekatan yang sering digunakan untuk memberikan jasa personal yang
online. Pertama adalah membuka kepakaran internal perusahaan secara online melalui sistem
pakar (expert system). Cara yang ke dua adalah menggunakan agen software yang cerdas .
Agen software tersebut dapat juga memberitahukan pembeli jika produk yang dia sukai
muncul.
Pada dasarnya apapun pendekatan yang dipakai, semua sistem yang di sebutkan di
atas mudah untuk di integrasikan dengan standar merchant toolkit. Yang penting adalah kita
harus menyadari bahwa pembeli hanya akan kembali ke sebuah e-commerce karena beberapa
sebab seperti harga, kualitas jasa, convenience, dan sebagainya.
1.9.4. Integrasi dengan sistem yang sudah ada
Yang paling sulit adalah proses integrasi e-commerce dengan sistem yang sudah ada.
E-commerce tidak berdiri sendiri, dia di dukung oleh beberapa sistem informasi seperti billing,
manajemen stok, accounting, dan manajemen panggilan dari pembeli (kalau anda melakukan
direct sales menggunakan telepon). Kombinasi dari sistem ini dikenal sebagai back-end.
Mengintegrasikan aplikasi yang sudah lama ada dengan sistem web adalah pekerjaan-
pekerjaan yang seringkali harus dilakukan oleh intranet developer. Setiap organisasi telah
mengembangkan sistem accounting dan billing yang unik yang merefleksikan budaya dan pasar
dari organisasi tersebut. Back-end telah dikembangkan dalam waktu yang lama. Back-end
berkembang dengan perusahaan, biasanya back-end tidak di disain untuk online commerce.
Mengadaptasi sistem seperti ini biasanya memerlukan kemampuan untuk memecahkan
beberapa masalah di bidang responsiveness, keamanan, konversi format, scalability dan
banyak lagi. Di atas semua pekerjaan tersebut biasanya ada saja hal-hal kecil yang
menjengkelkan. Contohnya, sebuah perusahaan tidak dapat memberikan nomor referensi
In Country Training 2002
E-Commerce Hal. 12
kepada pembeli online tanpa harus mengubah secara drastis back-end sistem mereka.
Tentunya mereka akan sangat berkeberatan untuk melakukan perubahan tersebut. Solusi yang
ditempuh akhirnya memberikan nomor referensi yang sifatnya sementara kepada pembeli
online, dan mengkonfirmasikan kemudian melalui e-mail dengan nomor referensi yang
sesungguhnya yang sudah di konfirmasikan ke back-end. Untuk menghindari kebingungan
akhirnya digunakan kata "confirmation number" untuk membedakan nomor referensi yang
sifatnya sementara tadi. Kejadian seperti akan banyak terjadi pada sistem back-end yang
mapan.
Secara umum ada dua pola utama pada saat kita mengintegrasikan sebuah sistem :
• Membuat sistem back -end dapat diakses secara online melalui e-commerce, atau
• Putuskan sama sekali e-commerce dari back-end dan duplikasi data dari e-commerce ke
back -end dan sebaliknya secara batch.
Tentunya, pilihan yang paling tepat akan sangat tergantung pada sistem yang ada.
Umumnya perusahaan-perusahaan menginginkan back-end mereka dapat di akses secara
online, akan tetapi mereka umumnya lebih suka solusi kedua yang memutuskan back-end dari
online e-commerce -nya karena lebih murah dan lebih mudah di implementasikan.
1.9.5. Pendekatan Online
Pada pendekatan online, e-commerce mempunyai akses langsung ke database di back-
end. Hal ini mempunya dua keuntungan utama yaitu:
• Sangat mungkin untuk memberikan servis yang lebih baik, seperti informasi stok yang
real -time.
• Sangat menekan biaya operasi sistem, karena tidak dibutuhkan intervensi manusia untuk
menerima pesanan atau update harga.
Kesulitan utama dalam pendekatan online ini adalah biaya dan keamanan. Keamanan
adalah isu yang paling penting dalam pendekatan online. Sedang dukungan back-end tidak
hanya untuk e-commerce-nya tapi juga untuk seluruh bagian dari perusahaan; oleh karena
sangat penting artinya agar e-commerce tersebut dapat diakses secara aman. Hal lain yang
akan membuat faktor biaya menjadi naik karena cepatnya obsolete perangkat lunak: back-end
perlu secara periodik di upgrade dan di modifikasi. Responsiveness, seperti diterangkan
terdahulu, sangat penting dalam e-commerce; oleh karena itu back-end harus dapat mengirim
data secepatnya. Jika e-commerce sukses, atau back-end sudah mulai overload karena banyak
digunakan maka upgrade dan perubahan di back-end harus di lakukan supaya semua berjalan
secara lancar efisien. Yang terakhir, pendekatan online memerlukan cukup banyak pekerjaan
yang mahal terutama untuk customisasi.
In Country Training 2002
E-Commerce Hal. 13
1.9.6. Pendekatan batch / offline
Oleh karena hal-hal yang di sebutkan di atas, banyak perusahaan akhirnya memilih untuk
memisahkan e-commerce mereka dengan back-end. Data, seperti deskripsi produk dan
informasi pesanan, di duplikasi di kedua lingkungan tersebut. Setiap sistem mempunya
database masing-masing yang di optimasi untuk kebutuhan-nya. Keuntungan utama dari
pendekatan off-line ini adalah masing-masing dapat berjalan dan berkembang sesuai dengan
kebutuhan. Tidak ada kebutuhan untuk mengadaptasi back-end ke e-commerce.
Dalam kasus-kasus yang simpel bahkan data dapat di duplikasi secara manual. Proses
manual cocok untuk jumlah produk yang kecil dan tetap (statik), untuk jumlah produk yang
lebih besar dan dinamik (berubah-ubah) dibutuhkan pendekatan yang lebih otomatis. Alternatif
yang populer adalah membangun proses meng-copy yang sifatnya batch secara periodik,
proses ini akan secara otomatis melakukan resinkonisasi antara e-commerce dengan database
di back-end.
1.10. Masa Depan e-Commerce dan Dampak Bisnisnya
Tampaknya e-commerce mempunyai masa depan yang cerah. Jika berbagai detail dari
perdagangan online ini dapat di selesaikan maka bukan mustahil e-commerce dan Internet
akan mengubah struktur dunia usaha secara global. Dengan perkembangan masyarakat virtual
yang demikian besar – banyak orang yang berpartisipasi dalam berbagai interest group online –
memperlihatkan pergeseran paradigma dari kekuatan ekonomi yang bertumpu pada pembuat /
manufacturer ke kekuatan pasar. Perusahaan kecil dengan produk yang lebih baik dan
customer service yang baik akan dapat menggunakan masyarakat virtual ini untuk
mengalahkan perusahaan besar – sesuatu yang cukup sulit dimengerti di dunia nyata.
Perusahaan yang akan secara langsung dirugikan oleh E-Commerce adalah agen perjalanan,
tiket bioskop, katalog mail-order, dan toko retail – terutama toko perangkat lunak. Mungkin
kalau di Indonesia yang terasa hanya bagi agen perjalanan & bisnis sekitar turis. Cerita sukses
e-commerce, seperti amazon.com http://www.amazon.com/, sebetulnya merupakan bentuk
lain dari sebuah proses perantara. Amazon.com tidak menerbitkan buku. Mereka semua
umumnya hanyalah sebuah distributor online saja. E-middleman harus membuktikan bahwa
ada nilai tambah yang diberikan pada proses pembelian secara online, melalui marketing,
customer service, juga metoda-metoda lain. Kalau tidak maka pelanggan akan memutuskan
modem-nya dan tidak akan menggunakan jasa mereka lagi.
In Country Training 2002
E-Commerce Hal. 14
BAB II
DESAIN DAN IMPLEMENTASI
ONLINE-BOOKSTORE
Tujuan pembelajaran pada Bab 2 ini adalah : Membangun kerangka aplikasi pemrograman
database berbasis Web dengan kasus toko buku online (online-bookstore), dengan dukungan
bahasa pemrograman script PHP dan database MySQL.
2.1. Alur Aplikasi Online-Bookstore
Secara umum suatu online-bookstore memiliki proses bisnis sebagai berikut :
• Halaman depan yang harus dipilih oleh user adalah kategori produk yang menampilkan
jenis buku yang dijual, misal : software, elektronik, komputer, unix, dan sebagainya.
• Jika user selesai memilih kategori produk, kemudian berikutnya akan ditampilkan
katalog produk dari kategori yang dipilih
• Pada katalog produk, jika user selesai mengklik salah satu judul buku yang ada maka
akan muncul halaman detail tentang buku tersebut yang meliputi judul buku yang
dipilih, harga dan gambar covernya. Pada halaman ini, juga ditampilkan tombol
pemesanan dan jumlah buku yang dipesan yang akan diproses pada bagian “keranjang
belanja”
• Pada keranjang belanja, resume buku yang dipesan akan ditampilkan dan terdapat link
untuk kembali ke halaman depan (kategori produk), katalog produk, maupun halaman
pembayaran (checkout).
2.2. Desain Sistem dan Perancangan Database Katalog
Bagian ini akan menjelaskan sistem katalog yang dipergun akan oleh tiap kategori produk,
yang meliputi perancangan skema database, pembuatan database dan tabel di MySQL, fungsi
koneksi ke database dan halaman kategori serta halaman detail.
2.2.1. Skema Database Katalog
Desain skema database yang digunakan untuk sistem katalog ini meliputi 3 (tiga) buah
tabel yaitu tabel penerbit, tabel judulbuku dan tabel tipe_kategori. Ketiga buah tabel tersebut
disimpan dalam sebuah database yang diberi nama toko_online. Berikut ini akan ditampilkan
struktur masing-masing tabel pada database toko_online, beserta kegunaannya.
In Country Training 2002
E-Commerce Hal. 15
Halaman Utama
untuk memilih Kategori Barang
Halaman Katalog Produk dari
Kategori Barang
yang dipilih
Detail dari produk yang dipilih
* Fasilitas untuk :
- memasukkan ke keranjan belanja
- menentukan jumlah item
Halaman Keranjang Belanja
Fasilitas untuk :
- Menambah jumlah item
- membatalkan pemesanan, dll
Halaman Check-Out
(pembayaran)
Gambar 2.1. : Alur aplikasi Online-Bookstore
Struktur Tabel tipe_kategori
Kegunaan : Menyimpan informasi kategori buku yang dijual.
Field Tipe Panjang Keterangan
Tipe_Ctg Char 4 Tipe dari kategori produk
Nama_Ctg Char 40 Nama dari kategori produk
Primary key (kunci utama) dari tabel tipe_kategori diatas adalah field Tipe_Ctg yang akan
menjadi foreign key pada tabel judulbuku.
In Country Training 2002
E-Commerce Hal. 16
Struktur Tabel penerbit
Kegunaan : Menyimpan data penerbit.
Field Tipe Panjang Keterangan
ID_Pen Char 4 Nomor identifikasi penerbit
Nama_Pen varchar 40 Nama penerbit
Alamat_Pen varchar 50 Alamat penerbit
Primary key dari tabel penerbit ini adalah field ID_Pen yang menyimpan nomer identifikasi dari
penerbit.
Struktur Tabel judulbuku
Kegunaan : Menyimpan judul buku yang disediakan
Field Tipe Panjang Keterangan
ID_Judul Char 4 Nomer identifikasi judul buku
Judul varchar 40 Judul Buku
Tipe_Ctg Char 4 Tipe kategori buku (foreign key
dari tabel tipe_kategori)
ID_Pen Char 4 Nomer identifikasi penerbit
(foreign key dari tabel penerbit)
Harga Integer - Harga Buku
Th_terbit Integer - Tahun penerbitan buku
Note Char 100 Keterangan mengenai buku yang
bersangkutan
Pada tabel judulbuku ini yang menjadi primary key (kunci utama) adalah field ID_Judul
yang merupakan nomer identifikasi buku. Dan terdapat dua foreign key yaitu Tipe_Ctg (tipe
kategori buku) yang berasal dari tabel tipe_kategori dan ID_Pen (nomer identifikasi penerbit)
yang berasal dari tabel penerbit.
In Country Training 2002
E-Commerce Hal. 17
Pada tabel penerbit dan judulbuku ada beberapa field yang dipilih sebagai informasi
yang akan ditampilkan pada halaman detail setiap buku yang dijual.
Field-field tersebut yaitu :
1. Pada tabel penerbit : ID_Pen (identifikasi penerbit) dan Nama_Pen (nama penerbit).
2. Pada tabel judubuku : ID_Judul (nomer identifikasi buku), Judul (judul buku), ID_Pen
(identifikasi penerbit), Harga (harga buku), Note (keterangan), Th_terbit (tahun
penerbitan).
2.2.2. Membuat Database dan Tabel di MySQL
Pada bagian ini akan dijelaskan cara pembuatan database dan tabel di MySQL.
Langkah-langkah pembuatan database di MySQL adalah :
1. Pada Windows Explorer, di sub directory dimana executable file dari MySQL berada
(misal di C:MySQLbin) klik dua kali winmysqladmin
In Country Training 2002
E-Commerce Hal. 18
MySQLAdmin akan aktif ditandai dengan icon rambu lalu lintas dengan warna hijau di pojok
kanan bawah layar monitor seperti ini :
2. Setelah itu keluar ke MS-DOS Prompt. Dan dari windows directory, arahkan menuju ke
subdirectory MySQL dengan perintah berikut :
C:WINDOWS>cd c:mysqlbin
3. Lakukan koneksi ke server database MySQL dengan perintah :
C:mysqlbin>mysql –h localhost
Akan keluar tampilan, misal seperti ini (akan berbeda untuk sistem lain) :
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 2 to server version : 3.23.47
Type ‘help;’ or ‘h’ for help. Type ‘c’ to clear the buffer.
mysql>
4. Kemudian berikan perintah untuk membuat database toko_online
mysql>create database toko_online;
Jangan lupa untuk memberi tanda titik koma (;) pada akhir perintah.
Akhirnya, database toko_online telah selesai dibuat :
Query OK, 1 row affected (0.05 sec)
Berikutnya, akan dijelaskan langkah pembuatan tabel di MySQL :
1. Untuk membuat tabel di MySQL, aktifkan terlebih dahulu database apa yang akan
digunakan. Dalam contoh impelementasi kita, yang digunakan adalah database
toko_online.
mysql>use toko_online;
kemudian akan tampil :
Database changed.
2. Kemudian buat tabel tipe_kategori dengan struktur seperti yang sudah didefinisikan
sebelumnya :
mysql>create table tipe_kategori(Tipe_Ctg char(4), Nama_Ctg varchar(40));
3. Akhirnya tabel tipe_kategori telah selesai dibuat :
Query OK, 0 row affected (0.05 sec)
Lakukan cara yang sama untuk tabel yang lain.
In Country Training 2002
E-Commerce Hal. 19
2.2.3. Fungsi Koneksi Database SQL
Pada bagian ini akan dijelaskan fungsi koneksi ke database MySQL. Fungsi-fungsi yang
akan dipergunakan untuk melakukan koneksi ke database server akan disimpan ke dalam
sebuah file. Nantinya file yang menyimpan fungsi ini (konek.inc) bisa disisipkan (embedded) ke
file lain yang melakukan koneksi.
File konek.inc berikut ini berisi perintah-perintah fungsi yang dipergunakan untuk
melakukan koneksi ke database MySQL, termasuk variabel-variabel yang dapat dipergunakan
oleh file yang akan meng-include-kan file ini.
<?
// deklarasi variabel untuk koneksi ke server database
$database=”toko_online”;
$hostname=”localhost”;
// lakukan koneksi
if (!$sambung=mysql_connect($hostname,””,””))
echo mysql_error();
// pilih database untuk diaktifkan
mysql_select_db($database,$sambung);
?>
2.2.4. Halaman Pilihan Kategori
Setelah selesai dilakukan pembahasan tentang konsep desain dan alur proses dari
persoalan yang akan diimplementasikan, maka berikutnya akan diberikan pembahasan
mengenai implementasi halaman-halaman script PHP.
Halaman pertama yang akan dibangun adalah halaman menu utama yang berisi
kategori produk yang menampilkan jenis buku yang dijual. Pada halaman ini terdapat link ke
halaman katalog produk untuk suatu kategori yang dipilih oleh user yang ditentukan oleh nilai
field Tipe_Ctg untuk kategori tersebut.
Berikut ini adalah implementasi dari halaman menu utama yang disimpan sebagai file
indek.php
<html>
<head>
<title>Menu Utama </title>
</head>
<body>
<center>
<h2>Online BookStore EEPIS-ITS </h2>
</center>
<br>
<p>Pililh kategori buku : <br>
<p>
In Country Training 2002
E-Commerce Hal. 20
<table width=300>
<?
# sisipkan koneksi ke server database
include “konek.inc”;
# menampilkan daftar kategori
$kategori=”Select Tipe_Ctg, Nama_Ctg From tipe_kategori”;
# eksekusi query
if (!$hasil=mysql_query($kategori, $sambung))
{
echo mysql_error();
exit();
}
// menampilkan semua record pada tabel tipe_kategori
while ($baris=mysql_fetch_row($hasil))
{
echo “<tr>”;
// tampilkan kategori
echo “<td><a href=kategori.php?tipe=$baris [0]>$baris [1]</a>”;
}
?>
</table>
</body>
</html>
2.2.5. Halaman Kategori
Halaman menu utama (indek.php) memiliki link ke halaman yang katalog produk
(kategori.php) dengan mengirimkan satu variabel dengan nama Tipe_Ctg sesuai dengan
kategori yang dipilih oleh user pada halaman menu utama. Setelah itu pada halaman
kategori.php akan terdapat variabel dengan nama $tipe yang berisi kode kategori sesuai
dengan yang dipilih oleh user.
Halaman katalog produk (kategori.php) akan menampilkan selu ruh judul buku pada
tabel judulbuku dengan nilai kolom Tipe_Ctg yang sama dengan isi variabel $type yang dibawa
dari halaman kategori (indek.php).
Berikut ini adalah implementasi dari halaman katalog produk yang disimpan sebagai
file kategori.php
In Country Training 2002
E-Commerce Hal. 21
<html>
<head>
<?
include “konek.inc”;
// ambil infomasi kategori yang dipilih
$kategori=”Select Tipe_Ctg,Nama_Ctg From tipe_kategori where Tipe_Ctg=$tipe”;
// eksekusi query
if (!$hasil=mysql_query($kategori,$sambung))
{
echo mysql_error();
exit();
}
$baris=mysql_fetch_row($hasil);
// sekarang $baris[0] berisi tipe kategori yang dipilih,
// $baris[1] berisi nama kategori yang dipilih
?>
<body>
<center>
<?
// tampilkan tipe kategori
<h2>echo $baris[0];
// tampilkan nama kategori
echo $baris[1]; </h2>
</center>
<p> Pilih salah satu buku yang tersedia <p>
<table width=640>
<?
// lakukan query untuk mendapatkan semua judul buku dari nama kategori
// yang ditentukan
$buku=”Select * from judulbuku where Tipe_Ctg=$tipe”;
// laksanakan query
if (!$hasil=mysql_query($buku,$sambung))
{
echo mysql_error();
exit();
}
// tampilkan hasil query dengan menampung hasil record pada $baris
// $baris[0] berisi ID_Judul, $baris[1] berisi Judul, dst.
While (!$baris=mysql_fetch_row($hasil))
{
echo “<tr>”;
// tampilkan judul buku yang dapat di-link
In Country Training 2002
E-Commerce Hal. 22
echo “<td><a href=detail.php?ID_Judul=$baris[0]>$baris [1]</a>”;
// tampilkan harga buku
echo “<td>$baris[4]”;
// tampilkan tahun penerbitan
echo “<td>$baris[5]”;
}
?>
</table>
<p>
<a href=indek.php>Kembali ke halaman pilihan kategori</a>
</body>
</html>
2.2.6. Halaman Detail
Halaman katalog produk (kategori.php) mempunyai link ke halaman detail (detail.php)
untuk setiap judul buku yang tertampil dan tersimpan sebagai variabel ID_judul (identifikasi
judul buku). Setelah itu pada halaman detail, akan terdapat suatu variabel dengan nama
$ID_judul dengan isi kode judul buku sesuai dengan pilihan user pada halaman katalog produk.
Halaman detail akan menampilkan informasi detail dari buku yang memiliki nilai field
ID_Judul sama dengan isi variabel $ID_Judul yang dibawa dari halaman katalog produk
(kategori.php).
Berikut ini adalah implementasi dari halaman detail yang disimpan sebagai file
detail.php
<html>
<head>
<?
Include “konek.inc”;
$rinci=”Select judulbuku.ID_Judul, judulbuku.Judul, judulbuku.Notes,
judulbuku.Th_terbit, judulbuku.Harga, penerbit.Nama_Pen
From judulbuku, penerbit
Where judulbuku.ID_judul=’$ID_Judul’
And judulbuku.th_ID_Pen=penerbit.ID_Pen”;
// laksanakan query
if (!$hasil=mysql_query($rinci,$sambung))
{
echo mysql_error();
exit();
}
$baris=mysql_fetch_row($hasil);
// sekarang $baris[0] berisi field ID_Judul, $baris[1] berisi field Judul,
// $baris[2] berisi field Notes, $baris[3] berisi field Th_terbit,
// $baris[4] berisi fieldHarga, $baris[5] berisi Nama_Pen
In Country Training 2002
E-Commerce Hal. 23
</head>
<body>
<h2><? Echo $baris [1] ?></h2>
<center>
<table width=640>
<?
Echo “<tr>”;
Echo “<td width=100> Keterangan </td>”;
Echo “<td width=150> “ . $baris[2] . “</td>”;
Echo “</tr>n”;
Echo “<tr>”;
Echo “<td width=100> Nama Penerbit </td>”;
Echo “<td width=150> “ . $baris[5] . “</td>”;
Echo “</tr>n”;
Echo “<tr>”;
Echo “<td width=100> Tahun Penerbitan </td>”;
Echo “<td width=150> “ . $baris[3] . “</td>”;
Echo “</tr>n”;
Echo “<tr>”;
Echo “<td width=100> Harga </td>”;
Echo “<td width=150> “ . $baris[4] . “</td>”;
Echo “</tr>n”;
?>
</table>
// tampilkan form isian jumlah
<form action=’keranjang.php’ method=’GET’>
<input type=hidden name=ID_Judul value=”<? Echo $baris[0] ?>” >
Quantity <input type=text size=4 name=qty>
<input name=order value=ADD type=submit>
</form>
</body>
</html>
In Country Training 2002
E-Commerce Hal. 24
2.3. Bagian Keranjang Belanja (Shopping Basket)
Sejauh ini telah dilakukan pembahasan mengenai sistem katalog yang digunakan untuk
membangun sebuah online-bookstore. Berikutnya adalah pembahasan mengenai sistem
keranjang belanja (shopping basket) yang akan melakukan pencatatan berapa buku yang telah
dipesan oleh user.
Ada beberapa alternatif yang dapat digunakan untuk mengimplementasikan keranjang
belanja, diantaranya adalah :
• Menggunakan cookies
Item disimpan sebagai masing-masing cookies untuk setiap user yang sedang
melakukan aktifitas belanja buku. Karena menggunakan cookie, maka user dapat
melanjutkan aktifitas belanjanya di waktu yang lain pada komputer yang sama, tetapi
tidak dapat dibuka pada komputer yang lain (karena komputer yang lain ini tidak
menyimpan cookie dari aktifitas belanja user).
• Menyimpan semua informasi belanja user pada database
Dengan cara ini maka beban server menjadi semakin bertambah dikarenakan akses ke
database menjadi lebih sering, namun informasi belanja yang disimpan bisa lebih
banyak, dan proses belanja dapat dibuka di komputer yang lain, tentu saja dengan
nama user dan password yang sama.
Implementasi keranjang belanja yang akan dibahas berikut ini menggunakan cara yang kedua
yaitu menyimpan semua informasi belanja user pada database.
2.3.1. Desain Database Keranjang Belanja
Pada dasarnya sebuah keranjang belanja berfungsi untuk :
• menambah item baru
• menghapus item yang lama
• mengganti jumlah item
• membatalkan pemesanan
• melakukan pembayaran (checkout)
Untuk keperluan tersebut maka diperlukan tambahan 2 (dua) tabel lagi yaitu :
• tabel order_detail
tabel ini menyimpan informasi detail dari record pada tabel order.
Struktur dari tabel order_detail
Field Tipe Panjang Keterangan
ID_Order Char 4 Nomer identifikasi pemesanan (foreign key dari tabel order)
Urut_Order Char 40 Nomer urut item yang dipesan pada keranjang belanja
ID_Judul Char 4 Nomer identifikasi buku (foreign key dari table judulbuku)
Qty Char 4 Alamat dari pembeli
In Country Training 2002
E-Commerce Hal. 25
• tabel order
tabel ini akan menyimpan seluruh informasi yang umum dari pesanan user
Struktur dari tabel order :
Field Tipe Panjang Keterangan
ID_Order Char 4 Nomer identifikasi pemesanan
Status_Order Char 40 Status pemesanan (baru atau sudah
checkout)
Pembeli Char 4 Nama Pembeli
Alamat Char 4 Alamat dari pembeli
Kota Integer - Nama kota asal pembeli
KodePos Integer - Kode pos dari alamat pembeli
Total_Order Char 100 Total pembelian
Pajak Pajak pembelian
2.3.2. Halaman Keranjang Belanja
Implementasi dari halaman keranjang belanja (shopping basket) merupakan bagian
yang paling kompleks dari aplikasi online-bookstore. Pada dasarnya fasilitas sederhana atau
yang paling dasar dari shopping basket adalah menambah item belanja dan membatalkan
pemesanan, sedangkan aktifitas lainnya seperti menghapus item, mengganti jumlah pesanan
dan implementasi user name dan password, tidak dibahas disini.
Berikut ini implementasi dari halaman keranjang belanja yang disimpan dalam file
keranjang.php :
<?
Include “db.inc”;
# tambahkan item baru ke dalam keranjang belanja
if ($ID_Judul!=”” && $order==”ADD”)
{ # Buat satu, jika belum ada order
# $ID_Order adalah sebuah cookie
if ($ID_Order==””)
{
$sqlorder=”Select max(ID_Order) from orders”;
if (!hasil=mysql_query($sqlorder,$sambung))
{
echo mysql_error();
exit();
}
$baris=mysql_fetch_row($hasil);
$ID_Order=$baris[0];
$ID_Order++;
In Country Training 2002
E-Commerce Hal. 26
$sqltambah=”insert into orders(ID_Order,Status_Order) values ($ID_Order,’N’);
if (!mysql_query($sqltambah,$sambung))
{
echo mysql_error();
exit();
}
# simpan session $ID_Order
setcookie(“ID_Order”,$ID_Order);
}
# sisipkan item ke dalam order
$orderinsert=”Select max(Urut_Order) From Order_details
Where ID_Order=$ID_Order”;
If (!$hasil=mysql_query($orderinsert,$sambung))
{
echo mysql_error();
exit();
}
$baris=mysql_fetch_row($hasil);
$Urut_Order=$baris[0];
$Urut_Order++;
$sqltambah=”Insert into order_details (ID_Order,Urut_Order,ID_Judul,Qty)
Values ($ID_Order,$Urut_Order,’$ID_Judul’,’$Qty’)”;
If (!mysql_query($sqltambah,$sambung))
{
echo mysql_error();
exit();
}
}
else if ($order==”cancel”)
{ $sqlhapus=”Delete from order_details where ID_Order=$ID_Order”;
mysql_query($sqlhapus,$sambung);
$sqlhapus=”Delete from order where ID_Order=$ID_Order”;
mysql_query($sqlhapus,$sambung);
# hapus variabel session
setcookie(“ID_Order”);
}
?>
<h1>Keranjang Belanja </h1>
<?
If ($ID_Order!=””)
{
# tampilkan semua item dalam keranjang belanja
In Country Training 2002
E-Commerce Hal. 27
$sqltampil=”Select judulbuku.ID_Judul, judulbuku.Judul,
(judulbuku.Harga * order_details.Qty), order_details.Qty,
judulbuku.Harga, order_details.ID_Order
From order_details, judulbuku
Where order_details.ID_Judul=judulbuku.ID_Judul
And order_details.ID_Order=$ID_Order”;
If (!$hasil=mysql_query($sqltampil,$sambung))
{
echo mysql_error();
exit();
}
echo (“<table width=500>n”);
while ($baris=mysql_fetch_row($hasil))
{
echo (“<tr>”);
echo (“<td width=200> $baris[1]”);
echo (“<td width=100> $baris[4]”);
echo (“<td width=100> $baris[3]”);
echo (“<td width=100> $baris[2]”);
}
echo (“</table>n”);
# hitung sub total
$sqltotal=”Select sum(judulbuku.Harga*order_details.Qty
From order_details, judulbuku
Where order_details.ID_Judul=judulbuku.ID_Judul
And order_details.ID_Order=$ID_Order”;
If (!$hasil=mysql_query($sqltotal,$sambung))
{
echo mysql_error();
exit();
}
$baris=mysql_fetch_row($hasil);
echo (“Sub total pemesanan = $baris[0]<br>n”);
echo (“<p>”);
echo (“<a href=’checkout.php’>Pembayaran Pesanan</a><br>n”);
echo (“<a href=’keranjang.php?order=cancel’>Hapus Pesanan</a><br>n”);
echo (“<a href=indek.php’>Lanjutkan Proses Belanja</a>n”);
}
else
{
echo (“<center><h3> Tidak ada item dlm Keranjang Belanja</h3></center>n”);
}
In Country Training 2002
E-Commerce Hal. 28
?>
Keterangan untuk tiap perintah dalam script keranjang.php diatas :
• Awalnya akan dilakukan koneksi ke database
• Kemudian variabel $ID_Judul diperiksa, selanjutnya buku dengan judul ini akan
ditempatkan ke keranjang belanja dengan memeriksa variabel $order.
• Jika perlu dilakukan penambahan item belanja ke dalam keranjang belanja, maka perlu
dipastikan atau diperiksa pesanan yang sedang aktif (current_order). Hal ini dilakukan
dengan memeriksa variabel cookie ID_Order.
• Jika ID_Order belum ada, maka pesanan baru akan dibuat. Pesanan baru ini akan
dicatat dalam tabel order, dan session pemesanan akan dicatat dalam cookie
$ID_Order.
• Kemudian item yang dipesan ditambahkan ke dalam daftar detail pesanan, yaitu pada
tabel order_details
• Jika item $ID_Judul tidak sedang ditambahkan ke daftar detail pesanan (tabel
order_detail) maka akan diperiksa apakah ada permintaan pembatalan pesanan yang
ditandai dengan isi variabel $order.
• Jika terdapat pembatalan, maka pesanan dihapus dari database dan session belanja ini
dihapus dengan menghapus cookie $ID_Order.
• Dan yang terakhir seluruh item keranjang belanja akan ditampilkan ke user beserta
sub total pemesanan.
• Pada bagian bawah halaman keranjang belanja, terdapat tiga link yaitu :
o Untuk melakukan pembayaran (checkout)
o Untuk pembatalan pesanan
o Link ke halaman depan atau menu utama (indek.php ).
2.4. Bagian Pembayaran (Check Out)
Ada beberapa alternatif yang dapat digunakan untuk mengimplementasikan proses
pembayaran pada online-bookstore, meliputi beberapa aspek yang menjadi pilihan
implementasi.
2.4.1. Beberapa Alternatif Proses Check Out
Pada aplikasi online-bookstore, proses checkout meminta informasi pesanan pembeli.
Informasi yang diperlukan meliputi alamat, nomor credit card, dan informasi belanja yang
dilakukan user.
Hal pertama yang dilakukan adalah mendesain fungsionalitas pembayaran dengan
menyediakan transfer data yang aman melalui SSL (secure socket layer). Pada umumnya
toko-toko online akan membawa user ke web server yang aman pada waktu melakukan proses
pembayaran (checkout). Untuk melakukan hal ini, maka pertama harus meminta terlebih
dahulu perijinan/certificate, missal dari VeriSign (http://www.verisign.com) kemudian
In Country Training 2002
E-Commerce Hal. 29
menginstalnya pada server yang digunakan. Proses instalasi SSL bergantung pada web server
yang digunakan.
Kemudian hal kedua yang perlu mendapat perhatian adalah data apa saja yang
diperlukan yang didapat dari informasi pembeli pada saat melakukan pembayaran. Misalnya
apakah pembeli diijinkan untuk memiliki alamat penagihan dan pengiriman yang berbeda.
Hal terpenting lainnya adalah bagaimana aplikasi online anda menyediakan
pemrosesan pembayaran, misal menawarkan pembayaran dengan kartu kredit, juga adanya
hubungan antara online katalog dengan bank yang diperlukan untuk melakukan pemrosesan
pembayaran.Proses pembayaran (checkout) yang diimplementasikan pada pembahasan ini
meliputi hal yang sangat sederhana berikut ini :
• Pembeli hanya boleh memiliki alamat penagihan yang sama dengan alamat pengiriman
• Setelah itu akan ditampilkan total pesanan
• Kemudian pembeli diminta mengisi informasi pembayaran
• Tampilan terakhir adalah ucapan terima kasih dan nomer identifikasi pemesanan.
• Sedangkan SSL dan pemrosesan kartu kredit tidak diimplementasikan.
2.4.2. Desain Database untuk Pembayaran (Checkout)
Untuk memproses pembayaran (checkout) diperlukan tabel tambahan untuk
menyimpan seluruh informasi untuk pesanan yang dilakukan oleh pembeli. Tabel tersebut
dinamakan order_payments.
Berikut ini struktur dari table order_payments
Struktur table order_payments
Field Tipe Panjang Keterangan
ID_Order Char 4 Foreign Key dari tabel orders
ID_Credit_card Char 40 Nomer credit card pembeli
Exp_Credit_card Char 4 Expiration date dari credit card
Tipe_Credit_card Char 4 Tipe dari credit card (Visa, Master Card, dll).
Nama_Credit_card Integer - Nama pembeli yang tercantum di credit card
Primary key dari tabel order_payments tersebut adalah ID_Credit_card yang merupakan
identifikasi nomer card dari pembeli.
In Country Training 2002
E-Commerce Hal. 30
2.4.3. Halaman Checkout pertama
Halaman pertama untuk proses pembayaran berupa suatu form yang meminta pembeli
untuk memasukkan informasi alamatnya. Belum dilakukan pemrosesan pada halaman ini.
Berikut ini adalah listing file checkout.php :
<html>
<head>
<title>Checkout</title>
</head>
<body>
<center>
<h2> Checkout </h2>
<form action=”checkout2.php” method=”POST”>Nama Pembeli : <br>
<input type=”text” name=”Pembeli” maxlength=”60”> <br>
Alamat : <br>
<input type=”text” name=”alamat” maxlength=6”60”> <br>
Kota : <br>
<input type=”text” name=”kota” maxlength=6”60”> <br>
Kode pos : <br>
<input type=”text” name=”KodePos” maxlength=6”60”> <br><br>
<input type=”submit” values=”Next”>
</form>
<p>
</body>
</html>
2.4.4. Halaman Checkout Kedua
Halaman Pembayaran yang berikutnya yaitu chekout2.php melakukan validasi
terhadap informasi yang dimasukkan oleh pembeli pada form pembayaran. Semua field harus
terisi. Kemudian setelah itu dilakukan penghitungan total pembelian dan besarnya pajak.
Setelah itu baru pembeli diminta untuk mengisi informasi credit card-nya.
Berikut ini adalah isi file checkout2.php :
<html>
<head>
<title>Checkout</title>
</head>
<body>
<center><h2>Checkout</h2></center>
<?
Include “konek.inc”;
In Country Training 2002
E-Commerce Hal. 31
If ($ID_Order!=””)
{
if ($Pembeli==””) $errStr+=”Nama pembeli belum diisi<br>”;
if ($Alamat==””) $errStr+=”Alamat pembeli belum diisi<br>”;
if ($Kota==””) $errStr+=”Kota pembeli belum diisi<br>”;
if ($KodePos==””) $errStr+=”Kode pos dari alamat belum diisi<br>”;
if (errStr!=””) echo (“$errStr<br>”);
# Hitung total pembelian dan pajaknya
$total=”Select sum((judulbuku.Harga*order_details.qty))
From order_details, judulbuku
Where order_details.ID_Judul=judulbuku.ID_Judul
And order_details.ID_Order=$ID_Order”;
If (! Mysql_query($total, $sambung)
{
echo mysql_error();
exit();
}
$baris=mysql_fetch_row($hasil);
# pajak = 10%
$taxrate=0.1;
$pajak=$baris[0] * $taxrate;
$total=$baris[0]+$pajak;
# Lakukan update pada data
$perintah=”Update order set Pembeli=’$Pembeli’,Alamat=’$Alamat’,
Kota=’$Kota’,KodePos=’$KodePos’,Total_Order=’$Total_Order’,
Pajak=’$Pajak
Where ID_Order=’$ID_Order’ “;
If (! Mysql_query($perintah, $sambung)
{ echo mysql_error();
exit(); }
echo (“Total pembelian = $Total_Order<br>n”);
echo (“Pajak pembelian = $Pajak<br>n”);
?>
<form action=”checkout3.php” method=”POST”>
Nomer Credit Card: <br>
<input type=text name=”ID_credit_card” size=16 maxlength=16><br>
Tipe Credit Card: <br>
<select name=”Tipe_credit_card”>
<option value=’Visa’>Visa
<option value=’Master Card’>Master Card
In Country Training 2002
E-Commerce Hal. 32
<option value=’Dinner’s Club >Dinner’s Club
</select>
<br>
Experation Date: <br>
<input type=text name=”Exp_Credit_card” size=5 maxlength=5> <br>
<input type=submit value=”Next”>
</form>
<?
}
else echo(“<center><h3>Order tidak valid</h3></center>n”);
?>
</body>
</html>
2.4.5. Halaman Checkout Ketiga
Yang dikerjakan pada halaman pembayaran selanjutnya yaitu checkout3.php adalah:
melakukan validasi informasi credit card, setelah valid, kemudian tabel orders diupdate dengan
menggunakan informasi ini dan status order ditandai dengan “checked out” (CO). Yang
terakhir pembeli diberi nomer pemesanan untuk melengkapi transaksi pembelian yang sudah
dilakukan.
<?
Include “konek.inc”;
If (ID_Order!=””)
{ if (ID_Credit_card==””) $errStr+=”Nomer credit card belum diisi<br>”;
if (Tipe_Credit_card==””) $errStr+=”Tipe credit card belum diisi<br>”;
if (Exp_Credit_card==””)
$errStr+=”Expired Date credit card belum diisi<br>”;
if (Nama_Credit_card==””)
$errStr+=”Nama pemilik credit card belum diisi<br>”;
if ($errStr!=””) echo (“$errStr<br>”);
else {
$sqlsisip=”Insert into order_payments(ID_Order, ID_Credit_card,
Tipe_credit_card, Exp_credit_card, Nama_credit_card)
Values ($ID_Order, ‘$ID_Credit_card’, ‘$Tipe_credit_card’,
‘$Exp_Credit_card’, ‘$Nama_Credit_card’) “;
if (! Mysql_query($sqlsisip,$sambung)
{ echo mysql_error(); exit(); }
$sqlubah=”Update orders Set Status_Order=’CO’
Where ID_Order=$ID_Order”;
if (! Mysql_query($sqlsisip,$sambung)
In Country Training 2002
E-Commerce Hal. 33
{ echo mysql_error(); exit();
}
setcookie(“ID_Order”);
?>
<html>
<head>
<title>Checkout</title>
</head>
<body>
<center> <h2> Checkout </h2> </center>
<?
Echo (“Terima kasih atas Pembelian yang telah anda lakukan<br>n”);
Echo (“Beli lagi lain waktu …see you …”);
Echo (“Nomer pemesanan anda : $ID_Order”);
}
}
else echo (“<center><h3>Nomer Order tidak valid</h3></center>”);
?>
<p>
<a href=indek.php>Halaman Utama</a>
</body>
</html>
2.4.6. Penyelesaian Fungsionalitas Online BookStore
Fungsi dari sebuah toko buku online (online bookstore) telah selesai dilakukan. Selanjutnya
adalah melakukan pengerjaan pada database katalog sekaligus melakukan perencanaan
maintenance katalog.
2.5. Pemeliharaan Katalog
Yang pertama harus dilakukan dalam membangun aplikasi pemeliharaan (maintenance)
katalog adalah hal-hal apa yang harus dilakukan, siapa yang melakukan, perubahan apa yang
dibutuhkan terhadap data,
Aplikasi pemeliharaan katalog yang direncanakan meliputi :
• penambahan judul buku
• memodifikasi judul buku
• penghapusan judul buku
Aplikasi tersebut dikerjakan oleh staff yang bertanggung jawab terhadap stok barang (bagian
inventory).
2.5.1. Halaman Daftar (List) Judul Buku
In Country Training 2002
E-Commerce Hal. 34
Halaman ini menyediakan fasilitas penambahan buku baru dengan menekan tombol Add. User
juga dapat memodifikasi ataupun menghapus buku dengan tombol Modify dan Delete.
Berikut ini adalah listing file mt_list.php :
<html>
<head>
<title>Pemeliharaan Katalog</title>
</head>
<h2>Pemeliharaan Katalog </h2>
<body>
Pilih Operasi Maintenance yang akan dilakukan :
<p>
<form action=’mt_edit.php’ method=POST>
<select name=ID_Judul size=10>
<?
Include “konek.inc”;
$sqljudul=”Select Judul, ID_Judul From judulbuku”;
if (! Mysql_query($sqljudul,$sambung))
{
echo mysql_error();
exit();
}
while ($baris=mysql_fetch_row($sqljudul))
{
echo (“<option value=$baris [1]>$baris[0]n”);
}
?>
</select>
<p>
<input type=submit name=action_type value=Add>
<input type=submit name=action_type value=Modify>
<input type=submit name=action_type value=Delete>
</form>
<p>
<a href=indek.php>Ke Halaman Utama</a>
</body>
</html>
2.5.2. Penambahan dan Perubahan Judul Buku
Berikutnya adalah pembahasan fungsionalitas halaman web untuk melakukan
penambahan dan perubahan pada stok buku. Operasi yang dilakukan sesuai yang dipilih oleh
In Country Training 2002
E-Commerce Hal. 35
user pada halaman sebelumnya (Add, Modify atau Delete). Pertama kali akan dideklarasikan
semua variabel yang digunakan untuk operasi yang dimaksud. Variabel action type pada listing
program berikut merupakan variabel hidden yang akan ditransfer ke halaman berikutnya.
Berikut ini listing dari file mt_edit.php :
<html>
<head>
<title>Pemeliharaan Data</title>
</head>
<body>
<?
Include “konek.inc”;
If ($action_type==”Add”)
{
// tambahkan judul buku baru
$Tipe_Ctg=””;
$ID_Judul=””;
$Judul=””;
$Harga=””;
$Notes=””;
$Th_terbit=””;
$ID_Pen=””;
}
else
{
// judul buku telah ada
$sqljudul=”Select * From judulbuku Where ID_Judul=’$ID_Judul’ “;
if (! Mysql_query($sqljudul,$sambung))
{
echo mysql_error();
exit();
}
$baris=mysql_fetch_row($sqljudul);
$ID_Judul=$baris[0];
$Judul=$baris[1];
$Tipe=$baris[2];
$ID_Pen=$baris[3];
$Harga=$baris[4];
$Th_terbit=$baris[5];
$Note=$baris[6];
}
echo (“<center><h3> Pemeliharaan Katalog </h3> </center>n”);
echo (“<p><p>”);
echo (“<form action=’mt_commit.php’ method=POST>”);
In Country Training 2002
E-Commerce Hal. 36
# Pilih Kategori
$sqlkategori=”Select Tipe_Ctg, Nama_Ctg From tipe_kategori”;
if (! Mysql_query($sqlkategori,$sambung))
{
echo mysql_error();
exit();
}
echo (“Tipe : <br>n”);
while ($baris=mysql_query($sqlkategori,$sambung))
{
echo (“value=’$baris[0]’>$baris[1]n”);
}
echo (“Judul : <br>n”);
echo (“<input type=text name=Judul size=30 maxlength=80
values=’$Judul’><br>n”);
echo (“Harga : <br>n”);
echo (“<input type=text name=Harga size=10 maxlength=10
values=’$Harga><br>n”);
echo (“Tahun terbit : <br>n”);
echo (“<input type=text name=Th_terbit size=10 maxlength=10
values=’$Th_terbit><br>n”);
echo (“Keterangan : <br>n”);
echo (“<textarea name=notes cols=40 rows=5>n”);
echo (“$notes</textarea><br>n”);
echo (“<input type=hidden name=action_type value=’$action_type’>n”);
echo (“<p><p>n”);
echo (<input type=submit value=’Perubahan telah dilakukan’>n”);
?>
</body>
</html>
2.5.3. Pelaksanaan Modifikasi Stok Barang
Semua perubahan yang diset pada halaman sebelumnya akan dilaksanakan pada
halaman ini. Operasi Query dengan perintah SQL yang dilakukan sesuai dengan operasi yang
dipilih oleh user (Add, Modify atau Delete). Dengan demikian selesailah sudah semua tahapan
implementasi yang dibuat untuk toko buku online.
<html>
<head>
<title>Pemeliharaan Katalog</title>
In Country Training 2002
E-Commerce Hal. 37
</head>
<center>
<h3>Pemeliharaan Katalog</h3>
<?
Include “konek.inc”;
If ($action_type==”Add”)
{
$perintah=”Insert into judulbuku(ID_Judul, Judul, ID_Pen, Harga, Notes,
Th_terbit, tipe) values (‘$ID_Judul’, ‘$Judul’, ’$ID_Pen’, ‘$Harga’,
‘$Notes’, ‘$Th_terbit’, ’$tipe’)”;
if (! mysql_query($perintah, $sambung)
{
echo mysql_error();
exit();
}
echo (“Record buku telah ditambahkan<br>n”);
}
else if ($action_type=”Modify”)
{
$perintah=”Update judulbuku set Judul=’$Judul’, ID_Pen=’$ID_Pen’,
Harga=’$Harga’, Notes=’$Harga’, Th_terbit=’$Th_terbit’,
Tipe=’$Tipe’
Where ID_Judul=’$ID_Judul’ “;
if (! mysql_query($perintah, $sambung)
{
echo mysql_error();
exit();
}
echo (“Record buku telah diubah<br>n”);
}
else if ($action_type=”Delete”)
{
$perintah=”Delete judulbuku Where ID_Judul=’$ID_Judul’ “;
if (! mysql_query($perintah, $sambung)
{
echo mysql_error();
exit();
}
echo (“Record buku telah dihapus<br>n”);
}
?>
<p>
<a href=mt_list.php>Back</a>
</body>
In Country Training 2002
E-Commerce Hal. 38
</html>

More Related Content

What's hot

Makalah Sistem Informasi Management Amik Royal Kisaran
Makalah Sistem Informasi Management Amik Royal KisaranMakalah Sistem Informasi Management Amik Royal Kisaran
Makalah Sistem Informasi Management Amik Royal KisaranMisriadi memes
 
Tugas e commerce
Tugas e commerceTugas e commerce
Tugas e commercetumiar
 
Electronic Money @ Indonesia
Electronic Money @ IndonesiaElectronic Money @ Indonesia
Electronic Money @ IndonesiaArief Gunawan
 
PENERAPAN E-COMMERCE PADA PT GARUDA INDONESIA TBK
PENERAPAN E-COMMERCE PADA PT GARUDA INDONESIA TBKPENERAPAN E-COMMERCE PADA PT GARUDA INDONESIA TBK
PENERAPAN E-COMMERCE PADA PT GARUDA INDONESIA TBKAyuEndahLestari
 
Mengnal lebih jauh tentang bhinneka.com
Mengnal lebih jauh tentang bhinneka.comMengnal lebih jauh tentang bhinneka.com
Mengnal lebih jauh tentang bhinneka.comFaddli Lindra Wibowo
 
Petunjuk singkat mega internet individu
Petunjuk singkat mega internet individuPetunjuk singkat mega internet individu
Petunjuk singkat mega internet individuFerry Steve
 
E-money di Indonesia
E-money di IndonesiaE-money di Indonesia
E-money di Indonesiateguholica
 
Mekanisme Electronic E-Commerce Dalam Dunia Bisnis
Mekanisme Electronic E-Commerce Dalam Dunia BisnisMekanisme Electronic E-Commerce Dalam Dunia Bisnis
Mekanisme Electronic E-Commerce Dalam Dunia BisnisKaffah Web Studio
 
Panduan Membeli Secara Online
Panduan Membeli Secara OnlinePanduan Membeli Secara Online
Panduan Membeli Secara OnlineDanny Acdc
 
Si-PI, Anggoro Cahyo Purnama, Hapzi Ali, isu sosial dan etika dalam sistem in...
Si-PI, Anggoro Cahyo Purnama, Hapzi Ali, isu sosial dan etika dalam sistem in...Si-PI, Anggoro Cahyo Purnama, Hapzi Ali, isu sosial dan etika dalam sistem in...
Si-PI, Anggoro Cahyo Purnama, Hapzi Ali, isu sosial dan etika dalam sistem in...ANGGORO CAHYO PURNAMA
 
Perkembangan infrastruktur kunci publik di indonesia - Andika Triwidada
Perkembangan infrastruktur kunci publik di indonesia - Andika TriwidadaPerkembangan infrastruktur kunci publik di indonesia - Andika Triwidada
Perkembangan infrastruktur kunci publik di indonesia - Andika Triwidadaidsecconf
 
SIM FENI OKTAVIA, HAPZI ALI, Tugas UAS Analaisis dan Perancangan SI Pada Toko...
SIM FENI OKTAVIA, HAPZI ALI, Tugas UAS Analaisis dan Perancangan SI Pada Toko...SIM FENI OKTAVIA, HAPZI ALI, Tugas UAS Analaisis dan Perancangan SI Pada Toko...
SIM FENI OKTAVIA, HAPZI ALI, Tugas UAS Analaisis dan Perancangan SI Pada Toko...feni oktavia
 
Cashless Regulation in Indonesia:“Tantangan Indonesia Menuju Cashless Society”
Cashless Regulation in Indonesia:“Tantangan Indonesia Menuju Cashless Society”Cashless Regulation in Indonesia:“Tantangan Indonesia Menuju Cashless Society”
Cashless Regulation in Indonesia:“Tantangan Indonesia Menuju Cashless Society”Yudi Herdiana
 
Presentation e comerce
Presentation e comerce Presentation e comerce
Presentation e comerce Taufik00
 
Modul internet & e commerce
Modul internet & e commerceModul internet & e commerce
Modul internet & e commercepika setiawan
 
Sim nur putriana prof. dr. ir. hapzi ali, mm, cma internet banking bca
Sim nur putriana prof. dr. ir. hapzi ali, mm, cma internet banking bca Sim nur putriana prof. dr. ir. hapzi ali, mm, cma internet banking bca
Sim nur putriana prof. dr. ir. hapzi ali, mm, cma internet banking bca Nur Putriana
 

What's hot (19)

Makalah Sistem Informasi Management Amik Royal Kisaran
Makalah Sistem Informasi Management Amik Royal KisaranMakalah Sistem Informasi Management Amik Royal Kisaran
Makalah Sistem Informasi Management Amik Royal Kisaran
 
Prinsip Dasar e-Money
Prinsip Dasar  e-MoneyPrinsip Dasar  e-Money
Prinsip Dasar e-Money
 
Tugas e commerce
Tugas e commerceTugas e commerce
Tugas e commerce
 
Electronic Money @ Indonesia
Electronic Money @ IndonesiaElectronic Money @ Indonesia
Electronic Money @ Indonesia
 
PENERAPAN E-COMMERCE PADA PT GARUDA INDONESIA TBK
PENERAPAN E-COMMERCE PADA PT GARUDA INDONESIA TBKPENERAPAN E-COMMERCE PADA PT GARUDA INDONESIA TBK
PENERAPAN E-COMMERCE PADA PT GARUDA INDONESIA TBK
 
Mengnal lebih jauh tentang bhinneka.com
Mengnal lebih jauh tentang bhinneka.comMengnal lebih jauh tentang bhinneka.com
Mengnal lebih jauh tentang bhinneka.com
 
Petunjuk singkat mega internet individu
Petunjuk singkat mega internet individuPetunjuk singkat mega internet individu
Petunjuk singkat mega internet individu
 
E-money di Indonesia
E-money di IndonesiaE-money di Indonesia
E-money di Indonesia
 
Mekanisme Electronic E-Commerce Dalam Dunia Bisnis
Mekanisme Electronic E-Commerce Dalam Dunia BisnisMekanisme Electronic E-Commerce Dalam Dunia Bisnis
Mekanisme Electronic E-Commerce Dalam Dunia Bisnis
 
Panduan Membeli Secara Online
Panduan Membeli Secara OnlinePanduan Membeli Secara Online
Panduan Membeli Secara Online
 
Si-PI, Anggoro Cahyo Purnama, Hapzi Ali, isu sosial dan etika dalam sistem in...
Si-PI, Anggoro Cahyo Purnama, Hapzi Ali, isu sosial dan etika dalam sistem in...Si-PI, Anggoro Cahyo Purnama, Hapzi Ali, isu sosial dan etika dalam sistem in...
Si-PI, Anggoro Cahyo Purnama, Hapzi Ali, isu sosial dan etika dalam sistem in...
 
Perkembangan infrastruktur kunci publik di indonesia - Andika Triwidada
Perkembangan infrastruktur kunci publik di indonesia - Andika TriwidadaPerkembangan infrastruktur kunci publik di indonesia - Andika Triwidada
Perkembangan infrastruktur kunci publik di indonesia - Andika Triwidada
 
SIM FENI OKTAVIA, HAPZI ALI, Tugas UAS Analaisis dan Perancangan SI Pada Toko...
SIM FENI OKTAVIA, HAPZI ALI, Tugas UAS Analaisis dan Perancangan SI Pada Toko...SIM FENI OKTAVIA, HAPZI ALI, Tugas UAS Analaisis dan Perancangan SI Pada Toko...
SIM FENI OKTAVIA, HAPZI ALI, Tugas UAS Analaisis dan Perancangan SI Pada Toko...
 
Cashless Regulation in Indonesia:“Tantangan Indonesia Menuju Cashless Society”
Cashless Regulation in Indonesia:“Tantangan Indonesia Menuju Cashless Society”Cashless Regulation in Indonesia:“Tantangan Indonesia Menuju Cashless Society”
Cashless Regulation in Indonesia:“Tantangan Indonesia Menuju Cashless Society”
 
Presentation e comerce
Presentation e comerce Presentation e comerce
Presentation e comerce
 
Modul internet & e commerce
Modul internet & e commerceModul internet & e commerce
Modul internet & e commerce
 
E currency
E currencyE currency
E currency
 
Kuis E-Commerce
Kuis E-CommerceKuis E-Commerce
Kuis E-Commerce
 
Sim nur putriana prof. dr. ir. hapzi ali, mm, cma internet banking bca
Sim nur putriana prof. dr. ir. hapzi ali, mm, cma internet banking bca Sim nur putriana prof. dr. ir. hapzi ali, mm, cma internet banking bca
Sim nur putriana prof. dr. ir. hapzi ali, mm, cma internet banking bca
 

Similar to F066255899

Tugas sim, yulianing tias, yananto mihadi putra, penggunaan teknologi informa...
Tugas sim, yulianing tias, yananto mihadi putra, penggunaan teknologi informa...Tugas sim, yulianing tias, yananto mihadi putra, penggunaan teknologi informa...
Tugas sim, yulianing tias, yananto mihadi putra, penggunaan teknologi informa...yulianingtias
 
PPT SIM Berbasis Teknologi ULLY TIARA ANGELIA 201911571 KEL.8
PPT SIM Berbasis Teknologi ULLY TIARA ANGELIA 201911571 KEL.8PPT SIM Berbasis Teknologi ULLY TIARA ANGELIA 201911571 KEL.8
PPT SIM Berbasis Teknologi ULLY TIARA ANGELIA 201911571 KEL.8UllyTiaraAngelia
 
PPT SIM Aditya Alifian 201911562 Kelompok 8
PPT SIM Aditya Alifian 201911562 Kelompok 8PPT SIM Aditya Alifian 201911562 Kelompok 8
PPT SIM Aditya Alifian 201911562 Kelompok 8AditOkey
 
Trend Produk Sistem Informasi Perbankan
Trend Produk Sistem Informasi PerbankanTrend Produk Sistem Informasi Perbankan
Trend Produk Sistem Informasi Perbankanreco alfredo
 
Perkembangan ecommerce di indonesia
Perkembangan ecommerce di indonesiaPerkembangan ecommerce di indonesia
Perkembangan ecommerce di indonesiaHeRy Milvana
 
Sistem Electronic Commerce
Sistem Electronic CommerceSistem Electronic Commerce
Sistem Electronic CommerceJoshua Tan
 
Sim, 1, uts, miftahul hidayah, hapzi ali, impelentasi sistem informasi pada l...
Sim, 1, uts, miftahul hidayah, hapzi ali, impelentasi sistem informasi pada l...Sim, 1, uts, miftahul hidayah, hapzi ali, impelentasi sistem informasi pada l...
Sim, 1, uts, miftahul hidayah, hapzi ali, impelentasi sistem informasi pada l...MiftahulHidayah4
 
SISTEM INFORMASI MANAJEMEN BERBASIS TEKNOLOGI (E-COMMERCE, M-COMMERCE, DAN S...
SISTEM INFORMASI MANAJEMEN BERBASIS TEKNOLOGI (E-COMMERCE,  M-COMMERCE, DAN S...SISTEM INFORMASI MANAJEMEN BERBASIS TEKNOLOGI (E-COMMERCE,  M-COMMERCE, DAN S...
SISTEM INFORMASI MANAJEMEN BERBASIS TEKNOLOGI (E-COMMERCE, M-COMMERCE, DAN S...VinaAnggraeni6
 
(PPT) Kelompok 9 Sistem Informasi Manajemen Berbasis Teknologi (E-Commerce, M...
(PPT) Kelompok 9 Sistem Informasi Manajemen Berbasis Teknologi (E-Commerce, M...(PPT) Kelompok 9 Sistem Informasi Manajemen Berbasis Teknologi (E-Commerce, M...
(PPT) Kelompok 9 Sistem Informasi Manajemen Berbasis Teknologi (E-Commerce, M...RizkaPuspita7
 
Ppt e commerce &e-business
Ppt e commerce &e-businessPpt e commerce &e-business
Ppt e commerce &e-businessditha pp
 
Materi 2.2
Materi 2.2Materi 2.2
Materi 2.2Aby Zay
 
Makalah sim kelompok 6
Makalah sim kelompok 6Makalah sim kelompok 6
Makalah sim kelompok 6Azharan Dhani
 

Similar to F066255899 (20)

Tugas sim, yulianing tias, yananto mihadi putra, penggunaan teknologi informa...
Tugas sim, yulianing tias, yananto mihadi putra, penggunaan teknologi informa...Tugas sim, yulianing tias, yananto mihadi putra, penggunaan teknologi informa...
Tugas sim, yulianing tias, yananto mihadi putra, penggunaan teknologi informa...
 
Ecomerence php
Ecomerence phpEcomerence php
Ecomerence php
 
Ecomerence php
Ecomerence phpEcomerence php
Ecomerence php
 
E-Commerce
E-CommerceE-Commerce
E-Commerce
 
PPT SIM Berbasis Teknologi ULLY TIARA ANGELIA 201911571 KEL.8
PPT SIM Berbasis Teknologi ULLY TIARA ANGELIA 201911571 KEL.8PPT SIM Berbasis Teknologi ULLY TIARA ANGELIA 201911571 KEL.8
PPT SIM Berbasis Teknologi ULLY TIARA ANGELIA 201911571 KEL.8
 
PPT SIM Aditya Alifian 201911562 Kelompok 8
PPT SIM Aditya Alifian 201911562 Kelompok 8PPT SIM Aditya Alifian 201911562 Kelompok 8
PPT SIM Aditya Alifian 201911562 Kelompok 8
 
E bussiness dan e commerce
E bussiness dan e commerceE bussiness dan e commerce
E bussiness dan e commerce
 
Trend Produk Sistem Informasi Perbankan
Trend Produk Sistem Informasi PerbankanTrend Produk Sistem Informasi Perbankan
Trend Produk Sistem Informasi Perbankan
 
Perkembangan ecommerce di indonesia
Perkembangan ecommerce di indonesiaPerkembangan ecommerce di indonesia
Perkembangan ecommerce di indonesia
 
Sistem Electronic Commerce
Sistem Electronic CommerceSistem Electronic Commerce
Sistem Electronic Commerce
 
Sim, 1, uts, miftahul hidayah, hapzi ali, impelentasi sistem informasi pada l...
Sim, 1, uts, miftahul hidayah, hapzi ali, impelentasi sistem informasi pada l...Sim, 1, uts, miftahul hidayah, hapzi ali, impelentasi sistem informasi pada l...
Sim, 1, uts, miftahul hidayah, hapzi ali, impelentasi sistem informasi pada l...
 
SISTEM INFORMASI MANAJEMEN BERBASIS TEKNOLOGI (E-COMMERCE, M-COMMERCE, DAN S...
SISTEM INFORMASI MANAJEMEN BERBASIS TEKNOLOGI (E-COMMERCE,  M-COMMERCE, DAN S...SISTEM INFORMASI MANAJEMEN BERBASIS TEKNOLOGI (E-COMMERCE,  M-COMMERCE, DAN S...
SISTEM INFORMASI MANAJEMEN BERBASIS TEKNOLOGI (E-COMMERCE, M-COMMERCE, DAN S...
 
(PPT) Kelompok 9 Sistem Informasi Manajemen Berbasis Teknologi (E-Commerce, M...
(PPT) Kelompok 9 Sistem Informasi Manajemen Berbasis Teknologi (E-Commerce, M...(PPT) Kelompok 9 Sistem Informasi Manajemen Berbasis Teknologi (E-Commerce, M...
(PPT) Kelompok 9 Sistem Informasi Manajemen Berbasis Teknologi (E-Commerce, M...
 
Tugas bisnis online
Tugas bisnis onlineTugas bisnis online
Tugas bisnis online
 
E-Commerce dan E-Business
E-Commerce dan E-BusinessE-Commerce dan E-Business
E-Commerce dan E-Business
 
Ppt e commerce &e-business
Ppt e commerce &e-businessPpt e commerce &e-business
Ppt e commerce &e-business
 
6 e commerce
6 e commerce6 e commerce
6 e commerce
 
Materi 2.2
Materi 2.2Materi 2.2
Materi 2.2
 
Makalah sim kelompok 6
Makalah sim kelompok 6Makalah sim kelompok 6
Makalah sim kelompok 6
 
Selesain
SelesainSelesain
Selesain
 

More from Alvin Setiawan

Penyelesaian pers-biseksi13
Penyelesaian pers-biseksi13Penyelesaian pers-biseksi13
Penyelesaian pers-biseksi13Alvin Setiawan
 
Penyelesaian persamaan-non-linear
Penyelesaian persamaan-non-linearPenyelesaian persamaan-non-linear
Penyelesaian persamaan-non-linearAlvin Setiawan
 
Pengembangan sistem 1 2
Pengembangan sistem 1 2Pengembangan sistem 1 2
Pengembangan sistem 1 2Alvin Setiawan
 
Modul pelatihan ly_x_untuk_jurnal-feb-2cols
Modul pelatihan ly_x_untuk_jurnal-feb-2colsModul pelatihan ly_x_untuk_jurnal-feb-2cols
Modul pelatihan ly_x_untuk_jurnal-feb-2colsAlvin Setiawan
 
Metode numerik-rinaldi-munir-libre
Metode numerik-rinaldi-munir-libreMetode numerik-rinaldi-munir-libre
Metode numerik-rinaldi-munir-libreAlvin Setiawan
 
Metode numerik-buku-ajar-unila
Metode numerik-buku-ajar-unilaMetode numerik-buku-ajar-unila
Metode numerik-buku-ajar-unilaAlvin Setiawan
 
Met num3 persnonl-inier_baru
Met num3 persnonl-inier_baruMet num3 persnonl-inier_baru
Met num3 persnonl-inier_baruAlvin Setiawan
 
Met num02 persamaan non linier
Met num02 persamaan non linierMet num02 persamaan non linier
Met num02 persamaan non linierAlvin Setiawan
 
Membuat dokumen dengan latex ver.0.3
Membuat dokumen dengan latex   ver.0.3Membuat dokumen dengan latex   ver.0.3
Membuat dokumen dengan latex ver.0.3Alvin Setiawan
 
Membangun website e-commerce_berbasis_php_dan_my_sql
Membangun website e-commerce_berbasis_php_dan_my_sqlMembangun website e-commerce_berbasis_php_dan_my_sql
Membangun website e-commerce_berbasis_php_dan_my_sqlAlvin Setiawan
 
M8 perancangan terinci
M8 perancangan terinciM8 perancangan terinci
M8 perancangan terinciAlvin Setiawan
 

More from Alvin Setiawan (20)

Penyelesaian pers-biseksi13
Penyelesaian pers-biseksi13Penyelesaian pers-biseksi13
Penyelesaian pers-biseksi13
 
Penyelesaian persamaan-non-linear
Penyelesaian persamaan-non-linearPenyelesaian persamaan-non-linear
Penyelesaian persamaan-non-linear
 
Pengembangan sistem 1 2
Pengembangan sistem 1 2Pengembangan sistem 1 2
Pengembangan sistem 1 2
 
Pedoman ta2008
Pedoman ta2008Pedoman ta2008
Pedoman ta2008
 
Pbw week 01 basics
Pbw week 01   basicsPbw week 01   basics
Pbw week 01 basics
 
Paper
PaperPaper
Paper
 
Nl eqn lab
Nl eqn labNl eqn lab
Nl eqn lab
 
Modul6
Modul6Modul6
Modul6
 
Modul pelatihan ly_x_untuk_jurnal-feb-2cols
Modul pelatihan ly_x_untuk_jurnal-feb-2colsModul pelatihan ly_x_untuk_jurnal-feb-2cols
Modul pelatihan ly_x_untuk_jurnal-feb-2cols
 
Ml2 f304213
Ml2 f304213Ml2 f304213
Ml2 f304213
 
Micro sim template_2
Micro sim template_2Micro sim template_2
Micro sim template_2
 
Metode numerik-rinaldi-munir-libre
Metode numerik-rinaldi-munir-libreMetode numerik-rinaldi-munir-libre
Metode numerik-rinaldi-munir-libre
 
Metode numerik-buku-ajar-unila
Metode numerik-buku-ajar-unilaMetode numerik-buku-ajar-unila
Metode numerik-buku-ajar-unila
 
Metode regula falsi
Metode regula falsiMetode regula falsi
Metode regula falsi
 
Metode biseksi
Metode biseksiMetode biseksi
Metode biseksi
 
Met num3 persnonl-inier_baru
Met num3 persnonl-inier_baruMet num3 persnonl-inier_baru
Met num3 persnonl-inier_baru
 
Met num02 persamaan non linier
Met num02 persamaan non linierMet num02 persamaan non linier
Met num02 persamaan non linier
 
Membuat dokumen dengan latex ver.0.3
Membuat dokumen dengan latex   ver.0.3Membuat dokumen dengan latex   ver.0.3
Membuat dokumen dengan latex ver.0.3
 
Membangun website e-commerce_berbasis_php_dan_my_sql
Membangun website e-commerce_berbasis_php_dan_my_sqlMembangun website e-commerce_berbasis_php_dan_my_sql
Membangun website e-commerce_berbasis_php_dan_my_sql
 
M8 perancangan terinci
M8 perancangan terinciM8 perancangan terinci
M8 perancangan terinci
 

F066255899

  • 1. In Country Training 2002 E-Commerce Hal. 1 Electronic Commerce (E-Commerce) In Country Training 2002
  • 2. In Country Training 2002 E-Commerce Hal. 2 Oleh : Tessy Badriyah Nana Ramadijanti POLITEKNIK ELEKTRONIKA NEGERI SURABAYA INSTITUT TEKNOLOGI SEPULUH NOPEMBER Surabaya, Pebruari 2002
  • 3. In Country Training 2002 E-Commerce Hal. 3 DAFTAR ISI Bab I : E-Commerce 1 1.1. Pendahuluan 4 1.2. Mekanisme E-Commerce 5 1.3. Software untuk Pembuatan E-Commerce 5 1.4. Mekanisme Pembayaran untuk E-Commerce 6 1.5. Keamanan di E-Commerce 7 1.6. Standart Enkripsi pada E-Commerce 9 1.7. Standart Teknologi untuk E-Commerce 5 1.8. Memulai Berjualan secara On-line 6 1.9. Mensetup sebuah E-Commerce 7 1.9.1. Keserderhanaan dan Kemudahan 9 1.9.2. Apa yang akan dijual dan bagaimana caranya ? 5 1.9.3. Pemenuhan Ekspektasi Pelanggan 6 1.9.4. Integrasi dengan sistem yang Sudah Ada 7 1.9.5. Pendekatan On-line 9 1.9.6. Pendekatan Batch/Off-line 5 1.10. Masa Depan E-Commerce dan Dampak Bisnisnya 6
  • 4. In Country Training 2002 E-Commerce Hal. 4 BAB I E-Commerce Pembahasan mengenai e-Commerce meliputi 2 (dua) Bab. Tujuan pembelajaran pada Bab 1 ini adalah : Memberikan pengertian dan pemahaman mengenai konsep dasar dari e-Commerce Kemudian pada bab selanjutnya akan dijelaskan mengenai desain dan implementasi e- Commerce dengan dukungan bahasa pemrograman script PHP dan database MySQL. 1.1. Pendahuluan Ecommerce, atau Electronic Commerce merupakan salah satu teknologi yang berkembang pesat dalam dunia Internet. Penggunaann sistem E-Com, begitu biasanya E- commerce disingkat, menguntungkan banyak pihak, baik pihak konsumen, maupun pihak produsen dan penjual (retailer). Bagi pihak konsumen, menggunakan E-Com dapat membuat waktu berbelanja menjadi singkat. Selain itu, harga barang-barang yang dijual melalui E-Com biasanya lebih murah dibandingkan dengan harga di toko, karena jalur distribusi dari produsen barang ke pihak penjual lebih singkat dibandingkan dengan toko konvensional. Online shopping menyediakan banyak kemudahan dan kelebihan jika dibandingkan dengan cara belanja yang konvensional. Selain bisa menjadi lebih cepat, di internet telah tersedia hampir semua macam barang yang biasanya dijual secara lengkap. Selain itu, informasi tentang barang jualan tersedia secara lengkap, sehingga walaupun proses pembelian dilakukan secara on-line, akan tetapi banyak informasi penting didapatkan untuk suatu produk yang akan dibeli 1.2. Mekanisme E-Commerce Pembeli yang hendak memilih belanjaan yang akan dibeli bisa menggunakan ‘shopping cart’ untuk menyimpan data tentang barang-barang yang telah dipilih dan akan dibayar. Konsep ‘shopping cart’ ini meniru kereta belanja yang biasanya digunakan orang untuk berbelanja di pasar swalayan. ‘Shopping cart’ berupa formulir dalam web, dan dapat dibuat dengan pemrograman script (misal : PHP) dan database (misal : MySQL). Barang-barang yang sudah dimasukkan ke shopping cart masih bisa di-cancel, jika pembeli berniat untuk membatalkan membeli barang tersebut. Jika pembeli ingin membayar untuk barang yang telah dipilih, ia harus mengisi form transaksi. Form transaksi ini menanyakan identitas pembeli serta nomor kartu kredit. Karena informasi ini bisa disalahgunakan jika jatuh ke tangan yang salah, maka pihak penyedia jasa e-
  • 5. In Country Training 2002 E-Commerce Hal. 5 commerce telah mengusahakan agar pengiriman data-data tersebut berjalan secara aman, dengan menggunakan standar security tertentu. Setelah pembeli mengadakan transaksi, retailer akan mengirimkan barang yang dipesan melalui jasa pos langsung ke rumah pembeli. Beberapa cybershop menyediakan fasilitas bagi pembeli untuk mengecek status barang yang telah dikirim melalui internet. 1.3. Software untuk Pembuatan E-Commerce Dalam pembuatan ‘toko’ di internet (atau biasa disebut dengan istilah cybershop), diperlukan software-software tertentu untuk mengatur inventarisasi barang dan proses transaksi jual beli barang. Di pasaran, sudah terdapat software-software khusus untuk membuat sistem E-Com, seperti Intershop Online keluaran Intershop Communications, Merchant Server keluaran Microsoft Corp, dan Electronic Commerce Suite keluaran iCat. Software-software itu khusus dijual kepada pihak-pihak yang berniat membangun cybershop, dan dijual dengan harga ribuan dollar. Pada dasarnya software-software untuk pembuatan E- Commerce ini menggunakan database untuk penyusunan katalog. Database misalnya DB2, Oracle, atau MySQL. 1.4. Mekanisme Pembayaran untuk E-Commerce Untuk pembayaran, e-commerce menyediakan banyak alternatif. Bentuk / cara pembayaran yang digunakan di Internet umumnya bertumpu pada sistem keuangan nasional, tapi ada juga beberapa yang mengacu kepada keuangan lokal / masyarakat. Ada beberapa metoda pembayaran yang dapat digunakan, yaitu: • Sistem pembayaran kartu kredit on-line. • Sistem pembayaran check on-line. Secara umum ada beberapa mekanisme pembayaran yang berkembang terutama yang berkaitan dengan uang yang sifatnya lokal. Beberapa di ant ara-nya adalah: • LETS http://www.gmlets.u-net.com/ sebuah model dari sistem kredit yang dibangun masyarakat cyber. • Security First Network Bank http://www.sfnb.com/ sebuah b ank di Internet. • Jika ada perasaan tidak aman dalam melakukan transaksi online, maka sistem secure800 http://www.secure800.com/ dapat membantu mekanisme pembayaran melalui telepon bagi pembelian yang dilakukan secara online.
  • 6. In Country Training 2002 E-Commerce Hal. 6 Selanjutnya mekanisme pembayaran online yang terkait dengan sistem kartu kredit : o Jika anda menjalankan cybercash server http://www.cybercash.com, maka orang akan mendownload dompet cybercash, dan kemudian mereka akan mengirimkan nomor kartu kredit mereka yang di enkripsi melalui Internet. • Cybersource http://www.cybersource.com/ yang dipimpin oleh orang-orang yang menjalankan software.net http://www.software.net/ - juga memberikan jasa untuk pemrosesan kartu kredit real-time http://www.cybersource.com/service/ccard.htm. Selanjutnya yang masih terkait dengan metoda pembayaran yang melibatkan pihak ke tiga sebagai perantara adalah dengan menggunakan metoda check online. Diantaranya adalah: • CheckFree http://www.checkfree.com/ adalah sebuah sistem pembayaran secara elektronik yang telah dikembangkan sejak 1981, sistem tersebut mempunyai sebuah pembayaran tanpa check (checkless) yang dapat digunakan dari sebuah PC. • PaymentNet http://www.paymentnet.com/Home.htm akan membantu anda dalam menghandle transaksi melalui kartu kredit maupun kartu debit secara online. Referensi lebih lanjutnya untuk mekanisme pembayaran pada e-commerce dapat dibaca di beberapa tempat seperti: • Tulisan Roy Davis tentang Money--Past, Present, and Future dari http://www.ex.ac.uk/~RDavies/arian/money.html. • Tulisan tentang payment mechanisms designed for the internet yang di publihasikan oleh Network Payment Mechanisms and Digital Cash page bisa diperoleh di http://ganges.cs.tcd.ie/mepeirce/Project/oninternet.html. • http://www.transaction.net/ 1.5. Keamanan di E-Commerce Banyak pendapat yang mengatakan bahwa transaksi di Internet tidak aman karena banyaknya kasus tentang pembobolan sistem keamanan Internet. Hal yang paling berat adalah meyakinkan para pembeli bahwa e-commerce adalah aman untuk mereka. Sebenarnya sebagian besar dari pencurian kartu kredit terjadi di sebabkan oleh pegawai sales yang menghandle nomor kartu kredit tersebut. Sistem e-commerce sebetulnya menghilangkan keinginan mencuri tadi dengan cara meng-enkripsi nomor kartu kredit tersebut di server perusahaan. Para pakar e-commerce mengatakan bahwa transaksi e-commerce jauh lebih aman daripada pembelian kartu kredit biasa. Karena setiap kali dilakukan pembayaran dengan menggunakan kartu kredit – dan setiap kali resi pembelian kartu kredit tersebut dibuang – maka sebetulnya telah terbuka informasi kartu kredit tersebut dapat dicuri. Transaksi dengan
  • 7. In Country Training 2002 E-Commerce Hal. 7 kartu kredit dapat di enkripsi menggunakan Secure Sockets Layer (SSL) http://www.builder.com/Business/Ecommerce20/ss05.html, sebuah protokol yang akan mengamankan saluran komunikasi ke server, memproteksi data pada saat dikirimkan melalui Internet. SSL menggunakan public key encryption, salah satu metoda enkripsi yang cukup kuat saat ini. Untuk melihat apakah sebuah Web site di amankan menggunakan SSL dapat dilihat pada awal URL digunakan https bukan http. Pembuat browser dan perusahaan kartu kredit saat ini mempromosikan sebuah standar tambahan bagi keamanan di namakan Secure Electronic Transaction (SET) http://www.builder.com/Business/Ecommerce20/ss05.html. SET akan mengenkode nomor kartu kredit yang ada di server vendor di Internet – yang hanya dapat membaca nomor kartu kredit tersebut hanya bank dan perusahaan kartu kredit – artinya pegawai vendor / merchant tidak bisa membaca sama sekali sehingga kemungkinan terjadi pencurian oleh vendor menjadi tidak mungkin. Dalam prakteknya, berbelanja di web memerlukan koneksi ke internet dan browser yang mendukung transaksi elektronik yang aman, seperti Microsoft Internet Explorer dan Netscape Navigator. Microsoft dan Netscape, bekerja sama dengan perusahaan kartu kredit (Visa dan MasterCard), serta perusahaan-perusahaan internet security (seperti VeriSign), telah membuat standar enkripsi khusus yang membuat transaksi melalui web menjadi sangat aman. Yang menandakan suatu retailer web site aman atau tidak adalah adanya tanda khusus yang muncul di status bar di bagian bawah layar browser. Pada IE, tanda yang muncul adalah tanda gembok terkunci di pojok kanan status bar. Sedangkan pengguna Netscape Navigator, akan melihat tanda kunci di pojok kiri status bar. Jika tanda-tanda tersebut muncul, berarti Anda sedang ter-connect pada server yang aman. Walaupun begitu, karena standar yang dipakai untuk secure connection ini relatif baru, belum semua cybershop menggunakan standar ini. Kumpulan dari banyak cybershop yang telah terintegrasi dinamakan cybermall. Beberapa cybermall akan mengecek terlebih dahulu legitimasi dari cybershop yang akan masuk, sehingga dapat menghindari adanya cybershop yang palsu. Beberapa cybermall juga menyediakan jasa-jasa tambahan, seperti billing atau tagihan yang tersentralisasi, menjadikan proses belanja menjadi lebih mudah dan aman. 1.6. Standart Enkripsi pada e-Commerce Standar enkripsi yang digunakan dalam e-commerce pada saat ini adalah SET (Secure Electronic Transaction). Selain digunakan untuk pembayaran dengan credit card, SET juga digunakan untuk pembayaran dengan smartcard. Dengan menggunakan SET, kerahasiaan informasi custo mer (berupa nama dan nomor kartunya) bisa dijaga. SET juga bisa menjaga autotentifikasi atau identitas penjual dan customer, sehingga tidak bisa disalahgunakan oleh sembarang orang.
  • 8. In Country Training 2002 E-Commerce Hal. 8 1.7. Standart Teknologi untuk E-Commerce Di samping berbagai standar yang digunakan di Intenet, e-commerce juga menggunakan standar yang digunakan sendiri, umumnya digunakan dalam transaksi bisnis-ke- bisnis. Beberapa diantara yang sering digunakan adalah: Secure Socket Layer (SSL): Protokol ini di disain untuk membangun sebuah saluran yang aman ke server. SSL menggunakan teknik enkripsi public key untuk memproteksi data yang di kirimkan melalui Internet. SSL dibuat oleh Netscape tapi sekarang telah di publikasikan di public domain. Secure Electronic Transactions (SET): SET akan mengenkodekan nomor kartu kredit yang di simpan di server merchant. Standar ini di buat oleh Visa dan MasterCard, sehingga akan langsung di dukung oleh masyarakat perbankan. Ujicoba pertama kali dari SET di e- commerce dilakukan di Asia. 1.8. Memulai Berjualan secara On-Line Saat ini banyak sekali produk-produk yang memungkinkan kita mensetup situs e- commerce dan langsung berjualan dalam waktu beberapa hari / minggu, mulai dari yang simple, murah hingga mahal dan kompleks. Para pengusaha kecil mungkin harus melihat jauh diluar ISP-nya untuk melihat solusi- solusi murah tadi. Contohnya, Forman interactive http://www.formaninteractive.com/ memberikan produk Internet creator seharga kurang dari US$150. Perangkat lunak tersebut menggunakan beberapa wizard untuk menolong anda membuat halaman web yang aman untuk menjual produk anda. Bahkan jika meletakan halaman web tersebut di server Forman, mereka akan membantu menangani pembayaran melalui CheckFree http://www.checkfree.com/. Solusi-solusi yang murah dan menarik ini juga tampaknya juga diberikan oleh indosatcom sebuah anak perusahaan dari Indosat yang memfokuskan diri di e-commerce. Salah satu produk indosatcom adalah EDIWeb menjadi menarik untuk para pengusaha kecil yang hanya bermodal akses ke WARNET. Telkom juga meluncurkan plasa.com belum terhitung inisiatif lain seperti Wasantara dll. Untuk mulai berjualan secara on-line, terlebih dahulu terdapat beberapa istilah yang perlu diketahui beberapa diantara-nya adalah: • Digital atau electronic cash: juga dikenal sebagai e-cash, istilah ini ditujukan untuk beberapa pola / metoda yang memungkinkan seseorang untuk membeli barang atau jasa dengan cara mengirimkan nomor dari satu komputer ke komputer yang lain. Salah satu kelebihan yang dibawa oleh digital cash adalah sifatnya yang anonymous dan dapat di pakai ulang, seperti uang cash biasa. Hal ini merupakan perbedaan utama antara e-cash dengan transaksi kartu kredit melalui Internet. Untuk informasi lebih
  • 9. In Country Training 2002 E-Commerce Hal. 9 lanjut dapat dilihat di PC Webopaedia http://www.sandybay.com/pc- web/digital_cash.htm. • Digital money: adalah terminologi global untuk berbagai e-cash dan mekanisme pembayaran elektronik di Internet. • Disintermediation: adalah proses untuk memotong jalur perantara. Kira-kira pada saat perusahaan yang berbasiskan web membypass kanal retail tradisional dan menjual secara langsung ke pelanggan / pembeli, maka perantara tradisional – seperti toko dan jasa mail order – akan kehilangan pekerjaan. • Electronic checks: pada saat ini sedang di ujicoba oleh CyberCash http://www.cybercash.com/ • Electronic wallet : Pola pembayaran – seperti CyberCash Internet Wallet http://www.cybercash.com/, akan menyimpan nomor kartu kredit anda di harddisk anda dalam bentuk terenkripsi yang aman. • Extranet: adalah sebuah kelanjutan dari intranet perusahaan yang mengkaitkan jaringan internal satu perusahaan dengan jaringan internal supplier mereka maupun pelanggan mereka. Dengan cara itu sangat mungkin untuk mengembangkan aplikasi e- commerce yang memungkinkan menyambungkan semua aspek bisnis, dari proses pemesanan hingga pembayaran. • Micropaymet adalah transaksi dalam jumlah kecil antara beberapa ratus rupiah hingga puluhan ribu rupiah, misalnya untuk mengambil / mengakses grafik, game maupun informasi. Pay-as-you-go micropayment seharusnya akan membuat revolusi di dunia e- commerce. Contohnya ESPN SportsZone http://espn.sportszone.com/ menggunakan CyberCoin untuk membayar US$1 untuk mengaskses situs mereka selama satu hari – tanpa perlu membayar penuh langganan bulanan. 1.9. Mensetup sebuah e-Commerce Seperti dijelaskan sebelumnya, sebuah e-commerce berbeda dengan situs web biasa karena perbedaan objektif diantara mereka. Yang satu diarahkan untuk memperoleh pemasukan secara langsung dari penjualan, sedang sebuah situs web tradisional lebih di orientasikan kepada komunikasi. Hal ini selanjutnya akan menyebabkan beberapa perbedaan teknis dalam mensetup sebuah situs. Beberapa hal yang berkaitan dengan e-commerce akan dicoba dibahas berikut ini.
  • 10. In Country Training 2002 E-Commerce Hal. 10 1.9.1. Kesederhanaan dan Kemudahan Bila dibandingkan sebuah katalog dengan brosur atau bentuk media marketing lainnya yang biasa digunakan di dunia konvensional. Katalog biasanya mempunyai struktur yang berbeda. Katalog biasanya mempunyai index untuk kecepatan akses ke informasi, usaha yang serius biasanya diberikan untuk menjamin agar layout sebuah katalog menjadi jelas dan mudah dibaca. Secara alamiah, katalog lebih repetitif - ada elemen-elemen grafik yang di ulang di setiap halaman untuk memberikan petunjuk kepada pembaca halaman web. Hal yang digunakan dalam katalog di dunia konvensional akan digunakan juga di dunia elektronik. Mereka mempunyai tujuan yang sangat berbeda dengan situs web yang murni untuk public relation, hal tersebut harus nampak pada layout situs. Situs dapat menggunakan pola situs multimedia seperti animasi, suara, dan aplet Java. Karena sebuah e-commerce harus melayani pembeli yang akan membeli secara langsung, maka sebuah e-commerce harus bersih dan effisien agar dapat dibaca dengan cepat. Yang menjadi penekanan adalah kejelasan dan kemudahan penggunaan. Grafik sebaiknya kecil dan repetitif. Penggunaan tombol dan label harus jelas dan mudah dimengerti. Tombol dengan teks lebih disukai. Pemrograman HTML harus dilakukan secara efisien. Contohnya untuk menampilkan hasil searching dalam bentuk tabel. Umumnya browser akan lambat untuk menampilkan tabel; browser harus men-download seluruh content sebelum bisa menampilkan tabel-nya. Oleh karena itu akan lebih effisien untuk menggunakan multiple / beberapa tabel. 1.9.2. Apa yang akan dijual dan bagaimana caranya Kebanyakan e-commerce di Internet menjual barang yang relatif murah, seperti barang konsumen biasa (seperti buku dan CD) atau barang operasional (seperti pena dan bloknote). Pembeli dapat browse atau memilih barang, memasukan barang yang dipilih ke virtual shopping cart. Setelah mereka selesai berbelanja, mereka perlu registrasi, membayar dengan kartu kredit atau bentuk e-uang yang lain, dan barang akan dikirimkan kepada mereka melalui kurir - atau, pada software, e-buku, e-artikel, e-lagu, mereka bisa mendownload produk tersebut secara langsung. Sebetulnya e-commerce tidak terbatas pada barang berharga murah, jasa telah terbukti sangat populer. Banyak bank telah membuka cabang elektronik-nya. Berbagai industri jasa mulai bergerak online. Contoh, 1-800-MYLOGO <http://www.1800mylogo.com/> sebuah jasa disain telah memungkinkan logo di pesan secara online. Barang berharga tinggi seperti mobil dan rumah memang belum dapat dijual secara baik melalui media online. Akan tetapi media online dapat menjadi kanal pre-sales yang sangat baik sehingga merupakan versi enhanced dari situs pemasaran tradisional.
  • 11. In Country Training 2002 E-Commerce Hal. 11 Program katalog pada e-commerce dapat berupa kombinasi script di server (PHP, CGI, servlets dan lainnya) dengan feature utama seperti shopping cart, fasilitas search, browsing yang effisien, dan registrasi user (yang mungkin termasuk didalamnya validasi kartu kredit). 1.9.3. Pemenuhan Ekspektasi Pelanggan Perusahaan mapan yang melakukan migrasi ke e-commerce biasanya harus menghadapi masalah tambahan yaitu harus dapat memenuhi ekspektasi customer based mereka yang sudah ada. Sebuah strategi e-commerce yang sukses akan bertumpu pada kekuatan yang sudah ada di perusahaan dan meng-enhance apa yang dapat perusahaan itu berikan. Penanganan yang spesial diberikan untuk menjamin agar pelanggan yang sudah ada dapat dengan mudah mengakses produk-produk yang sudah familiar bagi mereka. Yang lebih penting lagi, penanganan yang hati-hati harus di perhatikan agar servis level yang sama dapat diberikan secara online seperti hal-nya secara offline. Ada dua (2) pendekatan yang sering digunakan untuk memberikan jasa personal yang online. Pertama adalah membuka kepakaran internal perusahaan secara online melalui sistem pakar (expert system). Cara yang ke dua adalah menggunakan agen software yang cerdas . Agen software tersebut dapat juga memberitahukan pembeli jika produk yang dia sukai muncul. Pada dasarnya apapun pendekatan yang dipakai, semua sistem yang di sebutkan di atas mudah untuk di integrasikan dengan standar merchant toolkit. Yang penting adalah kita harus menyadari bahwa pembeli hanya akan kembali ke sebuah e-commerce karena beberapa sebab seperti harga, kualitas jasa, convenience, dan sebagainya. 1.9.4. Integrasi dengan sistem yang sudah ada Yang paling sulit adalah proses integrasi e-commerce dengan sistem yang sudah ada. E-commerce tidak berdiri sendiri, dia di dukung oleh beberapa sistem informasi seperti billing, manajemen stok, accounting, dan manajemen panggilan dari pembeli (kalau anda melakukan direct sales menggunakan telepon). Kombinasi dari sistem ini dikenal sebagai back-end. Mengintegrasikan aplikasi yang sudah lama ada dengan sistem web adalah pekerjaan- pekerjaan yang seringkali harus dilakukan oleh intranet developer. Setiap organisasi telah mengembangkan sistem accounting dan billing yang unik yang merefleksikan budaya dan pasar dari organisasi tersebut. Back-end telah dikembangkan dalam waktu yang lama. Back-end berkembang dengan perusahaan, biasanya back-end tidak di disain untuk online commerce. Mengadaptasi sistem seperti ini biasanya memerlukan kemampuan untuk memecahkan beberapa masalah di bidang responsiveness, keamanan, konversi format, scalability dan banyak lagi. Di atas semua pekerjaan tersebut biasanya ada saja hal-hal kecil yang menjengkelkan. Contohnya, sebuah perusahaan tidak dapat memberikan nomor referensi
  • 12. In Country Training 2002 E-Commerce Hal. 12 kepada pembeli online tanpa harus mengubah secara drastis back-end sistem mereka. Tentunya mereka akan sangat berkeberatan untuk melakukan perubahan tersebut. Solusi yang ditempuh akhirnya memberikan nomor referensi yang sifatnya sementara kepada pembeli online, dan mengkonfirmasikan kemudian melalui e-mail dengan nomor referensi yang sesungguhnya yang sudah di konfirmasikan ke back-end. Untuk menghindari kebingungan akhirnya digunakan kata "confirmation number" untuk membedakan nomor referensi yang sifatnya sementara tadi. Kejadian seperti akan banyak terjadi pada sistem back-end yang mapan. Secara umum ada dua pola utama pada saat kita mengintegrasikan sebuah sistem : • Membuat sistem back -end dapat diakses secara online melalui e-commerce, atau • Putuskan sama sekali e-commerce dari back-end dan duplikasi data dari e-commerce ke back -end dan sebaliknya secara batch. Tentunya, pilihan yang paling tepat akan sangat tergantung pada sistem yang ada. Umumnya perusahaan-perusahaan menginginkan back-end mereka dapat di akses secara online, akan tetapi mereka umumnya lebih suka solusi kedua yang memutuskan back-end dari online e-commerce -nya karena lebih murah dan lebih mudah di implementasikan. 1.9.5. Pendekatan Online Pada pendekatan online, e-commerce mempunyai akses langsung ke database di back- end. Hal ini mempunya dua keuntungan utama yaitu: • Sangat mungkin untuk memberikan servis yang lebih baik, seperti informasi stok yang real -time. • Sangat menekan biaya operasi sistem, karena tidak dibutuhkan intervensi manusia untuk menerima pesanan atau update harga. Kesulitan utama dalam pendekatan online ini adalah biaya dan keamanan. Keamanan adalah isu yang paling penting dalam pendekatan online. Sedang dukungan back-end tidak hanya untuk e-commerce-nya tapi juga untuk seluruh bagian dari perusahaan; oleh karena sangat penting artinya agar e-commerce tersebut dapat diakses secara aman. Hal lain yang akan membuat faktor biaya menjadi naik karena cepatnya obsolete perangkat lunak: back-end perlu secara periodik di upgrade dan di modifikasi. Responsiveness, seperti diterangkan terdahulu, sangat penting dalam e-commerce; oleh karena itu back-end harus dapat mengirim data secepatnya. Jika e-commerce sukses, atau back-end sudah mulai overload karena banyak digunakan maka upgrade dan perubahan di back-end harus di lakukan supaya semua berjalan secara lancar efisien. Yang terakhir, pendekatan online memerlukan cukup banyak pekerjaan yang mahal terutama untuk customisasi.
  • 13. In Country Training 2002 E-Commerce Hal. 13 1.9.6. Pendekatan batch / offline Oleh karena hal-hal yang di sebutkan di atas, banyak perusahaan akhirnya memilih untuk memisahkan e-commerce mereka dengan back-end. Data, seperti deskripsi produk dan informasi pesanan, di duplikasi di kedua lingkungan tersebut. Setiap sistem mempunya database masing-masing yang di optimasi untuk kebutuhan-nya. Keuntungan utama dari pendekatan off-line ini adalah masing-masing dapat berjalan dan berkembang sesuai dengan kebutuhan. Tidak ada kebutuhan untuk mengadaptasi back-end ke e-commerce. Dalam kasus-kasus yang simpel bahkan data dapat di duplikasi secara manual. Proses manual cocok untuk jumlah produk yang kecil dan tetap (statik), untuk jumlah produk yang lebih besar dan dinamik (berubah-ubah) dibutuhkan pendekatan yang lebih otomatis. Alternatif yang populer adalah membangun proses meng-copy yang sifatnya batch secara periodik, proses ini akan secara otomatis melakukan resinkonisasi antara e-commerce dengan database di back-end. 1.10. Masa Depan e-Commerce dan Dampak Bisnisnya Tampaknya e-commerce mempunyai masa depan yang cerah. Jika berbagai detail dari perdagangan online ini dapat di selesaikan maka bukan mustahil e-commerce dan Internet akan mengubah struktur dunia usaha secara global. Dengan perkembangan masyarakat virtual yang demikian besar – banyak orang yang berpartisipasi dalam berbagai interest group online – memperlihatkan pergeseran paradigma dari kekuatan ekonomi yang bertumpu pada pembuat / manufacturer ke kekuatan pasar. Perusahaan kecil dengan produk yang lebih baik dan customer service yang baik akan dapat menggunakan masyarakat virtual ini untuk mengalahkan perusahaan besar – sesuatu yang cukup sulit dimengerti di dunia nyata. Perusahaan yang akan secara langsung dirugikan oleh E-Commerce adalah agen perjalanan, tiket bioskop, katalog mail-order, dan toko retail – terutama toko perangkat lunak. Mungkin kalau di Indonesia yang terasa hanya bagi agen perjalanan & bisnis sekitar turis. Cerita sukses e-commerce, seperti amazon.com http://www.amazon.com/, sebetulnya merupakan bentuk lain dari sebuah proses perantara. Amazon.com tidak menerbitkan buku. Mereka semua umumnya hanyalah sebuah distributor online saja. E-middleman harus membuktikan bahwa ada nilai tambah yang diberikan pada proses pembelian secara online, melalui marketing, customer service, juga metoda-metoda lain. Kalau tidak maka pelanggan akan memutuskan modem-nya dan tidak akan menggunakan jasa mereka lagi.
  • 14. In Country Training 2002 E-Commerce Hal. 14 BAB II DESAIN DAN IMPLEMENTASI ONLINE-BOOKSTORE Tujuan pembelajaran pada Bab 2 ini adalah : Membangun kerangka aplikasi pemrograman database berbasis Web dengan kasus toko buku online (online-bookstore), dengan dukungan bahasa pemrograman script PHP dan database MySQL. 2.1. Alur Aplikasi Online-Bookstore Secara umum suatu online-bookstore memiliki proses bisnis sebagai berikut : • Halaman depan yang harus dipilih oleh user adalah kategori produk yang menampilkan jenis buku yang dijual, misal : software, elektronik, komputer, unix, dan sebagainya. • Jika user selesai memilih kategori produk, kemudian berikutnya akan ditampilkan katalog produk dari kategori yang dipilih • Pada katalog produk, jika user selesai mengklik salah satu judul buku yang ada maka akan muncul halaman detail tentang buku tersebut yang meliputi judul buku yang dipilih, harga dan gambar covernya. Pada halaman ini, juga ditampilkan tombol pemesanan dan jumlah buku yang dipesan yang akan diproses pada bagian “keranjang belanja” • Pada keranjang belanja, resume buku yang dipesan akan ditampilkan dan terdapat link untuk kembali ke halaman depan (kategori produk), katalog produk, maupun halaman pembayaran (checkout). 2.2. Desain Sistem dan Perancangan Database Katalog Bagian ini akan menjelaskan sistem katalog yang dipergun akan oleh tiap kategori produk, yang meliputi perancangan skema database, pembuatan database dan tabel di MySQL, fungsi koneksi ke database dan halaman kategori serta halaman detail. 2.2.1. Skema Database Katalog Desain skema database yang digunakan untuk sistem katalog ini meliputi 3 (tiga) buah tabel yaitu tabel penerbit, tabel judulbuku dan tabel tipe_kategori. Ketiga buah tabel tersebut disimpan dalam sebuah database yang diberi nama toko_online. Berikut ini akan ditampilkan struktur masing-masing tabel pada database toko_online, beserta kegunaannya.
  • 15. In Country Training 2002 E-Commerce Hal. 15 Halaman Utama untuk memilih Kategori Barang Halaman Katalog Produk dari Kategori Barang yang dipilih Detail dari produk yang dipilih * Fasilitas untuk : - memasukkan ke keranjan belanja - menentukan jumlah item Halaman Keranjang Belanja Fasilitas untuk : - Menambah jumlah item - membatalkan pemesanan, dll Halaman Check-Out (pembayaran) Gambar 2.1. : Alur aplikasi Online-Bookstore Struktur Tabel tipe_kategori Kegunaan : Menyimpan informasi kategori buku yang dijual. Field Tipe Panjang Keterangan Tipe_Ctg Char 4 Tipe dari kategori produk Nama_Ctg Char 40 Nama dari kategori produk Primary key (kunci utama) dari tabel tipe_kategori diatas adalah field Tipe_Ctg yang akan menjadi foreign key pada tabel judulbuku.
  • 16. In Country Training 2002 E-Commerce Hal. 16 Struktur Tabel penerbit Kegunaan : Menyimpan data penerbit. Field Tipe Panjang Keterangan ID_Pen Char 4 Nomor identifikasi penerbit Nama_Pen varchar 40 Nama penerbit Alamat_Pen varchar 50 Alamat penerbit Primary key dari tabel penerbit ini adalah field ID_Pen yang menyimpan nomer identifikasi dari penerbit. Struktur Tabel judulbuku Kegunaan : Menyimpan judul buku yang disediakan Field Tipe Panjang Keterangan ID_Judul Char 4 Nomer identifikasi judul buku Judul varchar 40 Judul Buku Tipe_Ctg Char 4 Tipe kategori buku (foreign key dari tabel tipe_kategori) ID_Pen Char 4 Nomer identifikasi penerbit (foreign key dari tabel penerbit) Harga Integer - Harga Buku Th_terbit Integer - Tahun penerbitan buku Note Char 100 Keterangan mengenai buku yang bersangkutan Pada tabel judulbuku ini yang menjadi primary key (kunci utama) adalah field ID_Judul yang merupakan nomer identifikasi buku. Dan terdapat dua foreign key yaitu Tipe_Ctg (tipe kategori buku) yang berasal dari tabel tipe_kategori dan ID_Pen (nomer identifikasi penerbit) yang berasal dari tabel penerbit.
  • 17. In Country Training 2002 E-Commerce Hal. 17 Pada tabel penerbit dan judulbuku ada beberapa field yang dipilih sebagai informasi yang akan ditampilkan pada halaman detail setiap buku yang dijual. Field-field tersebut yaitu : 1. Pada tabel penerbit : ID_Pen (identifikasi penerbit) dan Nama_Pen (nama penerbit). 2. Pada tabel judubuku : ID_Judul (nomer identifikasi buku), Judul (judul buku), ID_Pen (identifikasi penerbit), Harga (harga buku), Note (keterangan), Th_terbit (tahun penerbitan). 2.2.2. Membuat Database dan Tabel di MySQL Pada bagian ini akan dijelaskan cara pembuatan database dan tabel di MySQL. Langkah-langkah pembuatan database di MySQL adalah : 1. Pada Windows Explorer, di sub directory dimana executable file dari MySQL berada (misal di C:MySQLbin) klik dua kali winmysqladmin
  • 18. In Country Training 2002 E-Commerce Hal. 18 MySQLAdmin akan aktif ditandai dengan icon rambu lalu lintas dengan warna hijau di pojok kanan bawah layar monitor seperti ini : 2. Setelah itu keluar ke MS-DOS Prompt. Dan dari windows directory, arahkan menuju ke subdirectory MySQL dengan perintah berikut : C:WINDOWS>cd c:mysqlbin 3. Lakukan koneksi ke server database MySQL dengan perintah : C:mysqlbin>mysql –h localhost Akan keluar tampilan, misal seperti ini (akan berbeda untuk sistem lain) : Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 2 to server version : 3.23.47 Type ‘help;’ or ‘h’ for help. Type ‘c’ to clear the buffer. mysql> 4. Kemudian berikan perintah untuk membuat database toko_online mysql>create database toko_online; Jangan lupa untuk memberi tanda titik koma (;) pada akhir perintah. Akhirnya, database toko_online telah selesai dibuat : Query OK, 1 row affected (0.05 sec) Berikutnya, akan dijelaskan langkah pembuatan tabel di MySQL : 1. Untuk membuat tabel di MySQL, aktifkan terlebih dahulu database apa yang akan digunakan. Dalam contoh impelementasi kita, yang digunakan adalah database toko_online. mysql>use toko_online; kemudian akan tampil : Database changed. 2. Kemudian buat tabel tipe_kategori dengan struktur seperti yang sudah didefinisikan sebelumnya : mysql>create table tipe_kategori(Tipe_Ctg char(4), Nama_Ctg varchar(40)); 3. Akhirnya tabel tipe_kategori telah selesai dibuat : Query OK, 0 row affected (0.05 sec) Lakukan cara yang sama untuk tabel yang lain.
  • 19. In Country Training 2002 E-Commerce Hal. 19 2.2.3. Fungsi Koneksi Database SQL Pada bagian ini akan dijelaskan fungsi koneksi ke database MySQL. Fungsi-fungsi yang akan dipergunakan untuk melakukan koneksi ke database server akan disimpan ke dalam sebuah file. Nantinya file yang menyimpan fungsi ini (konek.inc) bisa disisipkan (embedded) ke file lain yang melakukan koneksi. File konek.inc berikut ini berisi perintah-perintah fungsi yang dipergunakan untuk melakukan koneksi ke database MySQL, termasuk variabel-variabel yang dapat dipergunakan oleh file yang akan meng-include-kan file ini. <? // deklarasi variabel untuk koneksi ke server database $database=”toko_online”; $hostname=”localhost”; // lakukan koneksi if (!$sambung=mysql_connect($hostname,””,””)) echo mysql_error(); // pilih database untuk diaktifkan mysql_select_db($database,$sambung); ?> 2.2.4. Halaman Pilihan Kategori Setelah selesai dilakukan pembahasan tentang konsep desain dan alur proses dari persoalan yang akan diimplementasikan, maka berikutnya akan diberikan pembahasan mengenai implementasi halaman-halaman script PHP. Halaman pertama yang akan dibangun adalah halaman menu utama yang berisi kategori produk yang menampilkan jenis buku yang dijual. Pada halaman ini terdapat link ke halaman katalog produk untuk suatu kategori yang dipilih oleh user yang ditentukan oleh nilai field Tipe_Ctg untuk kategori tersebut. Berikut ini adalah implementasi dari halaman menu utama yang disimpan sebagai file indek.php <html> <head> <title>Menu Utama </title> </head> <body> <center> <h2>Online BookStore EEPIS-ITS </h2> </center> <br> <p>Pililh kategori buku : <br> <p>
  • 20. In Country Training 2002 E-Commerce Hal. 20 <table width=300> <? # sisipkan koneksi ke server database include “konek.inc”; # menampilkan daftar kategori $kategori=”Select Tipe_Ctg, Nama_Ctg From tipe_kategori”; # eksekusi query if (!$hasil=mysql_query($kategori, $sambung)) { echo mysql_error(); exit(); } // menampilkan semua record pada tabel tipe_kategori while ($baris=mysql_fetch_row($hasil)) { echo “<tr>”; // tampilkan kategori echo “<td><a href=kategori.php?tipe=$baris [0]>$baris [1]</a>”; } ?> </table> </body> </html> 2.2.5. Halaman Kategori Halaman menu utama (indek.php) memiliki link ke halaman yang katalog produk (kategori.php) dengan mengirimkan satu variabel dengan nama Tipe_Ctg sesuai dengan kategori yang dipilih oleh user pada halaman menu utama. Setelah itu pada halaman kategori.php akan terdapat variabel dengan nama $tipe yang berisi kode kategori sesuai dengan yang dipilih oleh user. Halaman katalog produk (kategori.php) akan menampilkan selu ruh judul buku pada tabel judulbuku dengan nilai kolom Tipe_Ctg yang sama dengan isi variabel $type yang dibawa dari halaman kategori (indek.php). Berikut ini adalah implementasi dari halaman katalog produk yang disimpan sebagai file kategori.php
  • 21. In Country Training 2002 E-Commerce Hal. 21 <html> <head> <? include “konek.inc”; // ambil infomasi kategori yang dipilih $kategori=”Select Tipe_Ctg,Nama_Ctg From tipe_kategori where Tipe_Ctg=$tipe”; // eksekusi query if (!$hasil=mysql_query($kategori,$sambung)) { echo mysql_error(); exit(); } $baris=mysql_fetch_row($hasil); // sekarang $baris[0] berisi tipe kategori yang dipilih, // $baris[1] berisi nama kategori yang dipilih ?> <body> <center> <? // tampilkan tipe kategori <h2>echo $baris[0]; // tampilkan nama kategori echo $baris[1]; </h2> </center> <p> Pilih salah satu buku yang tersedia <p> <table width=640> <? // lakukan query untuk mendapatkan semua judul buku dari nama kategori // yang ditentukan $buku=”Select * from judulbuku where Tipe_Ctg=$tipe”; // laksanakan query if (!$hasil=mysql_query($buku,$sambung)) { echo mysql_error(); exit(); } // tampilkan hasil query dengan menampung hasil record pada $baris // $baris[0] berisi ID_Judul, $baris[1] berisi Judul, dst. While (!$baris=mysql_fetch_row($hasil)) { echo “<tr>”; // tampilkan judul buku yang dapat di-link
  • 22. In Country Training 2002 E-Commerce Hal. 22 echo “<td><a href=detail.php?ID_Judul=$baris[0]>$baris [1]</a>”; // tampilkan harga buku echo “<td>$baris[4]”; // tampilkan tahun penerbitan echo “<td>$baris[5]”; } ?> </table> <p> <a href=indek.php>Kembali ke halaman pilihan kategori</a> </body> </html> 2.2.6. Halaman Detail Halaman katalog produk (kategori.php) mempunyai link ke halaman detail (detail.php) untuk setiap judul buku yang tertampil dan tersimpan sebagai variabel ID_judul (identifikasi judul buku). Setelah itu pada halaman detail, akan terdapat suatu variabel dengan nama $ID_judul dengan isi kode judul buku sesuai dengan pilihan user pada halaman katalog produk. Halaman detail akan menampilkan informasi detail dari buku yang memiliki nilai field ID_Judul sama dengan isi variabel $ID_Judul yang dibawa dari halaman katalog produk (kategori.php). Berikut ini adalah implementasi dari halaman detail yang disimpan sebagai file detail.php <html> <head> <? Include “konek.inc”; $rinci=”Select judulbuku.ID_Judul, judulbuku.Judul, judulbuku.Notes, judulbuku.Th_terbit, judulbuku.Harga, penerbit.Nama_Pen From judulbuku, penerbit Where judulbuku.ID_judul=’$ID_Judul’ And judulbuku.th_ID_Pen=penerbit.ID_Pen”; // laksanakan query if (!$hasil=mysql_query($rinci,$sambung)) { echo mysql_error(); exit(); } $baris=mysql_fetch_row($hasil); // sekarang $baris[0] berisi field ID_Judul, $baris[1] berisi field Judul, // $baris[2] berisi field Notes, $baris[3] berisi field Th_terbit, // $baris[4] berisi fieldHarga, $baris[5] berisi Nama_Pen
  • 23. In Country Training 2002 E-Commerce Hal. 23 </head> <body> <h2><? Echo $baris [1] ?></h2> <center> <table width=640> <? Echo “<tr>”; Echo “<td width=100> Keterangan </td>”; Echo “<td width=150> “ . $baris[2] . “</td>”; Echo “</tr>n”; Echo “<tr>”; Echo “<td width=100> Nama Penerbit </td>”; Echo “<td width=150> “ . $baris[5] . “</td>”; Echo “</tr>n”; Echo “<tr>”; Echo “<td width=100> Tahun Penerbitan </td>”; Echo “<td width=150> “ . $baris[3] . “</td>”; Echo “</tr>n”; Echo “<tr>”; Echo “<td width=100> Harga </td>”; Echo “<td width=150> “ . $baris[4] . “</td>”; Echo “</tr>n”; ?> </table> // tampilkan form isian jumlah <form action=’keranjang.php’ method=’GET’> <input type=hidden name=ID_Judul value=”<? Echo $baris[0] ?>” > Quantity <input type=text size=4 name=qty> <input name=order value=ADD type=submit> </form> </body> </html>
  • 24. In Country Training 2002 E-Commerce Hal. 24 2.3. Bagian Keranjang Belanja (Shopping Basket) Sejauh ini telah dilakukan pembahasan mengenai sistem katalog yang digunakan untuk membangun sebuah online-bookstore. Berikutnya adalah pembahasan mengenai sistem keranjang belanja (shopping basket) yang akan melakukan pencatatan berapa buku yang telah dipesan oleh user. Ada beberapa alternatif yang dapat digunakan untuk mengimplementasikan keranjang belanja, diantaranya adalah : • Menggunakan cookies Item disimpan sebagai masing-masing cookies untuk setiap user yang sedang melakukan aktifitas belanja buku. Karena menggunakan cookie, maka user dapat melanjutkan aktifitas belanjanya di waktu yang lain pada komputer yang sama, tetapi tidak dapat dibuka pada komputer yang lain (karena komputer yang lain ini tidak menyimpan cookie dari aktifitas belanja user). • Menyimpan semua informasi belanja user pada database Dengan cara ini maka beban server menjadi semakin bertambah dikarenakan akses ke database menjadi lebih sering, namun informasi belanja yang disimpan bisa lebih banyak, dan proses belanja dapat dibuka di komputer yang lain, tentu saja dengan nama user dan password yang sama. Implementasi keranjang belanja yang akan dibahas berikut ini menggunakan cara yang kedua yaitu menyimpan semua informasi belanja user pada database. 2.3.1. Desain Database Keranjang Belanja Pada dasarnya sebuah keranjang belanja berfungsi untuk : • menambah item baru • menghapus item yang lama • mengganti jumlah item • membatalkan pemesanan • melakukan pembayaran (checkout) Untuk keperluan tersebut maka diperlukan tambahan 2 (dua) tabel lagi yaitu : • tabel order_detail tabel ini menyimpan informasi detail dari record pada tabel order. Struktur dari tabel order_detail Field Tipe Panjang Keterangan ID_Order Char 4 Nomer identifikasi pemesanan (foreign key dari tabel order) Urut_Order Char 40 Nomer urut item yang dipesan pada keranjang belanja ID_Judul Char 4 Nomer identifikasi buku (foreign key dari table judulbuku) Qty Char 4 Alamat dari pembeli
  • 25. In Country Training 2002 E-Commerce Hal. 25 • tabel order tabel ini akan menyimpan seluruh informasi yang umum dari pesanan user Struktur dari tabel order : Field Tipe Panjang Keterangan ID_Order Char 4 Nomer identifikasi pemesanan Status_Order Char 40 Status pemesanan (baru atau sudah checkout) Pembeli Char 4 Nama Pembeli Alamat Char 4 Alamat dari pembeli Kota Integer - Nama kota asal pembeli KodePos Integer - Kode pos dari alamat pembeli Total_Order Char 100 Total pembelian Pajak Pajak pembelian 2.3.2. Halaman Keranjang Belanja Implementasi dari halaman keranjang belanja (shopping basket) merupakan bagian yang paling kompleks dari aplikasi online-bookstore. Pada dasarnya fasilitas sederhana atau yang paling dasar dari shopping basket adalah menambah item belanja dan membatalkan pemesanan, sedangkan aktifitas lainnya seperti menghapus item, mengganti jumlah pesanan dan implementasi user name dan password, tidak dibahas disini. Berikut ini implementasi dari halaman keranjang belanja yang disimpan dalam file keranjang.php : <? Include “db.inc”; # tambahkan item baru ke dalam keranjang belanja if ($ID_Judul!=”” && $order==”ADD”) { # Buat satu, jika belum ada order # $ID_Order adalah sebuah cookie if ($ID_Order==””) { $sqlorder=”Select max(ID_Order) from orders”; if (!hasil=mysql_query($sqlorder,$sambung)) { echo mysql_error(); exit(); } $baris=mysql_fetch_row($hasil); $ID_Order=$baris[0]; $ID_Order++;
  • 26. In Country Training 2002 E-Commerce Hal. 26 $sqltambah=”insert into orders(ID_Order,Status_Order) values ($ID_Order,’N’); if (!mysql_query($sqltambah,$sambung)) { echo mysql_error(); exit(); } # simpan session $ID_Order setcookie(“ID_Order”,$ID_Order); } # sisipkan item ke dalam order $orderinsert=”Select max(Urut_Order) From Order_details Where ID_Order=$ID_Order”; If (!$hasil=mysql_query($orderinsert,$sambung)) { echo mysql_error(); exit(); } $baris=mysql_fetch_row($hasil); $Urut_Order=$baris[0]; $Urut_Order++; $sqltambah=”Insert into order_details (ID_Order,Urut_Order,ID_Judul,Qty) Values ($ID_Order,$Urut_Order,’$ID_Judul’,’$Qty’)”; If (!mysql_query($sqltambah,$sambung)) { echo mysql_error(); exit(); } } else if ($order==”cancel”) { $sqlhapus=”Delete from order_details where ID_Order=$ID_Order”; mysql_query($sqlhapus,$sambung); $sqlhapus=”Delete from order where ID_Order=$ID_Order”; mysql_query($sqlhapus,$sambung); # hapus variabel session setcookie(“ID_Order”); } ?> <h1>Keranjang Belanja </h1> <? If ($ID_Order!=””) { # tampilkan semua item dalam keranjang belanja
  • 27. In Country Training 2002 E-Commerce Hal. 27 $sqltampil=”Select judulbuku.ID_Judul, judulbuku.Judul, (judulbuku.Harga * order_details.Qty), order_details.Qty, judulbuku.Harga, order_details.ID_Order From order_details, judulbuku Where order_details.ID_Judul=judulbuku.ID_Judul And order_details.ID_Order=$ID_Order”; If (!$hasil=mysql_query($sqltampil,$sambung)) { echo mysql_error(); exit(); } echo (“<table width=500>n”); while ($baris=mysql_fetch_row($hasil)) { echo (“<tr>”); echo (“<td width=200> $baris[1]”); echo (“<td width=100> $baris[4]”); echo (“<td width=100> $baris[3]”); echo (“<td width=100> $baris[2]”); } echo (“</table>n”); # hitung sub total $sqltotal=”Select sum(judulbuku.Harga*order_details.Qty From order_details, judulbuku Where order_details.ID_Judul=judulbuku.ID_Judul And order_details.ID_Order=$ID_Order”; If (!$hasil=mysql_query($sqltotal,$sambung)) { echo mysql_error(); exit(); } $baris=mysql_fetch_row($hasil); echo (“Sub total pemesanan = $baris[0]<br>n”); echo (“<p>”); echo (“<a href=’checkout.php’>Pembayaran Pesanan</a><br>n”); echo (“<a href=’keranjang.php?order=cancel’>Hapus Pesanan</a><br>n”); echo (“<a href=indek.php’>Lanjutkan Proses Belanja</a>n”); } else { echo (“<center><h3> Tidak ada item dlm Keranjang Belanja</h3></center>n”); }
  • 28. In Country Training 2002 E-Commerce Hal. 28 ?> Keterangan untuk tiap perintah dalam script keranjang.php diatas : • Awalnya akan dilakukan koneksi ke database • Kemudian variabel $ID_Judul diperiksa, selanjutnya buku dengan judul ini akan ditempatkan ke keranjang belanja dengan memeriksa variabel $order. • Jika perlu dilakukan penambahan item belanja ke dalam keranjang belanja, maka perlu dipastikan atau diperiksa pesanan yang sedang aktif (current_order). Hal ini dilakukan dengan memeriksa variabel cookie ID_Order. • Jika ID_Order belum ada, maka pesanan baru akan dibuat. Pesanan baru ini akan dicatat dalam tabel order, dan session pemesanan akan dicatat dalam cookie $ID_Order. • Kemudian item yang dipesan ditambahkan ke dalam daftar detail pesanan, yaitu pada tabel order_details • Jika item $ID_Judul tidak sedang ditambahkan ke daftar detail pesanan (tabel order_detail) maka akan diperiksa apakah ada permintaan pembatalan pesanan yang ditandai dengan isi variabel $order. • Jika terdapat pembatalan, maka pesanan dihapus dari database dan session belanja ini dihapus dengan menghapus cookie $ID_Order. • Dan yang terakhir seluruh item keranjang belanja akan ditampilkan ke user beserta sub total pemesanan. • Pada bagian bawah halaman keranjang belanja, terdapat tiga link yaitu : o Untuk melakukan pembayaran (checkout) o Untuk pembatalan pesanan o Link ke halaman depan atau menu utama (indek.php ). 2.4. Bagian Pembayaran (Check Out) Ada beberapa alternatif yang dapat digunakan untuk mengimplementasikan proses pembayaran pada online-bookstore, meliputi beberapa aspek yang menjadi pilihan implementasi. 2.4.1. Beberapa Alternatif Proses Check Out Pada aplikasi online-bookstore, proses checkout meminta informasi pesanan pembeli. Informasi yang diperlukan meliputi alamat, nomor credit card, dan informasi belanja yang dilakukan user. Hal pertama yang dilakukan adalah mendesain fungsionalitas pembayaran dengan menyediakan transfer data yang aman melalui SSL (secure socket layer). Pada umumnya toko-toko online akan membawa user ke web server yang aman pada waktu melakukan proses pembayaran (checkout). Untuk melakukan hal ini, maka pertama harus meminta terlebih dahulu perijinan/certificate, missal dari VeriSign (http://www.verisign.com) kemudian
  • 29. In Country Training 2002 E-Commerce Hal. 29 menginstalnya pada server yang digunakan. Proses instalasi SSL bergantung pada web server yang digunakan. Kemudian hal kedua yang perlu mendapat perhatian adalah data apa saja yang diperlukan yang didapat dari informasi pembeli pada saat melakukan pembayaran. Misalnya apakah pembeli diijinkan untuk memiliki alamat penagihan dan pengiriman yang berbeda. Hal terpenting lainnya adalah bagaimana aplikasi online anda menyediakan pemrosesan pembayaran, misal menawarkan pembayaran dengan kartu kredit, juga adanya hubungan antara online katalog dengan bank yang diperlukan untuk melakukan pemrosesan pembayaran.Proses pembayaran (checkout) yang diimplementasikan pada pembahasan ini meliputi hal yang sangat sederhana berikut ini : • Pembeli hanya boleh memiliki alamat penagihan yang sama dengan alamat pengiriman • Setelah itu akan ditampilkan total pesanan • Kemudian pembeli diminta mengisi informasi pembayaran • Tampilan terakhir adalah ucapan terima kasih dan nomer identifikasi pemesanan. • Sedangkan SSL dan pemrosesan kartu kredit tidak diimplementasikan. 2.4.2. Desain Database untuk Pembayaran (Checkout) Untuk memproses pembayaran (checkout) diperlukan tabel tambahan untuk menyimpan seluruh informasi untuk pesanan yang dilakukan oleh pembeli. Tabel tersebut dinamakan order_payments. Berikut ini struktur dari table order_payments Struktur table order_payments Field Tipe Panjang Keterangan ID_Order Char 4 Foreign Key dari tabel orders ID_Credit_card Char 40 Nomer credit card pembeli Exp_Credit_card Char 4 Expiration date dari credit card Tipe_Credit_card Char 4 Tipe dari credit card (Visa, Master Card, dll). Nama_Credit_card Integer - Nama pembeli yang tercantum di credit card Primary key dari tabel order_payments tersebut adalah ID_Credit_card yang merupakan identifikasi nomer card dari pembeli.
  • 30. In Country Training 2002 E-Commerce Hal. 30 2.4.3. Halaman Checkout pertama Halaman pertama untuk proses pembayaran berupa suatu form yang meminta pembeli untuk memasukkan informasi alamatnya. Belum dilakukan pemrosesan pada halaman ini. Berikut ini adalah listing file checkout.php : <html> <head> <title>Checkout</title> </head> <body> <center> <h2> Checkout </h2> <form action=”checkout2.php” method=”POST”>Nama Pembeli : <br> <input type=”text” name=”Pembeli” maxlength=”60”> <br> Alamat : <br> <input type=”text” name=”alamat” maxlength=6”60”> <br> Kota : <br> <input type=”text” name=”kota” maxlength=6”60”> <br> Kode pos : <br> <input type=”text” name=”KodePos” maxlength=6”60”> <br><br> <input type=”submit” values=”Next”> </form> <p> </body> </html> 2.4.4. Halaman Checkout Kedua Halaman Pembayaran yang berikutnya yaitu chekout2.php melakukan validasi terhadap informasi yang dimasukkan oleh pembeli pada form pembayaran. Semua field harus terisi. Kemudian setelah itu dilakukan penghitungan total pembelian dan besarnya pajak. Setelah itu baru pembeli diminta untuk mengisi informasi credit card-nya. Berikut ini adalah isi file checkout2.php : <html> <head> <title>Checkout</title> </head> <body> <center><h2>Checkout</h2></center> <? Include “konek.inc”;
  • 31. In Country Training 2002 E-Commerce Hal. 31 If ($ID_Order!=””) { if ($Pembeli==””) $errStr+=”Nama pembeli belum diisi<br>”; if ($Alamat==””) $errStr+=”Alamat pembeli belum diisi<br>”; if ($Kota==””) $errStr+=”Kota pembeli belum diisi<br>”; if ($KodePos==””) $errStr+=”Kode pos dari alamat belum diisi<br>”; if (errStr!=””) echo (“$errStr<br>”); # Hitung total pembelian dan pajaknya $total=”Select sum((judulbuku.Harga*order_details.qty)) From order_details, judulbuku Where order_details.ID_Judul=judulbuku.ID_Judul And order_details.ID_Order=$ID_Order”; If (! Mysql_query($total, $sambung) { echo mysql_error(); exit(); } $baris=mysql_fetch_row($hasil); # pajak = 10% $taxrate=0.1; $pajak=$baris[0] * $taxrate; $total=$baris[0]+$pajak; # Lakukan update pada data $perintah=”Update order set Pembeli=’$Pembeli’,Alamat=’$Alamat’, Kota=’$Kota’,KodePos=’$KodePos’,Total_Order=’$Total_Order’, Pajak=’$Pajak Where ID_Order=’$ID_Order’ “; If (! Mysql_query($perintah, $sambung) { echo mysql_error(); exit(); } echo (“Total pembelian = $Total_Order<br>n”); echo (“Pajak pembelian = $Pajak<br>n”); ?> <form action=”checkout3.php” method=”POST”> Nomer Credit Card: <br> <input type=text name=”ID_credit_card” size=16 maxlength=16><br> Tipe Credit Card: <br> <select name=”Tipe_credit_card”> <option value=’Visa’>Visa <option value=’Master Card’>Master Card
  • 32. In Country Training 2002 E-Commerce Hal. 32 <option value=’Dinner’s Club >Dinner’s Club </select> <br> Experation Date: <br> <input type=text name=”Exp_Credit_card” size=5 maxlength=5> <br> <input type=submit value=”Next”> </form> <? } else echo(“<center><h3>Order tidak valid</h3></center>n”); ?> </body> </html> 2.4.5. Halaman Checkout Ketiga Yang dikerjakan pada halaman pembayaran selanjutnya yaitu checkout3.php adalah: melakukan validasi informasi credit card, setelah valid, kemudian tabel orders diupdate dengan menggunakan informasi ini dan status order ditandai dengan “checked out” (CO). Yang terakhir pembeli diberi nomer pemesanan untuk melengkapi transaksi pembelian yang sudah dilakukan. <? Include “konek.inc”; If (ID_Order!=””) { if (ID_Credit_card==””) $errStr+=”Nomer credit card belum diisi<br>”; if (Tipe_Credit_card==””) $errStr+=”Tipe credit card belum diisi<br>”; if (Exp_Credit_card==””) $errStr+=”Expired Date credit card belum diisi<br>”; if (Nama_Credit_card==””) $errStr+=”Nama pemilik credit card belum diisi<br>”; if ($errStr!=””) echo (“$errStr<br>”); else { $sqlsisip=”Insert into order_payments(ID_Order, ID_Credit_card, Tipe_credit_card, Exp_credit_card, Nama_credit_card) Values ($ID_Order, ‘$ID_Credit_card’, ‘$Tipe_credit_card’, ‘$Exp_Credit_card’, ‘$Nama_Credit_card’) “; if (! Mysql_query($sqlsisip,$sambung) { echo mysql_error(); exit(); } $sqlubah=”Update orders Set Status_Order=’CO’ Where ID_Order=$ID_Order”; if (! Mysql_query($sqlsisip,$sambung)
  • 33. In Country Training 2002 E-Commerce Hal. 33 { echo mysql_error(); exit(); } setcookie(“ID_Order”); ?> <html> <head> <title>Checkout</title> </head> <body> <center> <h2> Checkout </h2> </center> <? Echo (“Terima kasih atas Pembelian yang telah anda lakukan<br>n”); Echo (“Beli lagi lain waktu …see you …”); Echo (“Nomer pemesanan anda : $ID_Order”); } } else echo (“<center><h3>Nomer Order tidak valid</h3></center>”); ?> <p> <a href=indek.php>Halaman Utama</a> </body> </html> 2.4.6. Penyelesaian Fungsionalitas Online BookStore Fungsi dari sebuah toko buku online (online bookstore) telah selesai dilakukan. Selanjutnya adalah melakukan pengerjaan pada database katalog sekaligus melakukan perencanaan maintenance katalog. 2.5. Pemeliharaan Katalog Yang pertama harus dilakukan dalam membangun aplikasi pemeliharaan (maintenance) katalog adalah hal-hal apa yang harus dilakukan, siapa yang melakukan, perubahan apa yang dibutuhkan terhadap data, Aplikasi pemeliharaan katalog yang direncanakan meliputi : • penambahan judul buku • memodifikasi judul buku • penghapusan judul buku Aplikasi tersebut dikerjakan oleh staff yang bertanggung jawab terhadap stok barang (bagian inventory). 2.5.1. Halaman Daftar (List) Judul Buku
  • 34. In Country Training 2002 E-Commerce Hal. 34 Halaman ini menyediakan fasilitas penambahan buku baru dengan menekan tombol Add. User juga dapat memodifikasi ataupun menghapus buku dengan tombol Modify dan Delete. Berikut ini adalah listing file mt_list.php : <html> <head> <title>Pemeliharaan Katalog</title> </head> <h2>Pemeliharaan Katalog </h2> <body> Pilih Operasi Maintenance yang akan dilakukan : <p> <form action=’mt_edit.php’ method=POST> <select name=ID_Judul size=10> <? Include “konek.inc”; $sqljudul=”Select Judul, ID_Judul From judulbuku”; if (! Mysql_query($sqljudul,$sambung)) { echo mysql_error(); exit(); } while ($baris=mysql_fetch_row($sqljudul)) { echo (“<option value=$baris [1]>$baris[0]n”); } ?> </select> <p> <input type=submit name=action_type value=Add> <input type=submit name=action_type value=Modify> <input type=submit name=action_type value=Delete> </form> <p> <a href=indek.php>Ke Halaman Utama</a> </body> </html> 2.5.2. Penambahan dan Perubahan Judul Buku Berikutnya adalah pembahasan fungsionalitas halaman web untuk melakukan penambahan dan perubahan pada stok buku. Operasi yang dilakukan sesuai yang dipilih oleh
  • 35. In Country Training 2002 E-Commerce Hal. 35 user pada halaman sebelumnya (Add, Modify atau Delete). Pertama kali akan dideklarasikan semua variabel yang digunakan untuk operasi yang dimaksud. Variabel action type pada listing program berikut merupakan variabel hidden yang akan ditransfer ke halaman berikutnya. Berikut ini listing dari file mt_edit.php : <html> <head> <title>Pemeliharaan Data</title> </head> <body> <? Include “konek.inc”; If ($action_type==”Add”) { // tambahkan judul buku baru $Tipe_Ctg=””; $ID_Judul=””; $Judul=””; $Harga=””; $Notes=””; $Th_terbit=””; $ID_Pen=””; } else { // judul buku telah ada $sqljudul=”Select * From judulbuku Where ID_Judul=’$ID_Judul’ “; if (! Mysql_query($sqljudul,$sambung)) { echo mysql_error(); exit(); } $baris=mysql_fetch_row($sqljudul); $ID_Judul=$baris[0]; $Judul=$baris[1]; $Tipe=$baris[2]; $ID_Pen=$baris[3]; $Harga=$baris[4]; $Th_terbit=$baris[5]; $Note=$baris[6]; } echo (“<center><h3> Pemeliharaan Katalog </h3> </center>n”); echo (“<p><p>”); echo (“<form action=’mt_commit.php’ method=POST>”);
  • 36. In Country Training 2002 E-Commerce Hal. 36 # Pilih Kategori $sqlkategori=”Select Tipe_Ctg, Nama_Ctg From tipe_kategori”; if (! Mysql_query($sqlkategori,$sambung)) { echo mysql_error(); exit(); } echo (“Tipe : <br>n”); while ($baris=mysql_query($sqlkategori,$sambung)) { echo (“value=’$baris[0]’>$baris[1]n”); } echo (“Judul : <br>n”); echo (“<input type=text name=Judul size=30 maxlength=80 values=’$Judul’><br>n”); echo (“Harga : <br>n”); echo (“<input type=text name=Harga size=10 maxlength=10 values=’$Harga><br>n”); echo (“Tahun terbit : <br>n”); echo (“<input type=text name=Th_terbit size=10 maxlength=10 values=’$Th_terbit><br>n”); echo (“Keterangan : <br>n”); echo (“<textarea name=notes cols=40 rows=5>n”); echo (“$notes</textarea><br>n”); echo (“<input type=hidden name=action_type value=’$action_type’>n”); echo (“<p><p>n”); echo (<input type=submit value=’Perubahan telah dilakukan’>n”); ?> </body> </html> 2.5.3. Pelaksanaan Modifikasi Stok Barang Semua perubahan yang diset pada halaman sebelumnya akan dilaksanakan pada halaman ini. Operasi Query dengan perintah SQL yang dilakukan sesuai dengan operasi yang dipilih oleh user (Add, Modify atau Delete). Dengan demikian selesailah sudah semua tahapan implementasi yang dibuat untuk toko buku online. <html> <head> <title>Pemeliharaan Katalog</title>
  • 37. In Country Training 2002 E-Commerce Hal. 37 </head> <center> <h3>Pemeliharaan Katalog</h3> <? Include “konek.inc”; If ($action_type==”Add”) { $perintah=”Insert into judulbuku(ID_Judul, Judul, ID_Pen, Harga, Notes, Th_terbit, tipe) values (‘$ID_Judul’, ‘$Judul’, ’$ID_Pen’, ‘$Harga’, ‘$Notes’, ‘$Th_terbit’, ’$tipe’)”; if (! mysql_query($perintah, $sambung) { echo mysql_error(); exit(); } echo (“Record buku telah ditambahkan<br>n”); } else if ($action_type=”Modify”) { $perintah=”Update judulbuku set Judul=’$Judul’, ID_Pen=’$ID_Pen’, Harga=’$Harga’, Notes=’$Harga’, Th_terbit=’$Th_terbit’, Tipe=’$Tipe’ Where ID_Judul=’$ID_Judul’ “; if (! mysql_query($perintah, $sambung) { echo mysql_error(); exit(); } echo (“Record buku telah diubah<br>n”); } else if ($action_type=”Delete”) { $perintah=”Delete judulbuku Where ID_Judul=’$ID_Judul’ “; if (! mysql_query($perintah, $sambung) { echo mysql_error(); exit(); } echo (“Record buku telah dihapus<br>n”); } ?> <p> <a href=mt_list.php>Back</a> </body>
  • 38. In Country Training 2002 E-Commerce Hal. 38 </html>