Thursday, October 22, 2015

Aplikasi Penjualan Online

Berikut Langkah Langkahnya : 

    1.     Database dan tabel sbb


Database : tokoabc
Tabel-tabel :
Barang(*kode_brg, nama_brg, stok,satuan)
Jual (*nomor_tsk,tanggal_tsk,jumlah)
Detail_jual(**nomor_tsk,**kode_brg,qty,total)
Pelanggan(*kode_plg,nama_plg, alamat,password)

    2.     Form dan script

2.1.        Halaman Utama dan Script untuk pemilihan Barang yg di pesan




Script ke-1: tampil_kolom.php

Script ini mengahsilkan gambar, dan sekaligus hiperlink ke kernajang.php



[1]     <html>
[2]     <head>
[3]     <title> ABC Online Shop</title>
[4]     </head>
[5]     <body>
[6]      
[7]     <table border=2>
[8]     <tr><th colspan=3 width=400><h1>ABC Online Shop<h1></th></tr>
[9]     <tr> <td align=center><a href="profil.php"> Profil </a></td>
[10]        <td align=center><a href="cekpesan.php"> Cek Pesanan </a></td>     
[11]        <td align=center><a href="admin.php"> Admin </a></td></tr>    
[12]    </td></tr>
[13]   </table>
[14]   <BR>
[15]   SILAHKAN MEMILIH  BARANG KAMI <BR><BR>
[16]   <?
[17]   $pilihke=$pilih;
[18]   $nomorbaru=$nopesan;
[19]   include_once "konek.php";
[20]   $ambil="select kode_brg,nama_brg  from barang limit 0,10";
[21]   $lakukan=mysql_query($ambil);
[22]   while($hasil=mysql_fetch_array($lakukan))
[23]   {
[24]   ?>
[25]   <? echo $hasil[kode_brg]; ?><BR>
[26]   <? echo $hasil[nama_brg]; ?><BR>
[27]   <input name="in_cacah" type="text" value='1' Width='10'> 
[28]   <a href="keranjang.php ?
[29]   kodebarang=<?echo $hasil[kode_brg]; ?> && cacah=<?echo $in_cacah;?>
[30]   && pilih=<? echo $pilihke; ?> && notsk_baru=<?echo $nomorbaru;?>
[31]   "> Masuk Keranjang </a><BR><BR>
[32]   <?}?>
[33]   </body>
[34]   </html>

Penjelasan Script

Baris No:
[17] identifikasi apakah barang pada halaman ini pernah di klik belum.bila nilai $pilih=0, bila sudah$pilih=1, nilai ini diambil dari  variabel pilih pada script keranjang.php


2.2.        Halaman untuk memuat daftar barang yg di pesan


file : keranjang.php

[1]     <HTML>
[2]     <BODY>
[3]     DAFTAR BELANJA <BR>
[4]     <?
[5]     include "konek.php";
[6]     if($pilih==0)
[7]     {
[8]     $lihatnomor="select max(nomor_tsk) as notsk from jual";
[9]     $no=mysql_query($lihatnomor) or die ("gagal ambil nomor");      
[10]   $no1=mysql_fetch_array($no);
[11]   $notsk_akhir=$no1[notsk];
[12]   $notsk_baru=$notsk_akhir+1;
[13]   //rekam data pesan pertama kali
[14]   $rekam="INSERT INTO jual(nomor_tsk) VALUES($notsk_baru)";
[15]   mysql_query($rekam) or die("GAGAL REKAM DATA");
[16]   $pilih=1;
[17]    }
[18]   echo "Nomor Pesan : $notsk_baru";
[19]    $rekam_det="insert into detail_jual(nomor_tsk,kode_brg,qty)values
[20]   ('$notsk_baru','$kodebarang','$in_cacah')";
[21]   mysql_query($rekam_det) or die ("gagal Rekam  di jual  detail");
[22]   ?>
[23]   <form name="form1" methode="post" action="pesan.php">
[24]   <table width=600 border=1>
[25]   <tr><td>Kode Barang</td> <td>Nama Barang</td> <td>Jumlah</td></tr>
[26]   <?
[27]   include_once "konek.php";
[28]   $ambil="select dj.kode_brg as kb,b.nama_brg as nb,dj.qty as q from detail_jual dj
[29]   inner join barang b on dj.kode_brg=b.kode_brg
[30]   inner join  jual j on dj.nomor_tsk=j.nomor_tsk
[31]   where dj.nomor_tsk='$notsk_baru'";
[32]   $lakukan=mysql_query($ambil);
[33]   while($hasil=mysql_fetch_array($lakukan))
[34]   {
[35]   $kodebar=$hasil[kb];
[36]    
[37]   ?>
[38]   <tr> <td><? echo $hasil[kb]; ?></td>
[39]        <td><? echo $hasil[nb]; ?></td>     
[40]        <td><? echo $hasil[q];?></td>
[41]    </tr>
[42]   <?
[43]   }
[44]   ?>
[45]   <tr>
[46]   <td><a href="tampil_kolom.php?pilih=<?echo $pilih;?> &&nopesan=<?echo $notsk_baru;?>" > Lagi ?</a></td>
[47]   <input name="nopesan" type="hidden" value=<? echo $notsk_baru ;?>>
[48]    <td><input name="pesan" type="submit" value="PESAN"></td>
[49]   </tr>
[50]   </table>
[51]   </form>
[52]   </BODY>
[53]   </HTML>

Penjelasan Script
[6] untuk mengidentifikasi apakah ini merupakan pemilihan pertama atau yang berikutnya.Bila pemilihan pertama var $pilih=0,bila  pemilihan berikutnya $pilih=1

[8]-[12]  menentukan  nomor transaksi  terbaru ($nomor_tsk_baru) yakni nokmor terakhir + 1
[14]-[15] merekam ke tabel jual, nomor transaksi terbaru untuk pesan tempat agar tidak dipakai user lain.
[16]  membuat flag $pilih=1, agar perekaman ini hanya terjadi sekali di tabel jual,
[19]-[21] merekam data transaksi yg bersifat detail: Nomor_tsk,kode_barang,qty dll  pada tabel detail_jual
[27]-[44] menampilkan  data transaksi tersebut secara lengkap
[46] membuat hiperlink dg teks : lagi ? untuk menuju ke halaman utama tampil.kolom.php. Hiperlink ini harus melewatkan variabel pilih, agar   di halaman utama (tampil_kolom.php), bila pernah memilih var pilih=1. dan var  nopesan,  agar nomor transaksi untuk user tersebut dapat diperoleh, isi nopesan ini nantinya akan digunakan untuk mengidentifikasi nomor_tsk pada tabel detail_jual. Hal ini harus dilakukan karena 1 nomor transaksi pada tabel  jual akan tersimpan ber kali2 di tabel detail_jual- dengan nomro sama, sesuai dg banyaknya pemilihan barang.
[47] melewatkan isi variabel nopesan  ke halaman pesan.php.
[48] membuat tombol Pesan, bila  di klik akanj menjalankan pesan.php.

2.3.        Halaman Pemesan barang yang sudah dipilih


file: pesan.php

[1]     <HTML>
[2]     <BODY>
[3]     <form name="formpesan" action="pesanok.php">
[4]      <H1>DAFTAR PESANAN </H1><BR>
[5]     Nomor : <?echo $nopesan?> <BR>
[6]     <table width=600 border=1>
[7]     <tr><td>Kode Barang</td> <td>Nama Barang</td> <td>Jumlah</td></tr>
[8]     <?
[9]     include_once "konek.php";
[10]   $ambil="select dj.kode_brg as kb,b.nama_brg as nb,dj.qty as q from detail_jual dj
[11]   inner join barang b on dj.kode_brg=b.kode_brg
[12]   inner join  jual j on dj.nomor_tsk=j.nomor_tsk
[13]   where dj.nomor_tsk='$nopesan'";
[14]   $lakukan=mysql_query($ambil);
[15]   while($hasil=mysql_fetch_array($lakukan))
[16]   {
[17]   ?>
[18]   <tr> <td><? echo $hasil[kb]; ?></td>
[19]        <td><? echo $hasil[nb]; ?></td>     
[20]        <td><? echo $hasil[q] ; ?> </td>
[21]   </tr>
[22]   <?}?>
[23]   </table>
[24]   <BR><BR>
[25]   <h2> Masukkan </h2><br>
[26]   User : <input name="user" type="text" ><BR>
[27]   Password: <input name="pwd" type="password"><BR>
[28]   <input name="nomorpesan" type="hidden" value=<?echo $nopesan;?>>
[29]   <tr> <td><input name="ok" type="submit" value="OK"></td>
[30]   </tr>
[31]    </form>
[32]   </body>
[33]   </html>

penjelasan :
[4]-[23] : menampilkan daftar barang yang dipesan
[26]-[27]: isian user dan password
[28]: melewatkan isi variabel nomorpesan ke perekaman data lengkap (belum dibuat disini)

    3.     Catatan

[1]     Script diatas masih bersifat dasar, karena penekanan aplikasi yg dibuat untuk untuk menjelaskan dinamika program untuk perekaman data pada  multiuser dan perekaman data master detail, dimana sekali transaksi dengan 1 nomor transaksi pada tabel master (tabel jual) tetapio nomor tersebut terekam ber –kali2 pada tabel detail (detail_jual).
[2]     Pada aplikasi  yang besar maka pada saat pesan dan belum bayar data-data tersimpan di tabel sementara, agar di tabel utama (jual dan detai_jual ) tidak banyak data sampah
[3]     Aplikasi ini masih harus dikembangkan :
a.  Tampilan yg menarik dengan komposisi text, warna dan gambar
b.  Bila telah terjadi pembayaran, seharuanya data stok pada tabel barang berkurang.
c.  Konfirmasi ke user, apakah pesan diterima/bayar atau belum


Share

Twitter Delicious Facebook Digg Stumbleupon Favorites