PERANCANGAN E-COMMERCE PADA ROTI GANDA
PEMATANGSIANTAR DENGAN MENGGUNKAN
DREAMWEAVER 8
TUGAS AKHIR
SITI MAI SARAH PANE
072406011
PROGRAM STUDI D3 ILMU KOMPUTER/STATISTIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
PERANCANGAN E-COMMERCE PADA ROTI GANDA
PEMATANGSIANTAR DENGAN MENGGUNKAN
DREAMWEAVER 8
TUGAS AKHIR
Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Ahli Madya
SITI MAI SARAH PANE
072406011
PROGRAM STUDI D3 ILMU KOMPUTER/STATISTIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
PERSETUJUAN
Judul : PERANCANGAN E-COMMERCE PADA TOKO ROTI GANDA DENGAN MENGGUNAKAN
DREAMWEAVER 8 Kategori : TUGAS AKHIR
Nama : SITI MAI SARAH PANE Nomor Induk Mahasiswa : 072406011
Program Studi : D3 ILMU KOMPUTER Departemen : MATEMATIKA
Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA
Diluluskan di Medan, Juni 2010
Komisi Pembimbing :
Diketahui/Disetujui oleh Pembimbing, Departemen Matematika FMIPA USU
Ketua
Dr. Saib Suwilo, M.Sc Drs. Sawaluddin, M.IT
PERNYATAAN
PERANCANGAN E-COMMERCE PADA ROTI GANDA DENGAN MENGGUNAKAN DREAMWEAVER 8
TUGAS AKHIR
Saya mengakui bahwa tugas akhir ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, Juni 2010
PENGHARGAAN
Dengan mengucapkan “Alhamdulillah” dan memanjatkan puji syukur kehadirat Allah
SWT yang Maha Pengasih dan Maha Penyayang , dengan limpahan Rahmat dan Karunia-Nya, Tugas akhir ini berhasil diselesaikan tepat pada waktunya sebagisalah satu syarat untuk menyelesaikan studi pada D-III Ilmu Komputer FMIPA USU.
Adapun judul dari tugas akhir ini adalah “PERANCANGAN E-COMMERCE PADA ROTI GANDA PEMATANGSIANTAR DENGAN MENGGUNKAN DREAMWEAVER 8
Ucapan terima kasih penulis sampaikan yang sebesar-besarnya kepada:
1. Bapak Prof Dr. Eddy Marlianto, M.Sc, selaku dekan Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara.
2. Bapak Dr. Saib Suwilo, M.Sc, Ketua Departemen Matematika USU.
3. Bapak Drs. Sawaluddin, M.IT, sebagai Dosen Pembimbing yang telah banyak memberikan bimbingan dan arahan dalam penulisan laporan Tugas Akhir ini. 4. Seluruh Staff Pengajar dan Pegawai FMIPA USU.
5. Bapak Jumarruddin selaku Pemiliki Toko Roti Ganda yang telah berkenan memberikan kesempatan kepada saya untuk melakukan riset.
6. Teristimewa untuk Ayahanda dan Ibunda tercinta, kakak, abang yang saya sayangi, terima kasih atas cinta dan motivasinya dalam menyelesaikan laporan Tugas Akhir ini.
7. Seluruh keluarga yang memberikan banyak motivasi dalam menyelesaikan laporan Tugas Akhir ini.
8. Para sahabat tercinta : kak Ratih, Dessy Antika, Dini Syaputri, Ika Puspita, Putri Fatimah, Tsauri Aqsa dan teman-teman lainnya yang tidak dapat disebut satu per satu yang selalu memberikan motivasinya dan semangat, semoga Allah meridhoi setiap gerak langkah kita.
9. Teman-teman seperjuangan di DIII Ilmu Komputer 2007, Khususnya di
Komputer A‟07.
10.Semua pihak yang ikut membantu dalam penyelesaian Tugas Akhir ini yang tidak dapat disebut satu persatu, penulis ucapkan terimah kasih banyak.
Akhir kata penulis panjatkan doa semoga Allah SWT akan membalas kebaikan semua pihak Amin.
Medan, Juni 2010
ABSTRAK
2.6 Pengenalan Internet 22
3.1 Perancangan Sistem
3.2 Data Flow Diagram 27
3.2.1 Simbol-simbol DFD dan Flowchart 28
4.3 Komponen-komponen Sistem 49
4.3.1 Hardware 49
4.3.2 Software 50
4.3.3 Brainware 51
4.4 Demonstrasi Program 52
Bab 5 Kesimpulan dan Saran 57
5.1 Kesimpulan 57
5.2 Saran 58
Daftar Pustaka 59
DAFTAR TABEL
Halaman
Tabel 3.1 Simbol-simbol DFD dan Flowcart 28
Tabel 3.2 Tabel Dalam Database 32
Tabel 3.3 Field Table Dalam Database 33
Tabel 3.4 Describtion table_cart 35
Tabel 3.5 Describtion table_category 35
Tabel 3.6 Describtion table_currency 36
Tabel 3.7 Describtion table_inbox 36
Tabel 3.8 Describtion table_order 37
Tabel 3.9 Describtion table_order_item 38
Tabel 3.10 Describtion table_product 38
Tabel 3.11 Describtion table_shop_config 39
DAFTAR GAMBAR
Halaman
Gambar 2.1 Jenjang Data 12
Gambar 3.1 DFD Level Konteks 30
Gambar 3.2 DFD Level Nol 31
Gambar 3.3 Relationship Table 40
Gambar 3.4 Flowchart Menu Utama 41
Gambar 3.5 Flowchart Pembelian Barang 42
Gambar 3.6 Flowchart Login Admin 43
Gambar 3.7 Flowchart Search 44
Gambar 4.1 Tampilan antar muka Sistem Operasi Windows XP 50
Gambar 4.2 Tampilan antar muka Macromedia Dreamweaver 8 50
Gambar 4.3 Tampilan antar muka web server 51
Gambar 4.4 Tampilan Index/ Home 52
Gambar 4.5 Tampilan Category 53
Gambar 4.6 Tampilan Contact 54
Gambar 4.7 Tampilan Login 55
Gambar 4.8 Tampilan Shopping Basket 55
ABSTRAK
BAB 1
PENDAHULUAN
1.1 Latar Belakang
Perkembangan teknologi telekomunikasi dan komputer menyebabkan terjadinya perubahan kultur kita sehari-hari. Dalam era yang disebut information age ini, media elektronik menjadi salah satu media andalan untuk melakukan komunikasi dan bisnis. e-Commerce merupakan extension dari Commerce dengan mengeksploitasi media elektronik. Meskipun penggunaan media elektronik ini belum dimengerti, akan tetapi desakan bisnis menyebabkan para pelaku bisnis mau tidak mau harus menggunakan media elektronik ini (Deris. 2002).
wirausaha memasang situs web penjualan online. Untuk meningkatkan mutu penjualan yang berbasis teknologi cepat dan mampu bersaing dan bertahan di dunia bisnis.
1.2 Rumusan Masalah
Toko Roti Ganda merupakan toko yang menjual segala jenis kue. Dengan kemajuan teknologi, menjadikan setiap pengusaha untuk beralih menjual produk mereka secara online. Agar dapat menjaga perkembangan serta kemajuan toko. Maka, dibangunlah aplikasi website berbasis e-Commerce. Sehingga dapat memberikan kemudahan bagi konsumen dalam memilih barang dengan berbagai macam alternatif yang ada, tanpa harus mengunjungi toko tersebut.
1.3 Batasan Masalah
Agar permasalahan yang dibahas lebih terfokus dan tidak melebar, penulis mambatasi permasalahan yanga kan dibahas.
Hal-hal yang akan dibahas dan dijabarkan adalah:
a. Halaman utama website (Home) dari Toko tersebut
b. identitas (profil) dari perusahaan
c. Presentasi electronis (Pembuatan Website) untuk produk dan layanan
e. Rancangan web dinamis agar dapat menjadi media informasi yang baik dan berguna yaitu suatu sistem yang diperuntukkan bagi publikasi Toko Roti Ganda.
1.4 Tujuan dan Manfaat Penelitian
Tujuan dari penelitian ini adalah untuk menunjukkan bahwa pentingnya membangun situs web penjualan online. Sehingga dapat mengembangkan bisnis yang ada, serta memberikan beberapa manfaat baik untuk pemilik toko maupun konsumen antara lain:
1. Memudahkan pemilik toko dalam memeriksa data secara keseluruhan. 2. Memberikan pelayanan pada konsumen yang membeli produk secara online. 3. Memberikan kemudahan untuk mengakses produk-produk yang diinginkan. 4. Meningkatkan mutu penjualan sehingga toko lebih berkembang dan maju. 5. Membantu para peneliti peneliti lain dalam melakukan riset sebagai bahan
perbandingan.
1.5 Metode Penelitian
Adapun metode penelitian yang digunakan adalah:
1. Peninjauan dan Evaluasi
2. Analisis
Merupakan tahapan untukmelakukan analisa terhadap alur yang ada dengan maksud untuk mengidentifikasi dan mengevaluasi permasalahan, kesempatan dan mengevaluasi yang terjadi dan kebutuhan yang diharapkan sehingga dapat diusulkan perbaikan-perbaikan.
3. Desain
Merupakan tahapan akan rancangan aplikasi yang kemungkinan dapat memecahkan maslah yang terdapat pada hasil analisa.
4. Implementasi
Merupakan tahapan pengimplementasian aplikasi pada penjualan yang terdapat pada toko roti ganda pematangsiantar.
5. Uji Program
1.6 Sistematika Penulisan
Secara garis besar tugas akhir ini dibagi atas lima bab dan beberapa lampiran. Adapun kelima bab tersebut adalah:
BAB 1 PENDAHULUAN
Bab ini merupakan bagian yang berisi mengenai latar belakang penulisan, identifikasi dan batasan masalah, maksud dan tujuan, metodologi penelitian, tinjauan pustaka serta sistematika penulisan.
BAB 2 LANDASAN TEORI
Bab ini berisikan tentang uraian teoritis mengenai pengertian-pengertian, metode penyusunan data serta mengenai bahasa pemrograman yang digunakan.
BAB 3 PERANCANGAN SISTEM
BAB 4 IMPLEMENTASI SISTEM
Bab ini merupakan bagian yang berisi tentang pengertian dan tujuan implementasi sistem serta penjabaran elemen-elemen sistem baik dari segi hardware, software dan brainware.
BAB 5 KESIMPULAN DAN SARAN
BAB 2
LANDASAN TEORI
2.1 Pengertian e-Commerce
e-Commerce merupakan prosedur berdagang atau mekanisme jual-beli di internet dimana pembeli dan penjual dipertemukan di dunia maya. e-Commerce juga dapat didefinisikan sebagai suatu cara berbelanja atau berdagang secara online atau direct selling yang memanfaatkan fasilitas Internet dimana terdapat website yang dapat
menyediakan layanan “get and deliver“.
e-Commerce akan merubah semua kegiatan marketing dan juga sekaligus memangkas biaya-biaya operasional untuk kegiatan trading (perdagangan).
Proses yang ada dalam E-commerce adalah sebagai berikut :
a. Presentasi electronis (Pembuatan Web site) untuk produk dan layanan.
b. Pemesanan secara langsung dan tersedianya tagihan.
c. Otomasi account Pelanggan secara aman (baik nomor rekening maupun nomor kartu kredit)
2.1.1 Jenis e-Commerce
e-Commerce dapat dibagi menjadi beberapa jenis yang memiliki karakteristik berbeda-beda yaitu:
1. Business to Business (B2B)
Business to Business e-Commerce memiliki karakteristik:
a. Trading partners yang sudah diketahui dan umumnya memiliki hubungan (relationship) yang cukup lama. Informasi hanya dipertukarkan dengan partner tersebut. Dikarenakan sudah mengenal lawan komunikasi, maka jenis informasi yang dikirimkan dapat disusun sesuai dengan kebutuhan dan kepercayaan (trust).
b. Pertukaran data (data exchange) berlangsung berulang-ulang dan secara berkala, misalnya setiap hari, dengan format data yang sudah disepakati bersama. Dengan kata lain, servis yang digunakan sudah tertentu. Hal ini memudahkan pertukaran data untuk dua entiti yang menggunakan standar yang sama.
c. Salah satu pelaku dapat melakukan inisiatif untuk mengirimkan data, tidak harus menunggu parternya.
d. Model yang umum digunakan adalah peer-to-peer, dimana processing intelligence dapat didistribusikan di kedua pelaku bisnis.
2. Business to Consumer (B2C)
Business to Consumer e-Commerce memiliki karakteristik sebagai berikut: a. Terbuka untuk umum, dimana informasi disebarkan ke umum.
c. Servis diberikan berdasarkan permohonan (on demand). Konsumer melakukan inisiatif dan produser harus siap memberikan respon sesuai dengan permohonan.
d. Pendekatan client/server sering digunakan dimana diambil asumsi client consumer) menggunakan sistem yang minimal (berbasis Web) dan processing
(business procedure) diletakkan di sisi server.
3. Consumen to consumen(C2C)
Dalam C2C seseorang menjual produk atau jasa ke orang lain. Dapat juga disebut sebagai pelanggan ke palanggan yaitu orang yang menjual produk dan jasa ke satu sama lain.
Lelang C2C. Dalam lusinan negara, penjualan dan pembelian C2C dalam situs lelang sangat banyak. Kebanyakan lelang dilakukan oleh perantara, seperti eBay.com, auctionanything.com, para pelanggan juga dapat menggunakan situs khusus seperti buyit.com atau bid2bid.com. Selain itu banyak pelanggan yang melakukan lelangnya sendiri seperti greatshop.com menyediakan piranti lunak untuk menciptakan komunitas lelang terbalik C2C online.
4. Comsumen to Business(C2B).
Dalam C2B konsumen memeritahukan kebutuhan atas suatu produk atau jasa tertentu, dan para pemasok bersaing untuk menyediakan produk atau jasa tersebut ke konsumen. Contohnya di priceline.com, dimana pelanggan menyebutkan produk dan harga yang diinginkan, dan priceline mencoba menemukan pemasok yang memenuhi kebutuhan tersebut.
2.1.2 Keuntungan e-Commerce
a. Bagi Perusahaan, memperpendek jarak, perluasan pasar, perluasan jaringan mitra bisnis dan efisiensi, dengan kata lain mempercepat pelayanan ke pelanggan, dan pelayanan lebih responsif, serta mengurangi biaya-biaya yang berhubungan dengan kertas, seperti biaya pos surat, pencetakan, report, dan sebagainya sehingga dapat meningkatkan pendapatan.
b. Bagi Consumen, efektif, aman secara fisik dan flexible
c. Bagi Masyarakat Umum, mengurangi polusi dan pencemaran lingkungan, membuka peluang kerja baru, menguntungkan dunia akademis, meningkatkan kualitas SDM (Januri, dkk, 2008).
2.1.3 Kerugian e-Commerce
a. Meningkatkan Individualisme, pada perdagangan elektronik seseorang dapat bertransaksi dan mendapatkan barang/jasa yang diperlukan tanpa bertemu dengan siapapun.
b. Terkadang Menimbulkan Kekecewaan, apa yang dilihat dilayar monitor komputer kadang berbeda dengan apa yang dilihat secara kasat mata.
2.2 Database
Database adalah kumpulan dari item data yang saling berhubungan satu dengan yang lainnya yang diorganisasikan berdasarkan sebuah skema atau struktur tertentu. Database tidak selalu berhubungan dengan komputer. Contohnya adalah buku telepon. Hal ini karena buku ini berisi kumpulan nama, alamat, dan nomor telepon yang disusun dalam urutan alfabetis. Namun pada saat sekarang ini, database sangat identik dengan komputer. Database di dunia komputer memang sudah menjadi bagian yang sangat penting. Hampir semua aplikasi memakai database sebagai tulang
Salah punggungnya. Database diperlukan karena berbagai macam alasan, diantaranya: 1. satu komponen penting dalam sistem informasi, karena merupakan dasar
dalam menyediakan informasi.
2. Menentukan kualitas informasi akurat, tepat pada waktunya dan relevan. Informasi dapat dikatakan bernilai apabila manfaatnya lebih efektif dibandingkan dengan biaya mendapatkannya.
3. Mengurangi duplikasi data (data redundancy). 4. Hubungan data dapat ditingkatkan (data reliability). 5. Mengurangi pemborosan tempat simpanan luar.
2.2.1 Jenjang Data
Gambar 2.1 Jenjang data
Adapun penjelasan dari tingkatan tersebut adalah sebagai berikut:
1. Database merupakan Kumpulan dari file/table membentuk database.
2. File merupakan kumpulan dari record-record yang menggambarkan satu kesatuan data yang sejenis. Misalnya file mata pelajaran berisi data tentang semua mata pelajaran yang ada.
3. Record merupakan kumpulan dari field membentuk suatu record. Record menggambarkan syatu unit data individu yang tertentu. Kumpulan dari record membentuk suatu file. Misalnya file personalia, tiap-tiap record dapat mewakili data tiap-tiap karyawan.
4. Field Mempresentasikan suatu atribut dari record yang menunjukkan suatu item dari data, seperti misalnya nama, alamat dan lain sebagainya. Kumpulan dari field membentuk suatu record.
2.3 MySQL
MySQL adalah salah satu database server yang cukup dikenal saat ini. MySQL keluaran T.c.X. data Consult AB, sebuah perusahaan IT Swedia, yang menawarkan berbagai keunggulan dibandingkan database server lainnya, yaitu:
1. Mampu menangani jutaan user dalam waktu yamg bersamaan. 2. Mampu menampung lebih dari 50.000.000 rekord. 3. Sangat cepat dalam mengeksekusi perintah.
Selain itu MySQL juga menyediakan dukungan open source. Setiap pengguna MySQL diizinkan untuk mengubah source untuk keperluan pengembangan atau menyelaraskan spesifikasi database sesuai kebutuhan (Janner, 2006).
2.3.1 Keuntungan MySQL
MySQL adalah suatu database populer dengan pengembang Web (Web Developer). Kecepatan dan ukuran yang kecil membuatnya ideal untuk web site. Ditambah lagi dengan fakta bahwa MySQL adalah open source.
Adapun keuntungan MySQL adalah:
1. Cepat. Tujuan utama dari pengembangan MySQL adalah kecepatan, sebagai konsekuensi software yang dirancang dari awal untuk kecepatan.
3. Mudah digunakan. Anda dapat membangun dan berinteraksi dengan database MySQL hanya dengan menggunakan sedikit pernyataan sederhana di dalam bahasa SQL, yang menjadi bahasa standar untuk komunikasi dengan RDBMS. 4. Dapat berjalan pada beberapa sistem operasi. MySQL dapat berjalan pada
sistem operasi beragam, seperti Windows, linux, Mac OS. 5. Dukungan teknis secara luas tersedia.
6. Aman. MySQL adalah sistem otorisasi fleksibel yang mengijinkan beberapa atau semua privilege database untuk pengguna khusus atau kelompok pengguna.
7. Mendukung database yang besar. MySQL menangani database sampai 50 juta baris atau lebih.
2.3.2 Syntaks – syntaks MySQL
Perintah-perintah yang umum digunakan dalam MySQL diantaranya adalah:
a. INSERT
digunakan untuk mengisi data atau menambah record pada suatu tabel.
INSERT INTO nama_tabel (kolom1, kolom2..) VALUES (nilai1,nilai2..);
b. SELECT
Digunakan untuk melihat data dari satu atau beberapa tabel.
SELECT kolom-kolom;
FROM nama-tabel;
Untuk melihat seluruh isi kolom dari suatu tabel digunakan query SELECT *.
SELECT * FROM nama-tabel;
c. WHERE
Digunakan untuk menyaring hasil query sehingga record yang dikeluarkan hanyalah record yang sesuai dengan yang diinginkan.
SELECT kolom1, kolom2
FROM kolom1
WHERE kolom2 < kriteria;
d. DISTINCT
SELECT DISTINCT kolom2 FROM kolom1;
e. BETWEEN
Digunakan untuk membatasi suatu batas nilai tertentu.
SELECT kolom1,kolom2,kolom3
FROM kolom1
WHERE kolom2 BETWEEN..AND..;
f. LIKE
Digunakan untuk pencarian data yang memiliki pola tertentu.
SELECT kolom1,kolom2
FROM kolom1
WHERE kolom1 LIKE „A%‟;
g. ORDER BY
Digunakan untuk mensortir data hasil query sesuai dengan kebutuhan.
SELECT kolom1,kolom2
FROM kolom1
ORDER BY kolom1;
Untuk mensortir dengan urutan terbalik, digunakan keywoord tambahan DESC.
SELECT kolom1.kolom2
FROM kolom1
ORDER BY kolom 1 DESC;
f. DELETE
Digunakan untuk menghapus suatu record dengan kriteria tertentu.
DELETE FROM nama-tabel WHERE kriteria:
Untuk menghapus record pada suatu tabel, digunakan perintah DELETE tanpa menentukan kriterianya.
DELETE FROM nama-tabel;
i. UPDATE
Digunakan untuk memodifikasi nilai kolom dari suatu record.
UPDATE nama-tabel
SET nama-kolom1=nilai-baru1,nilai-kolom2=nilai-baru2,..
WHERE criteria;
2.4 PhpMyAdmin
Setiap RDBMS (Relation Database Management System) seperti Oracle, SQL Server, MySQL dan lain-lain, pasti memiliki tool yang dapat digunakan untuk mempermudah pengoperasian database. Oracle memiliki TAOD. SQL Server memiliki Enterprise Manager dan SQL Query Analyzer. Sedangkan MySQL memiliki tool atau aplikasi yang disebut PhpMyAdmin.
PhpMyAdmin merupakan aplikasi berbasiskan web yang dikembangkan menggunakan bahasa pemrograman PHP. Melalui PhpMyAdmin, user dapat melakukan perintah query. Perintah tersebut misalnya administrasi user dan privileges, export dan import database, manajemen database, manajemen tabel dan struktur tabel, dan sebagainya. PhpMyAdmin sangat user friendly, sehingga mudah untuk digunakan walaupun pengguna baru (newbie) (Saputro, 2008).
2.5 PHP (Personal Home Page)
PHP adalah bahasa (Scripting Language) yang dirancang secara khusus untuk penggunaan Web. PHP adalah tool anda untuk pembuatan halaman web dinamis. Kaya akan fitur yang membuat perancangan web dan pemrograman lebih mudah, PHP digunakan pada 13 juta domain.
dan lain-lain)yang dijalankan pada server side. Artinya, semua sintaks yang kita berikan akan sepenuhnya dijalankan pada server sedangkan yang dikirimkan ke browser hanya hasilnya (output) saja (Janner, 2006).
2.5.1 Konsep Dasar PHP
Kode PHP diawali dengan tanda lebih kecil (<) dan diakhiri dengan tanda lebih besar (>). Ada empat cara untuk menuliskan skrip PHP, yaitu:
a) <? Hallo ?> b) <? Php Hallo?> c) <% Hallo%>
d) <SCRIPT LANGUAGE=”php”>Hallo</SCRIPT>
Jiak ingin menambahkan komentar, namun komentar tersebut tidak ikut dieksekusi maka dapat ditulis sebagai berikut :
/* Tulis Komentar */ atau // Tulis Komentar
* Contoh1.php (Menyisipkan skrip PHP di dokumen HTML)
<html>
<head>
<title> Menyisipkan PHP di dokumen HTML </title>
</head>
<body>
Cara menyapa PHP dengan akrab: <br>
<p>
<?php
Echo “Hallo PHP,Apa khabar?”;
?>
</body>
</html>
2.5.2 Keunggulan PHP
Adapun keunggulan PHP antara lain:
1. cepat, karena ditempelkan (embedded) di dalam kode HTML, sehingga waktu tanggap menjadi pendek.
2. Tidak mahal-gratis, pada kenyataannya PHP adalah gratis dan bisa diperoleh tanpa harus membayarnya.
3. Mudah untuk digunakan, PHP berisi beberapa fitur khusus dan fungsi yang dibutuhkan untuk membuat web yang dinamis.
4. berjalan pada beberapa sistem Operasi, dapat berjalan pada sistem operasi yang beragam, windows, linux, Mac OS, dan kebanyakan variasi dari Unix. 5. Dukungan teknis tersedia secara luas karena PHP menyediakan dukungan gratis via daftar diskusi e-mail.
6. Aman, pengguna tidak melihat kode PHP, karena kode yang ditampilkan pada browser adalah kode HTML.
7. Dirancang untuk mendukung database. PHP meliputi kemampuan yang dirancang untuk berinteraksi dengan database tertentu.
2.6 Pengenalan Internet
Internet (Inter-Network) adalah sebutan untuk sekumpulan jaringan komputer yang menghubungkan situs akademik, pemerintahan, komersial, organisasi, maupun perorangan. Internet menyediakan akses untuk layanan telekomnunikasi dan sumber daya informasi untuk jutaan pemakainya yang tersebar di seluruh dunia. Layanan internet meliputi komunikasi langsung (email, chat), diskusi (Usenet News, email, milis), sumber daya informasi yang terdistribusi (World Wide Web, Gopher), remote login dan lalu lintas file (Telnet, FTP), dan aneka layanan lainnya.
Jaringan yang membentuk internet bekerja berdasarkan suatu set protokol standar yang digunakan untuk menghubungkan jaringan komputer dan mengalamati lalu lintas dalam jaringan. Protokol ini mengatur format data yang diijinkan, penanganan kesalahan (error handling), lalu lintas pesan, dan standar komunikasi lainnya. Protokol standar pada internet dikenal sebagai TCP/IP (Transmission Control Protocol/Internet Protocol). Protokol ini memiliki kemampuan untuk bekerja diatas segala jenis komputer, tanpa terpengaruh oleh perbedaan perangkat keras maupun sistem operasi yang digunakan (Graifhan, 2003).
Penggunaan internet dipilih oleh kebanyakan orang sekarang ini karena kemudahan-kemudahan yang dimiliki oleh jaringan internet, yaitu:
2. menggunakan electronic data sebagai media penyampaian pesan/data sehingga dapat dilakukan pengiriman dan penerimaan informasi secara mudah dan ringkas baik dalam bentuk data elektronik analog dan digital (Deris, 2002).
2.6.1 Internet Commerce
Internet Commerce adalah penggunaan internet yang berbasis teknologi informasi dan komunikasi untuk perdagangan. Kegiatan komersial ini seperti iklan dalam penjualan produk dan jasa. Transaksi yang dapat dilakukan di internet antara lain pemesanan dan pembelian barang dimana barang akan dikirim melalui pos atau sarana lain setelah pembeli mentranser uang ke rekening penjual. Harga lebih murah biayanya dibandingkan dengan membuka outlet retail di berbagai tempat. Internet media promosi perusahaan dan produk yang paling tepat dengan harga yang relatif lebih murah. Serta pembelian melalui internet akan diikuti dengan layanan pengantaran barang sampai ketempat pemesanan (Nofie, 2009).
2.6.2 Web server
akan ditampilkan oleh browser sesuai dengan kemampuan browser tersebut. Contohnya, bila data yang dikirim berupa gambar, browser yang hanya mampu menampilkan teks (misalnya lynx) tidak akan mampu menampilkan gambar tersebut, dan jika ada akan menampilkan alternatifnya saja. Web server, untuk berkomunikasi dengan client-nya (web browser) mempunyai protokol sendiri, yaitu HTTP (hypertext transfer protocol) (Effendi ,2009).
2.7 HTML (Hypertext Markup Language)
HTML adalah bahasa pendeskripsi halaman yang menciptakan dokumen-dokumen hypertext atau hypermedia . HTML memasukkan kode-kode penegendali dalam sebuah dokumen pada berbagai poin yang dapat anda spesifikasikan, yang dapat menciptakan hubungan (hyperlink) dengan bagian lain dari dokumen tersebut atau dengan dokumen lain yang berbeda diWord Wide Web (Janner, 2006).
Di bawah ini adalah struktur dari dokumen HTML.
<HTML> <HEAD> <TITLE>Latihan Pertama</TITLE>
</HEAD>
Selamat Belajar HTML </BODY> </HTML>
(Abdul, 2003).
Berikut ini adalah penjelasan kode pada HTML.
1. pasangan tag <HTML> dan <HTML> menandakan bahwa kode yang terdapat di dalamnya adalah kode HTML sehingga browser akan menerjemahkan sebagai dokumen HTML.
2. 2 Bagian yang terdapat dalam <HTML> dan </HTML> umumnya terbagi atas 1) kepala, dan 2) badan
3. bagian kepala ditandai dengan pasangan tag <HEAD> dan </HEAD>, sedangkan bagian badan ditandai dengan tag <BODY> dan </BODY>.
4. pada bagian kepala, anda bisa menentukan judul dokumen HTML. Judul ini ditulis dalam pasangan tag <TITLE> dan </TITLE> (Abdul, 2003).
.
2.8 Macromedia Dreamweaver 8
Macromedia Dreamweaver merupakan sebuah editor HTML profesional untuk mendesain secara visual dan mengolah situs web maupun halaman web. Macromedia Dreamweaver 8 adalah salah satu produk dari vendor Macromedia Inc. Dimana Macromedia Dreamweaver 8 ini memiliki kemampuan untuk menyunting kode dengan lebih baik, serta mampu menggabungkan layout site dengan programming web.
Aplikasi pada Dreamweaver juga dapat membuat sebuah aplikasi dinamis dengan database menggunakan bahasa server seperti CFML, ASP.NET, ASP, JSP, dan PHP. CSS atau Cassading Style adalah sebuah dokumen yang berisi aturan yang digunakan untuk memisahkan isi dengan layout dalam halaman-halaman web yang dibuat (Kurniawan, 2008).
2.9 CSS (Cascading Style Sheet)
BAB 3
PERANCANGAN SISTEM
3.1 Perancangan Sistem
Perancangan sistem merupakan upaya perusahaan untuk memulai memiliki sistem baik yang lama maupun yang baru. Perancangan sistem dilakukan setelah mendapat gambaran dengan jelas apa yang harus dilakukan. Desain sistem secara umum mengidentifikasikan komponen-komponen sistem e-Commerce yang akan didesain secara terinci.
3.2 Data Flow Diagram (DFD)
3.2.1 Simbol-simbol DFD dan Flowcart
Tabel 3.1 Simbol-simbol DFD dan Flowcart
No Gambar Nama Fungsi
1 Kesatuan Luar
(External Entity)
Merupakan kesatuan luar di lingkungan luar Sistem yang akan memberikan
input atau menerima output dari sistem.
2 Proses (Process) Kegiatan dari hasil suatu
arus data yang masuk dalam proses untuk dihasilkan arus data yang
akan keluar atau untuk mengubah input menjadi
output
3 Aliran Data
(Data Flow)
Data mengalir melalui sistem, dimulai dengan sebagian input dan diubah
4 Penyimpanan Data
( Data Storage)
Data disimpan untuk keperluan berikutnya.
5 Awal Proses
Program (Start)
Awal untuk memulai suatu program.
6 Perintah Dasar Petunjuk untuk setiap
aplikasi program.
7 Proses Data Proses data dari aplikasi
yang tersedia.
8 Aplikasi
Program
Aplikasi-aplikasi yang terdapat pada website
tersebut.
9
Database
3.2.2 Diagram Level Konteks
Category
Product
Shop Config
- order Produk
- contact us
Produk
Gambar 3.1 DFD Level Konteks Sistem e-Commerce pada Toko Roti Ganda Pematangsiantar
Costumer
Sistem e-Commerce
Admin
3.2.3 Data Flow Diagram level nol
3. 3 Perancangan Database
Database merupakan kumpulan dari data yang saling berhubungan satu dengan lainnya, tersimpan di simpanan luar komputer dan digunakan perangkat lunak tertentu untuk memanipulasinya. Database merupakan salah satu komponen yang penting dalam sistem informasi yang berbasis e-Commerce, karena berfungsi sebagai basis penyedia informasi bagi para pemakainya. Karena database merupakan kumpulan dari beberapa file, dalam hal ini file-file tersebut dikelompokkan secara terstruktur dalam beberapa tabel sesuai dengan informasi yang terkandung didalamnya. Berikut ini adalah langkah-langkah perancangan database yang penulis gunakan untuk membangun sistem e-Commerce ini :
3.3.1 Field Name
Tabel 3.2 Tabel dalam database
No Table Name
1 Tbl_cart
2 Tbl_category 3 Tbl_currency
4 Tbl_inbox
5 Tbl_order
6 Tbl_order_item 7 Tbl_product 8 Tbl_shop config
3.3.2 Field Table
Tabel 3.3 Field Table dalam database
3.3.3 Describtion Field Table
a) table_cart
Tabel 3.4 Describtion table_cart
No Field Name Type Width Description
1 ct_id * int 10 Id chart
2 pd_id** int 10 Id product
3 ct_qty madiumint 8 Jumlah product
4 ct_session_id char 32 Kode id session pengguna
5 ct_date datetime - waktu
b) table_category
Tabel 3.5 Describtion table_category
No Field Name Type Width Descreption
1 cat_id* int 10 Id kategory
2 cat_parent_id int 11 Id kategory
3 cat_name varchar 50 Nama kategory
c) table_currency
Tabel 3.6 Describtion table_currency
No Field Name Type Width Descreption
1 cy_id* int 10 Id currency
2 cy_code char 3 kode currency
3 cy_symbol varchar 8 Simbol currency
d) table_inbox
Tabel 3.7 Describtion table_inbox
No Field Name Type Width Descreption
1 Id* int 5 Id inbox
2 Name varchar 35 Nama pemgunjung
3 Email varchar 35 Email pengunjung
4 comment text - Komentar pengunjung
5 Replay text - Balasan
6 time_replay datetime - Waktu pesan di balas
e) table_order
Tabel 3.8 Describtion table_order
No Field Name Type Width Descreption
1 od_id* Int 10 Id order
2 od_date datetime - Waktu memesan
3 od_last_update datetime - Waktu memesan
diperbaharui
4 od_status Enum - Status dari pesanan
(dikirim atau belum)
5 od_memo varchar 255 Pesan singkat
6 od_shipping_first_name varchar 50 Nama awal pemesan 7 od_shipping_last_name varchar 50 Nama akhir pemesan 8 od_shipping_address1 varchar 100 Alamat I pemesan 9 od_shipping_address2 varchar 100 Alamat II pemesan 10 od_shipping_phone varchar 32 No telepon pemesan
11 od_shipping_city varchar 100 Kota pemesan
12 od_shipping_state varchar 32 Provinsi pemesan 13 od_shipping_postal_code varchar 10 Kode pos pemesan 14 od_shipping_cost decimal 5,2 Biaya yang dikeluarkan
20 od_payment_city Varchar 100 Kota pembayar 21 od_payment_state Varchar 32 Provinsi pembayar 22 od_payment_postal code Varchar 10 Kode pos pembayar
f) table_order_item
Tabel 3.9 Describtion table_order_item
No Field Name Type Width Descreption
1 od_id** Int 10 Id order
2 pd_id** Int 10 Id produk
3 od_qty Int 10 jumlah order yang di
pesan
g) table_product
Tabel 3.10 Describtion table_product
No Field Name Type Width Descreption
1 pd_id* int 10 Id produk
2 cat_id** int 10 Id kategory
3 pd_name varchar 100 Nama produk
4 pd_description text - Deskripsi produk
5 pd_price decimal 9,2 Harga
6 pd_qty smallint 5 Jumlah yang tersedia
7 pd_image varchar 200 Nama gambar
9 pd_date datetime - Waktu data produk di terima 10 pd_last_update datetime - Waktu data produk di update
h) table_shop_config
Tabel 3.11 Describtion table_shop_config
No Field Name Type Width Descreption
1 sc_name varchar 50 Nama toko
2 sc_address varchar 100 Alamat toko
3 sc_phone varchar 30 No telepon toko
4 sc_email varchar 30 E-mail toko
5 sc_shipping_cost decimal 5,2 Baiya yang dikeluarkan
6 sc_currency int 10 Mata uang yang digunakan
7 sc_order_email enum - Pengiriman data dengan email
i) table_user
Tabel 3.12 Describtion table_user
No Field Name Type Width Descreption
1 user_id* int 0 Id user
2 user_name varchar 20 Nama user
3 user_password varchar 32 Password user
4 user_regdate datetime - Waktu
Ket:
* adalah sebagai sombol Primary Key ** adalah sebagai simbol Forgen key
3.4 Relationship Table
tbl_category cat_id*
tbl_product pd_id* cat_id**
tbl_order od_id* tbl_cart
ct_id* pd_id**
I FLOWCHART SISTEM 1 Flowchart menu utama
No
Yes
Gambar 3.4 Flowchart Menu Utama Start
Buka Koneksi Database
2 Flowchart Pembelian Barang
No
No
Yes
Gambar 3.5 Flowchart Pembelian Barang End
Start
Pilih Kategori
Add To Cart Pilih Jenis Cake
Cake
Shopping Basket
Proses To Chekout
Isian Data Database
3 Flowchart Login Admin
No
No
Gambar 3.6 Flowchart Login Admin Start
Index
Login
Username And Password
Status = Admin
Menu Admin
4 Flowchart Search
No
Yes
Gambar 3.7 Flowchart Search Start
Cari Lagi Go
Hasil Pencarian Input Data
End
II ALGORITMA PROGRAM
Algoritma adalah urutan langkah-langkah berhingga untuk memecahkan masalah logika atau matematika. Adapun algoritma yang akan dibahas antara lain yaitu:
1 Algoritma Menu Utama
1. Aktifkan server yang di gunakan mis, Apache, Xampp, Wampp dll. Kemudian aktifkan browser Internet Explorer atau Mozilla Firefox, ketikkan pada address bar “localhost/ganda2” kemudian tekan enter atau klik icon
“Go” pada sudut kanan address bar, maka akan tampil halaman utama web
site.
2. Setelah halaman Index muncul, maka terdapat berbagai menu yang telah ada. Dengan tampilan disain yang menarik serta terdapat kata-kata “Welcome” sebagai sambutan telah mengunjungi website serta melihat dan membeli berbagi produk yang di tawarkan.
3. Jika ingin keluar close pada menu browser maka akan keluar dari Web.
2 Algoritma Pemesanan Produk
2. Pembeli masih dapat membatalkan atau menambah produk yang ingin di beli. Setelah benar-benar produk ingin di beli, pembeli harus meng klik proses cek. Kemudian sistem akan mengarahkan ke dalam halaman isian registrasi atau isian data pembeli. Setelah selesai, sistem akan mengirim ke database admin dan akan di proses lebih lanjut.
3. Jika sudah selesai. Data pembeli akan di proses kemudian pesanan akan di antar ke data alamat yang telah diberikan pembeli, jika ingin belanja lagi ”klik
here”.
3 Algoritma Admin
1. Klik Login pada menu home atau Index maka akan muncul menu login, kemudian masukkan user dan password. Akan muncul berbagai menu pada halaman Admin.
2. Setelah masuk ke halaman utama admin. Akan tampil berbagai menu admin. Misalnya : home, category, product, order, inbox, user, shopconfig. Menu-menu tersebut menjadi lokasi kerja admin seperti pengupdatean, penghapusan, penambahan, membalas berbagi komentar pengunjung, pemeriksaan data pemebeli dll.
4 Algoritma Search
1. klik menu Home atau Index disebelah login terdapat tampilan search. Yang berfungsi untuk membantu pengunjung dan pembeli mencari data produk yang diinginkan tanpa melihat dari kategori.
2. Masukkan nama produk yang ingin di cari misnya “puding”. Maka akan tampil segala macam jenis kue puding yang tersedia di database. Jika ingin
mencari lagi klik “cari lagi”, maka akan kembali ke home dan silahkan
BAB 4
IMPLEMENTASI SISTEM
4.1 Pengertian Implementasi Sistem
Implementasi sistem adalah suatu prosedur yang dilakukan untuk menyelesaikan sistem yang ada dalam dokumen rancangan sistem yang telah disetujui an mengujinya, menginstal dan memulai menggunakan sistem baru yang diperbaiki. Adapun langkah-langkah yang dibutuhkan dalam implementasi sistem adalah:
1. Mendapatkan software dan hardware yang tepat serta sesuai untuk merancang website.
2. Menyelesaikan rancangan sistem.
3. Menulis, menguji, mengontrol dan mendokumentasikan website. 4. Mendapatkan persetujuan.
4.2 Tujuam Implementasi Sistem
Adapun tujuan-tujuan dari implementasi sistem, yaitu:
2. Menyelesaikan rancangan sistem yang ada dalam
3. Memastikan bahwa pengunjung dapat mengoprasikan dengan mudah terhadap sistem yang baru dan mendapat informasi yang baik dan jelas.
4. Memperhitungkan bahwa sistem telah memenuhi permintaan pemakai yaitu dengan menguji sistem secara menyeluruh.
5. Memastikan bahwa sistem yang telah berjalan dengan lancar dengan mengontrol dan melakukan instalasi secara benar.
4.3 Komponen-Komponen Kebutuhan Sistem
Komponen-komponen yang sangat berperan dalam menunjang penerapan sistem yang dirancang pengolahan data. Beberapa komponen yang dibutuhkan sistem untuk dapat beroperasi dengan baik antara lain:
4.3.1 Hardware
Hardware merupakan komponen yang sangat dibutuhkan dalam mewujudkan sistem yang diusulkan. Dalam hal ini penulis dapat merincikan spesifikasi komponen hardware yaitu:
a. Personel komputer dengan processor intel pentium inside dual core. b. Hardisk 160 GB.
c. Memori 1 G.
4.3.2 Software
Hardaware tidak dapat memcahkan suatu masalah tanpa adanya komponen software. Adapun software yang digunakan dalam pembuatan website ini adalah:
1. Sistem Operasi Windows Xp
Gambar 4.1 Tampilan antar muka Sistem Operasi Windows XP
2. Macromedia dreamweaver 8
Software ini berfungsi sebagi text editor dalam penulisan script PHP dalampembuatan website.
3. XAMPP
XAMPP merupakan kumpulan aplikasi yang terdiri dari apache sebagai web server, PHP sebagi bahasa pemrograman, MySQL sebagai database. Dengan XAMPP kebutuhan software telah terpenuhi.
Gambar 4.3 Tampilan antar muka web server
4.3.3 Brainware
4.4 Demonstrasi Program
Adapun tampilan atau output program yang di rancang penulis adalah sebagi berikut:
4.4.1 Tampilan Index/ Home
Gambar 4.4 Tampilan Index/ Home
Gambar 4.4 Tampilan Index/ Home
4.4.2 Tampilan Category
4.4.3 Tampilan Contact
4.4.4 Tampilan Login
Gambar 4.7 Tampilan Login
4.4.5 Tampilan Shopping Basket
4.4.6 Tampilan Shipping And Payment Information
BAB 5
KESIMPULAN DAN SARAN
5.1 KESIMPULAN
Aplikasi e-Commerce pada toko roti ganda ini dirancang dan direalisasikan dengan menggunakan sistem operasi Windows, MySQL sebagai database manajemen sistem, PHP sebagai bahasa scripting yang menyatu dengan HTML (sintaks dan perintah yang diberikan sepenuhnya dijalankan di web server), Apache sebagai web server, dan Macromedia Dreamweaver 8 sebagai web editornya. Dari realisasi tersebut dapat diambil kesimpulan yaitu:
1. Penggunaan sistem layanan e-Commerce ini akan memberikan kemudahan dalam pembelian suatu barang, dimana konsumen tidak perlu datang ke toko tersebut secara langsung. Karena pemesanan barang dapat dilakukan melalui teknologi internet.
5.2 SARAN
1. Penulis menyadari bahwa apa yang telah dibuat penulis masih banyak kekurangannya. Oleh karena itu masih diperlukan lagi pengembangan lebih lanjut untuk perbaikan kedepan.
2. Poses pembelajaran akan berkembang jika tidak fanatik terhadap satu sistem saja. Karena itu sebagai alat bantu pemecahan masalah.
DAFTAR PUSTAKA
Sugiri, S. H. 2008. Pengelolaan Database MySQL dengan PHPMyAdmin. Yogyakarta: Graha Ilmu.
Kurniawan, B. 2008. Desain Web Praktis dengan CSS. Jakarta: Elex Media Komputindo.
Simarmata, J. 2006. Menggunakan PHP dan MySQL. Yogyakarta: Penerbit Andi. Peranginangin, K. 2006. Aplikasi WEB dengan PHP dan MySQL. Yogyakarta: C.V
ANDI OFFSET
Kadir, A. 2003. Pemrograman Web. Yogyakarta: Penerbit Andi. Dwi, D. P. 2009. Mengenal Database.
http://www.catatanlepas.com/komputer/44-database/83-mengenal-database.pdf Diakses 8 Mei 2010.
Nofie, I. 2009. Mengenal e-Commerce.
images.frihartati.multiply.com/.../mengenal-e-commerce%5B1%5D.pdf?.. Diakses tanggal 5 Oktober 2009.
Effendi, R. 2009. Web Server.
www.ittelkom.ac.id/.../index.php?...web-server. Diakses tanggal 29 April
2010.
Januri, B. M. Dkk. 2008. e-Commerce dan Standar-Standar Dalam e-Commerce.
http://wilis.himatif.or.id/.../e-commerce%20dan%20standar-standar%20dalam%20e-commerce.doc. Diakses tanggal 8 Februari 2010.
Ramadhani, G. 2003. Pengenalan Internet.
http://dhani.singcat.com/files/pengenalan_internet.pdf Diakses 12 mei 2010.
Stiawan, D. 2002. e-Commerce.
1. ADMIN
A. Koneksi.php
<?php // database connection config $dbHost = 'localhost';
$dbUser = 'root'; $dbPass = '';
$dbName = 'ganda';
$koneksi=mysql_connect($dbHost,$dbUser,$dbPass); mysql_select_db($dbName, $koneksi);
?>
B. ProsessConfig.php <?php
ini_set('display_errors', 'On'); //ob_start("ob_gzhandler"); error_reporting(E_ALL);
// start the session session_start();
// database connection config $dbHost = 'localhost';
$dbUser = 'root'; $dbPass = '';
// setting up the web root and server root for // this shopping cart application
$thisFile = str_replace('\\', '/', __FILE__);
$docRoot = $_SERVER['DOCUMENT_ROOT'];
$webRoot = str_replace(array($docRoot, 'library/config.php'), '', $thisFile); $srvRoot = str_replace('library/config.php', '', $thisFile);
define('WEB_ROOT', $webRoot); define('SRV_ROOT', $srvRoot);
// these are the directories where we will store all // category and product images
define('CATEGORY_IMAGE_DIR', 'images/category/'); define('PRODUCT_IMAGE_DIR', 'images/product/');
// some size limitation for the category // and product images
// all category image width must not // exceed 75 pixels
define('MAX_CATEGORY_IMAGE_WIDTH', 75);
define('LIMIT_PRODUCT_WIDTH', true);
// maximum width for all product image
define('MAX_PRODUCT_IMAGE_WIDTH', 300);
// the width for product thumbnail
define('THUMBNAIL_WIDTH', 75);
if (!get_magic_quotes_gpc()) { if (isset($_POST)) {
foreach ($_POST as $key => $value) {
$_POST[$key] = trim(addslashes($value)); }
}
if (isset($_GET)) {
foreach ($_GET as $key => $value) {
$_GET[$key] = trim(addslashes($value)); }
} }
require_once 'common.php';
// get the shop configuration ( name, addres, etc ), all page need it $shopConfig = getShopConfig();
?>
C. ProcessCategory <?php
require_once '../../library/config.php'; require_once '../library/functions.php';
checkUser();
$action = isset($_GET['action']) ? $_GET['action'] : ''; switch ($action) {
case 'add' : addCategory(); break;
case 'modify' : modifyCategory(); break;
break;
$description = $_POST['mtxDescription']; $image = $_FILES['fleImage'];
$parentId = $_POST['hidParentId'];
$catImage = uploadImage('fleImage', SRV_ROOT . 'images/category/');
$sql = "INSERT INTO tbl_category (cat_parent_id, cat_name, cat_description, cat_image)
header('Location: index.php?catId=' . $parentId); }
/*
Upload an image and return the uploaded image name */
function uploadImage($inputName, $uploadDir) {
$image = $_FILES[$inputName]; $imagePath = '';
// if a file is given
if (trim($image['tmp_name']) != '') { // get the image extension
$ext = substr(strrchr($image['name'], "."), 1);
// generate a random new file name to avoid name conflict $imagePath = md5(rand() * time()) . ".$ext";
// check the image width. if it exceed the maximum // width we must resize it
$size = getimagesize($image['tmp_name']);
if ($size[0] > MAX_CATEGORY_IMAGE_WIDTH) { $imagePath = createThumbnail($image['tmp_name'], $uploadDir . $imagePath, MAX_CATEGORY_IMAGE_WIDTH);
// move the image to category image directory // if fail set $imagePath to empty string
if (!move_uploaded_file($image['tmp_name'], $uploadDir . $imagePath)) {
$description = $_POST['mtxDescription']; $image = $_FILES['fleImage'];
$catImage = uploadImage('fleImage', SRV_ROOT . 'images/category/');
// if uploading a new image // remove old image
$catImage = "'$catImage'"; } else {
// leave the category image as it was $catImage = 'cat_image';
$result = dbQuery($sql) or die('Cannot update category. ' . mysql_error()); header('Location: index.php');
if (isset($_GET['catId']) && (int)$_GET['catId'] > 0) { $catId = (int)$_GET['catId'];
} else {
header('Location: index.php'); }
// make an array containing this category and all it's children $categories = array_merge($children, array($catId));
$numCategory = count($categories);
// remove all product image & thumbnail // if the product's category is in $categories $sql = "SELECT pd_id, pd_image, pd_thumbnail FROM tbl_product
WHERE cat_id IN (" . implode(',', $categories) . ")"; $result = dbQuery($sql);
while ($row = dbFetchAssoc($result)) {
@unlink(SRV_ROOT . PRODUCT_IMAGE_DIR . $row['pd_image']);
@unlink(SRV_ROOT . PRODUCT_IMAGE_DIR . $row['pd_thumbnail']);
}
// delete the products
$sql = "DELETE FROM tbl_product
WHERE cat_id IN (" . implode(',', $categories) . ")"; dbQuery($sql);
// finally remove the category from database; $sql = "DELETE FROM tbl_category
WHERE cat_id IN (" . implode(',', $categories) . ")"; dbQuery($sql);
header('Location: index.php'); }
/*
Recursively find all children of $catId */
if (dbNumRows($result) > 0) {
while ($row = dbFetchRow($result)) { $cat[] = $row[0];
// call this function again to find the children $cat = array_merge($cat, getChildren($row[0])); }
return $cat; }
/*
Remove a category image */
function deleteImage() {
if (isset($_GET['catId']) && (int)$_GET['catId'] > 0) { $catId = (int)$_GET['catId'];
} else {
header('Location: index.php'); }
_deleteImage($catId);
// update the image name in the database $sql = "UPDATE tbl_category
SET cat_image = ''
WHERE cat_id = $catId"; dbQuery($sql);
header("Location: index.php?view=modify&catId=$catId"); }
Delete a category image where category = $catId */
function _deleteImage($catId) {
// we will return the status
// whether the image deleted successfully $deleted = false;
// get the image(s)
$sql = "SELECT cat_image FROM tbl_category WHERE cat_id ";
if (is_array($catId)) {
$sql .= " IN (" . implode(',', $catId) . ")"; } else {
$sql .= " = $catId"; }
$result = dbQuery($sql);
if (dbNumRows($result)) {
while ($row = dbFetchAssoc($result)) { // delete the image file
$deleted = @unlink(SRV_ROOT . CATEGORY_IMAGE_DIR . $row['cat_image']);
}
return $deleted; }
?>
D. ProcessOrder.php <?php
require_once '../../library/config.php'; require_once '../library/functions.php';
checkUser();
$action = isset($_GET['action']) ? $_GET['action'] : '';
switch ($action) { case 'modify' : modifyOrder(); break;
default :
function modifyOrder() {
if (!isset($_GET['oid']) || (int)$_GET['oid'] <= 0 || !isset($_GET['status']) || $_GET['status'] == '') {
header('Location: index.php'); }
$orderId = (int)$_GET['oid']; $status = $_GET['status'];
$sql = "UPDATE tbl_order
SET od_status = '$status', od_last_update = NOW() WHERE od_id = $orderId";
$result = dbQuery($sql);
header("Location: index.php?view=list&status=$status"); }
?>
E. Main.php (Inbox) <?php
} ?> <style>
.text{ font-family:"Courier New", Courier, monospace; font-size:13;} </style>
<?php
// get current configuration // database connection config $dbHost = 'localhost';
$dbUser = 'root'; $dbPass = '';
$dbName = 'phpwebco_shop';
$koneksi=mysql_connect($dbHost,$dbUser,$dbPass); mysql_select_db($dbName, $koneksi);
$sql = mysql_query("SELECT * FROM tbl_inbox"); ?><script type="text/JavaScript">
<!--
function MM_popupMsg(msg) { //v1.0 alert(msg);
}
function MM_goToURL() { //v3.0
//-->
</script> <?php
//menentukan batas, cek dan posisi data $batas=5;
if(empty($halaman)){ $posisi=0;
$halaman = 1; } else {
$posisi = ($halaman-1) * $batas; }
//sesuaikan perintah SQL dengan posisi dan batas
$sql= "SELECT * FROM tbl_inbox ORDER BY id DESC LIMIT $posisi,$batas"; $result = mysql_query($sql);
$test=mysql_num_rows($result); if ($test!=0)
{
$no=$posisi+1;
echo "<th>NO</th>"; echo "<th>Name</th>"; echo "<th>Email</th>"; echo "<th>Action</th></tr>";
while($row=mysql_fetch_array($result)) {
//pemberian warna berbeda pada tiap baris tampilan if (($no % 2)==0)
{ $warna="#EFEFEF"; } else { $warna="#DEDEDE";}
$id= $row['id'];
echo "<tr bgcolor=$warna align='left' ><td width='10'>"; echo $no;
echo "</td><td width='40'>"; echo $row['name'];
echo "</td><td width='50'>"; echo $row['email'];
echo "</td><td width='50'>";
echo "<a href='delete_message.php?id=$id' onClick=\"return confirm('Apakah Anda benar-benar akan menghapus Message
ini?')\">Delete</a> "?>
<a href='index.php?id=<?php echo $id;
<a href='index.php?id=<?php echo $id;
?>&name=show_message.php'>Replay</a> <?php }
else {echo "Replayed"; } ?>
<? $no++; }
echo "</table><p><table width='500' align='left' id='tabel_show' cellpadding='1' cellspacing='1'><tr><td></td><td>";
$sql2 = mysql_query("select * from tbl_inbox"); $result=mysql_num_rows($sql2);
$jmlhalaman=ceil($result/$batas); /* bangun Previous link */
if($halaman > 1){
$prev = ($halaman - 1); ?>
<a href="index.php?name=main.php&halaman=1"> <span class="text"><< First</span> </a> |
<a href="index.php?name=main.php&<? echo "halaman=$prev"; ?>"> <span class="text"><<Previous </span></a>
<? } else {
for($i = 1; $i <= $jmlhalaman; $i++){ if($i == $jmlhalaman){
echo "$i "; }
else { ?>
<a href="index.php?name=main.php&<? echo "halaman=$i"; ?>"><span class="text"><? echo $i; ?></span></a>
<? } }
/* bangun Next link */
if($halaman < $jmlhalaman){ $next = $halaman + 1;
?>
<a href="index.php?name=main.php&<? echo "halaman=$next"; ?>"><span class="text">Next> |</span></a>
<A href="index.php?name=main.php&<? echo "halaman=$jmlhalaman"; ?>"><span class="text">Last >></span></a>
<? }
echo "</td></tr></table>";
}//akhir dari kondisi bahwa data tidak kosong
else { echo "TIDAK ADA DATA DALAM DATABASE "; }
?>
<?php
require_once '../../library/config.php'; require_once '../library/functions.php';
checkUser();
$action = isset($_GET['action']) ? $_GET['action'] : '';
switch ($action) {
case 'addProduct' : addProduct(); break;
case 'modifyProduct' : modifyProduct(); break;
case 'deleteProduct' : deleteProduct(); break;
case 'deleteImage' : deleteImage(); break;
default :
// if action is not defined or unknown // move to main product page header('Location: index.php'); }
function addProduct() {
$catId = $_POST['cboCategory']; $name = $_POST['txtName'];
$description = $_POST['mtxDescription'];
$price = str_replace(',', '', (double)$_POST['txtPrice']); $qty = (int)$_POST['txtQty'];
$images = uploadProductImage('fleImage', SRV_ROOT . 'images/product/');
$mainImage = $images['image']; $thumbnail = $images['thumbnail'];
$sql = "INSERT INTO tbl_product (cat_id, pd_name, pd_description, pd_price, pd_qty, pd_image, pd_thumbnail, pd_date)
VALUES ('$catId', '$name', '$description', $price, $qty, '$mainImage', '$thumbnail', NOW())";
header("Location: index.php?catId=$catId"); }
/*
Upload an image and return the uploaded image name */
function uploadProductImage($inputName, $uploadDir) {
$image = $_FILES[$inputName]; $imagePath = '';
$thumbnailPath = '';
// if a file is given
if (trim($image['tmp_name']) != '') {
$ext = substr(strrchr($image['name'], "."), 1); //$extensions[$image['type']];
// generate a random new file name to avoid name conflict $imagePath = md5(rand() * time()) . ".$ext";
list($width, $height, $type, $attr) = getimagesize($image['tmp_name']);
// make sure the image width does not exceed the // maximum allowed width
$result = createThumbnail($image['tmp_name'], $uploadDir . $imagePath, MAX_PRODUCT_IMAGE_WIDTH);
$imagePath = $result; } else {
$result = move_uploaded_file($image['tmp_name'], $uploadDir . $imagePath);
}
if ($result) {
// create thumbnail
$thumbnailPath = md5(rand() * time()) . ".$ext"; $result = createThumbnail($uploadDir . $imagePath, $uploadDir . $thumbnailPath, THUMBNAIL_WIDTH);
// create thumbnail failed, delete the image if (!$result) {
unlink($uploadDir . $imagePath); $imagePath = $thumbnailPath = ''; } else {
$thumbnailPath = $result; }
} else {
// the product cannot be upload / resized $imagePath = $thumbnailPath = ''; }
}
}
/*
Modify a product */
function modifyProduct() {
$productId = (int)$_GET['productId']; $catId = $_POST['cboCategory']; $name = $_POST['txtName'];
$description = $_POST['mtxDescription'];
$price = str_replace(',', '', $_POST['txtPrice']); $qty = $_POST['txtQty'];
$images = uploadProductImage('fleImage', SRV_ROOT . 'images/product/');
$mainImage = $images['image']; $thumbnail = $images['thumbnail'];
// if uploading a new image // remove old image
if ($mainImage != '') {
_deleteImage($productId);
} else {
// if we're not updating the image
// make sure the old path remain the same // in the database
$mainImage = 'pd_image'; $thumbnail = 'pd_thumbnail'; }
$sql = "UPDATE tbl_product
SET cat_id = $catId, pd_name = '$name', pd_description = '$description', pd_price = $price,
pd_qty = $qty, pd_image = $mainImage, pd_thumbnail = $thumbnail
WHERE pd_id = $productId";
$result = dbQuery($sql);
header('Location: index.php'); }
/*
Remove a product */
function deleteProduct() {
if (isset($_GET['productId']) && (int)$_GET['productId'] > 0) { $productId = (int)$_GET['productId'];
header('Location: index.php'); }
// remove any references to this product from // tbl_order_item and tbl_cart
$sql = "DELETE FROM tbl_order_item WHERE pd_id = $productId"; dbQuery($sql);
$sql = "DELETE FROM tbl_cart WHERE pd_id = $productId"; dbQuery($sql);
// get the image name and thumbnail $sql = "SELECT pd_image, pd_thumbnail FROM tbl_product
WHERE pd_id = $productId";
$result = dbQuery($sql);
$row = dbFetchAssoc($result);
// remove the product image and thumbnail if ($row['pd_image']) {
// remove the product from database; $sql = "DELETE FROM tbl_product WHERE pd_id = $productId"; dbQuery($sql);
header('Location: index.php?catId=' . $_GET['catId']); }
/*
Remove a product image */
function deleteImage() {
if (isset($_GET['productId']) && (int)$_GET['productId'] > 0) { $productId = (int)$_GET['productId'];
} else {
header('Location: index.php'); }
$deleted = _deleteImage($productId);
// update the image and thumbnail name in the database $sql = "UPDATE tbl_product
WHERE pd_id = $productId"; dbQuery($sql);
header("Location: index.php?view=modify&productId=$productId"); }
function _deleteImage($productId) {
// we will return the status
// whether the image deleted successfully $deleted = false;
$sql = "SELECT pd_image, pd_thumbnail FROM tbl_product
WHERE pd_id = $productId";
$result = dbQuery($sql) or die('Cannot delete product image. ' . mysql_error());
if (dbNumRows($result)) {
$row = dbFetchAssoc($result); extract($row);
if ($pd_image && $pd_thumbnail) { // remove the image file
$deleted = @unlink(SRV_ROOT . "images/product/$pd_image");
} }
return $deleted; }
?>
G. Login.php <?php
require_once '../library/config.php'; require_once './library/functions.php';
$errorMessage = ' ';
if (isset($_POST['txtUserName'])) { $result = doLogin();
if ($result != '') {
$errorMessage = $result; }
} ?> <html> <head>
<title>Shop Admin - Login</title>
<link href="include/admin.css" rel="stylesheet" type="text/css"> </head>
<body>
<table width="750" border="0" align="center" cellpadding="0" cellspacing="1" class="graybox">
<tr>
<td><img src="include/banner-top.gif" width="750" height="75"></td> </tr>
<tr>
<td valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="20">
<tr>
<td align="center" class="contentArea"><form method="post" name="frmLogin" id="frmLogin">
<p> </p>
<table width="350" border="0" align="center" cellpadding="5" cellspacing="1" bgcolor="#336699" class="entryTable"> align="center"><?php echo $errorMessage; ?></div>
<td width="100" align="right">User Name</td> <td width="10" align="center">:</td>
<td><input name="txtUserName" type="text" class="box" id="txtUserName" value="" size="10" maxlength="20"></td>
2. INCLUDE
<table width="550" border="0" align="center" cellpadding="10" cellspacing="0"> <tr>
<td>Step 1 Of 3 : Enter Shipping And Payment Information </td> </tr>
</table>
<p id="errorMessage"><?php echo $errorMessage; ?></p>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>?step=2" method="post" name="frmCheckout" id="frmCheckout" onSubmit="return
checkShippingAndPaymentInfo();">
<table width="550" border="0" align="center" cellpadding="5" cellspacing="1" class="entryTable">
<tr class="entryTableHeader">
<td colspan="2">Shipping Information</td> </tr>