saya mau tanya niih master..lasung aja..dahh

bagaimana mereset nomor order?

misalnya pada hari ini tgl skarang nomor order pada web toko online saya 000, kemudian terjadi transaksi misalnya ada 10 orang transaksi, nah ketika esok harinya nomor oder itu kembali lg ke 000 lg?

skrip yg saya gunakan ada dibagian:

// mendapatkan nomor orders
$id_orders=mysql_insert_id();

mohon bantuannya para master..:(

berikut skripnya:
<?
// fungsi untuk mendapatkan isi keranjang belanja
function isi_keranjang(){
$isikeranjang = array();
$sid = session_id();
$sql = mysql_query("SELECT * FROM tbl_temp_orders WHERE cidsession='$sid'");

while ($data=mysql_fetch_array($sql)) {
$isikeranjang[] = $data;
}
return $isikeranjang;
}

$tgl_skrg = date("Ymd");
$jam_skrg = date("H:i:s");

// simpan data pemesanan
$sql = mysql_query("SELECT * FROM tbl_member WHERE cusername='$_SESSION[namamember]'");
$r=mysql_fetch_array($sql);
mysql_query("INSERT INTO tbl_orders(cnmcust, calamat, cnotelp, cemail, dtglorders, cjamorders, nidkota)
VALUES('$r[cusername]','$r[calamat]','$r[cnotelp]','$r[cemail]','$tgl_skrg','$jam_skrg','$r[nidkota]')");

// mendapatkan nomor orders
$id_orders=mysql_insert_id();

// panggil fungsi isi_keranjang dan hitung jumlah produk yang dipesan
$isikeranjang = isi_keranjang();
$jml = count($isikeranjang);
echo"$sid";
// simpan data detail pemesanan
for ($i = 0; $i < $jml; $i++){
//mysql_query("INSERT INTO tbl_detail_orders(nidorders, cidbarang, njumlah)VALUES('$id_orders','{$isikeranjang[$i]}', {$isikeranjang[$i]})");
mysql_query("INSERT INTO tbl_detail_orders(nidorders, cidbarang, njumlah)VALUES('$id_orders','{$isikeranjang[$i]}', {$isikeranjang[$i]})");
}

// update/kurangi stok produk
for ($i = 0; $i < $jml; $i++) {
mysql_query("UPDATE tbl_barang SET nstok = nstok - {$isikeranjang[$i]}
WHERE cidbarang = '{$isikeranjang[$i]}'");
}

// update/tambahkan produk yang dibeli (best seller)
for ($i = 0; $i < $jml; $i++) {
mysql_query("UPDATE tbl_barang SET ndibeli = ndibeli + {$isikeranjang[$i]}
WHERE cidbarang = '{$isikeranjang[$i]}'");
}

// setelah data pemesanan tersimpan, hapus data pemesanan di tabel pemesanan sementara (orders_temp)
for ($i = 0; $i < $jml; $i++) {
mysql_query("DELETE FROM tbl_temp_orders
WHERE nidtemporders = {$isikeranjang[$i]}");
}
echo "<div class=detailbawah>
Data pemesan beserta ordernya adalah sebagai berikut: <p></p>
<table>
<tr span class=isidetail><td>Nama </td><td> : $r[cusername] </td></tr>
<tr span class=isidetail><td>Alamat Lengkap </td><td> : $r[calamat] </td></tr>
<tr span class=isidetail><td>Telpon </td><td> : $r[cnotelp] </td></tr>
<tr span class=isidetail><td>E-mail </td><td> : $r[cemail] </td></tr></table><hr /><br />

Nomor Order: $id_orders <br /><br />";

$daftarproduk=mysql_query("SELECT * FROM tbl_detail_orders,tbl_barang
WHERE tbl_detail_orders.cidbarang=tbl_barang.cidbarang
AND nidorders='$id_orders'");

echo "<table cellpadding=5>
<tr bgcolor=#D3DCE3><th>No</th><th>Barang</th><th>Berat(Kg)</th><th>Jumlah</th><th>Harga</th><th>Disc(%)</th><th>Sub Total</th></tr>";

$pesan="Terimakasih telah melakukan pemesanan online di IMPEEZA Outdoor Adventure <br /><br />
Nama: $r[cusername] <br />
Alamat: $r[calamat] <br/>
Telpon: $r[cnotelp] <br /><hr />

Nomor Order: $id_orders <br />
Data order Anda adalah sebagai berikut: <br /><br />";

$no=1;
while ($data=mysql_fetch_array($daftarproduk)){
$subtotalberat = $data[nberat] * $data[njumlah]; // total berat per item produk
$totalberat = $totalberat + $subtotalberat; // grand total berat all produk yang dibeli

$subtotal = $data[nharga] * $data[njumlah]-($data[njumlah] * ($data[ndiskon]/100 * $data[nharga]));
$total = $total + $subtotal;
$subtotal_rp = format_rupiah($subtotal);
$total_rp = format_rupiah($total);
$harga = format_rupiah($data[nharga]);

echo "<tr bgcolor=#cccccc><td>$no</td><td>$data[cnmbarang]</td><td align=center>$data[nberat]</td><td align=center>$data[njumlah]</td><td>Rp. $harga</td><td>$data[ndiskon]</td><td>Rp. $subtotal_rp</td></tr>";

$pesan.="$data[njumlah] $data[cnmbarang] -> Rp. $harga -> Subtotal: Rp. $subtotal_rp <br />";
$no++;
}

$ongkos=mysql_fetch_array(mysql_query("SELECT cnmkota,nongkir FROM tbl_kota WHERE nidkota='$r[nidkota]'"));
$tujuan=$ongkos[cnmkota];
$ongkoskirim1=$ongkos[nongkir];
$ongkoskirim = $ongkoskirim1 * $totalberat;
$grandtotal = $total + $ongkoskirim;

$ongkoskirim_rp =format_rupiah($ongkoskirim);
$ongkoskirim1_rp =format_rupiah($ongkoskirim1);
$grandtotal_rp =format_rupiah($grandtotal);

$pesan.="<br /><br />Total : Rp. $total_rp
<br />O Tujuan Kota Anda : $tujuan
<br />Ongkos Kirim untuk Tujuan Kota Anda : Rp. $ongkoskirim1_rp/Kg
<br />Total Berat : $totalberat Kg
<br />Total Ongkos Kirim : Rp. $ongkoskirim_rp
<br />Grand Total : Rp. $grandtotal_rp
<br /><br />Silahkan lakukan pembayaran ke Rekening BCA sebanyak Grand Total yang tercantum,
nomor rekeningnya <b>0000000000</b> a.n. Ali LAHOLOTE";

$subjek="Pemesanan Online IMPEEZA Outdoor Adventure";

// Kirim email dalam format HTML
$dari = "From: gcodots@yahoo.com \n";
$dari .= "Content-type: text/html \r\n";

// Kirim email ke kustomer
mail($r[cemail],$subjek,$pesan,$dari);

// Kirim email ke pengelola toko online
mail("gcodots@yahoo.com",$subjek,$pesan,$dari);

echo "<tr><td colspan=5 align=right>Total : Rp. </td><td align=right><b>$total_rp</b></td></tr>
<tr><td colspan=5 align=right>Tujuan Kota Anda: </td><td align=right><b>$tujuan</b></td></tr>
<tr><td colspan=5 align=right>Ongkos Kirim untuk Tujuan Kota Anda: Rp. </td><td align=right><b>$ongkoskirim1_rp</b>/Kg</td></tr>
<tr><td colspan=5 align=right>Total Berat : </td><td align=right><b>$totalberat Kg</b></td></tr>
<tr><td colspan=5 align=right>Total Ongkos Kirim : Rp. </td><td align=right><b>$ongkoskirim_rp</b></td></tr>
<tr><td colspan=5 align=right>Grand Total : Rp. </td><td align=right><b>$grandtotal_rp</b></td></tr>
</table>";
echo "<hr /><span class=isidetail><p>Data order dan nomor rekening transfer sudah Kami kirim ke email Anda. <br />
Apabila Anda tidak melakukan pembayaran dalam 3 hari, maka data order Anda akan Kami Hapus <b><i>(transaksi batal)</i></b><br><br><img src='images/tiki.jpg' hspace=20 border=0></span></div>";

?>
Silahkan login untuk menjawab!
2
Loading...
Ellyx Christian · Dec 13, 2011 · 2 Suka · 0 Tidak Suka
sebelum saya memberi tahu caranya, kenapa nomor order perlu di reset? itu tidak masuk akal sama sekali! kenapa tidak dibuat simple saja?itu hanya sebuah nomor,nothing else.

Salah satu caranya adalah dengan menggunakan sebuah table, misal table_no_order yang berisi nomor order terakhir. Kemudian buat sebuak script php (mis. reset.php) untuk mereset nilai table_no_order, terakhir buat cronjob dan setting agar berjalan setiap 24jam untuk mengeksekusi script reset.php
0
Loading...
alif · Dec 14, 2011 · 0 Suka · 0 Tidak Suka
berarti saya harus namabah di sqlnya ya mas? ok..
bagaimana script untuk meresetnya? biar saya coba script yang mas berikan.
mohon pencerahahn.
1
Loading...
Ellyx Christian · Dec 14, 2011 · 1 Suka · 0 Tidak Suka
struktur table_no_order:
create table table_no_order(last_order_number int(11));
//reset nilai table_no_order
mysql_query("update table_no_order set last_order_number=0");
0
Loading...
alif · Dec 16, 2011 · 0 Suka · 0 Tidak Suka
mas bisa atw g klo resetnya lewat sqlnya? tampa tambah tabel..?
0
Loading...
Ellyx Christian · Dec 16, 2011 · 0 Suka · 0 Tidak Suka
kalau dengan sql murni saya rasa tidak bisa. Jika nomor order adalah primary key maka nomor order tidak bisa direset. Semuanya tergantung dari struktur table yang kamu miliki. Mungkin kamu bisa kasi tahu struktur table order-nya
0
Loading...
alif · Dec 17, 2011 · 0 Suka · 0 Tidak Suka
1.nidorders (primary key)
2.cnmcust
3.calamat
4.cnotelp
5.cemail
6.cstatusorder
7.dtglorder(primarykey)
8.cjamorder
9.nidkota
ini struktur tbl_order
saya coba prinscreen kok g bisa ya?(biar jelas)
0
Loading...
Ellyx Christian · Dec 18, 2011 · 0 Suka · 0 Tidak Suka
jika nomor order adalah field "nidorders" maka kamu tidak bisa meresetnya, kecuali kamu mengosongkan kembali table.
0
Loading...
alif · Dec 19, 2011 · 0 Suka · 0 Tidak Suka
udah saya kosongin mas..tetep aja dia mengikuti nomor order setelah itu misalnya 218 dan bsk misalnya jadi 219 dan setrusnya..bagaiman solusinya mas...
1
Loading...
Ellyx Christian · Dec 19, 2011 · 1 Suka · 0 Tidak Suka
kosongkan tabel dengan sql truncate jangan delete, misal:

truncate nama_table;
0
Loading...
alif · Dec 20, 2011 · 0 Suka · 0 Tidak Suka
mungkin mas ellyx bisa lebih jelas untuk melihat webonilne saya di www.tokoimp.tk sampai tarap nomer order yg saya maksud..(masih trial kok)