|
|
|
ตระกร้าสินค้า ไม่เคลียร์ของในตระกร้าหลังจากซื้อนสินค้าไปแล้ว ข้อมูลยังคงอยู่ทำให้ซื้อสินค้ารอบต่อไปลำบากมากTT_TT |
|
|
|
|
|
|
|
สวัสดีครับ ผมมือใหม่เขียน เว็บไซต์PHPขายสินค้าแต่ตอนนี้ติดอยู่จุดนึงครับ เกี่ยวกับการเคลียร์ของในตระกร้าสินค้าหลังจากกดสั่งซือสินค้ามันไม่ยอมเคลียร์ให้ว่าง มันกลับเก็บค่าเก่าไว้phpCart.php
<?php
include "chksession.php";
?>
<?
include "connect.php";
$sql="select * from member ";
$result=mysql_db_query($db,$sql);
$record=mysql_fetch_array($result);
$noid=$record[Member_ID];
session_start();
if ( $pro_title != "" )
{
if ( session_is_registered( "ses_basket_items" ) )
{
$basket_position_counter = 0;
$double = 0;
if ( $ses_basket_items > 0 )
{
foreach ( $ses_basket_name as $basket_item )
{
if ( $basket_item == $pro_title )
{
$double = 1;
$basket_position = $basket_position_counter;
}
$basket_position_counter++;
}
}
if ( $double == 1 )
{
$ses_basket_amount[$basket_position] = $quantity;
}
else
{
$ses_basket_name[] = $pro_title;
$ses_basket_amount[] = 1;
$ses_basket_price[] = $pro_price;
$ses_basket_id[] = $pro_id;
$ses_basket_items++;
}
}
else
{
$ses_basket_items = 1;
$ses_basket_name[0] = $pro_title;
$ses_basket_amount[0] = 1;
$ses_basket_price[0] = $pro_price;
$ses_basket_id[0] = $pro_id;
session_register( "ses_basket_items" );
session_register( "ses_basket_name" );
session_register( "ses_basket_amount" );
session_register( "ses_basket_price" );
session_register( "ses_basket_id" );
}
}
if ( $ses_basket_items > 0 )
{
echo "<html>\n";
echo "<head>\n";
echo "<title>View Cart</title>\n";
echo "<link rel=\"stylesheet\" href=\"cart.css\" type=\"text/css\">\n";
echo "</head>\n";
echo "<body background=\"\">\n";
echo "<table width=\"98%\" border=\"0\" cellspacing=\"0\" cellpadding=\"2\" align=\"center\">\n";
echo "<tr>\n";
echo "<td class=\"Tahoma13\" colspan=\"4\"><b>รายการสินค้าในตระกร้า :</b></td>\n";
echo "</tr>\n";
echo "<tr bgcolor=\"#CAE4FF\">\n";
echo "<td class=\"Tahoma13\" width=\"38%\"><b>ชื่อสินค้า</b></td>\n";
echo "<td class=\"Tahoma13\" width=\"22%\" align=\"center\"><b>จำนวน</b></td>\n";
echo "<td class=\"Tahoma13\" width=\"20%\" align=\"right\"><b>ราคา</b></td>\n";
echo "<td class=\"Tahoma13\" width=\"20%\" align=\"right\"><b>ราคารวม</b></td>\n";
echo "</tr>\n";
$swap = "2";
$total = 0;
for ( $basket_counter=0; $basket_counter<$ses_basket_items; $basket_counter++ )
{
$pro_price = $ses_basket_price[$basket_counter];
$quantity = $ses_basket_amount[$basket_counter];
$pro_title = $ses_basket_name[$basket_counter];
$pro_id = $ses_basket_id[$basket_counter];
if ( $swap == "1" )
{
$color = "#EAEAEA";
$swap = "2";
}
else
{
$color = "#EAEAEA";
$swap = "1";
}
echo "<tr bgcolor=\"$color\">\n";
echo "<form method=\"post\" action=\"phpCart.php\">\n";
echo "<input type=\"hidden\" name=\"pro_id\" value=\"$pro_id\">\n";
echo "<input type=\"hidden\" name=\"pro_title\" value=\"$pro_title\">\n";
echo "<td class=\"Tahoma13\" width=\"38%\">$pro_title</td>\n";
echo "<td class=\"Tahoma13\" width=\"22%\" align=\"center\">\n";
echo "<input type=\"text\" name=\"quantity\" size=\"5\" maxlength=\"5\" value=\"$quantity\">\n";
echo "<input type=\"submit\" name=\"Submit\" value=\"ยืนยันจำนวนสินค้า\">\n";
echo "</td>\n";
echo "<td class=\"Tahoma13\" width=\"20%\" align=\"right\">";
echo number_format( $pro_price, 2, '.', ',' );
echo "</td>\n";
echo "<td class=\"Tahoma13\" width=\"20%\" align=\"right\">";
$amount = $quantity*$pro_price;
$total += $amount;
echo number_format( $amount, 2, '.', ',' );
echo "</td>\n";
echo "</form>\n";
echo "</tr>\n";
}
echo "<tr valign=\"top\" bgcolor=\"#FFFFFF\">\n";
echo "<td class=\"Tahoma13\" width=\"38%\"></td>\n";
echo "<td class=\"Tahoma13\" width=\"22%\"></td>\n";
echo "<td class=\"Tahoma13\" width=\"20%\" align=\"right\">\n";
echo "<b><font color=\"#990000\">ยอดรวมทั้งหมด =</font></b>\n";
echo "</td>\n";
echo "<td class=\"Tahoma13\" width=\"20%\" align=\"right\">\n";
echo "<b><font color=\"#990000\">";
echo number_format( $total, 2, '.', ',' );
echo "</font></b>\n";
echo "</td>\n";
echo "</tr>\n";
echo "</table>\n";
echo "<p align=\"right\">";
echo "<form method=post action=\"phpComplete.php\">";
echo "<input type=\"hidden\" name=\"Member_ID\" value=\"$noid\">";
echo "<input type=\"hidden\" name=\"Shipping\" value=\"ยังไม่จัดส่ง\">";
echo "<input type=\"hidden\" name=\"Payment\" value=\"รอการชำระเงิน\">";
echo "<center><input type=\"submit\" value=\"ยืนยันการสั่งซื้อสินค้า\"></center>";
echo "</form>";
echo "</body>\n";
echo "</html>\n";
}
else
{
echo "<BR><BR><CENTER><FONT SIZE=\"4\" COLOR=\"#FF0000\">¤Ø³ÂѧäÁèä´é·Ó¡ÒÃàÅ×Í¡«×éÍÊÔ¹¤éҢͧàÃÒ</FONT></CENTER><BR><BR>";
echo "<FONT SIZE=\"4\" COLOR=\"#FF0000\"><CENTER>¡ÃسÒàÅ×Í¡ÊÔ¹¤éÒ¡è͹ ¢Íº¤Ø³¤èÐ</CENTER></FONT>";
echo "<meta http-equiv=\"refresh\" content=\"3;URL=index.php\">\n";
echo "<link rel=\"stylesheet\" href=\"cart.css\" target=\"mainFrame\"type=\"text/css\">\n";
//echo "<br><br><CENTER><a href=\"index.php\">Back</a></CENTER> \n";
$ses_basket_items = 0;
unset( $ses_basket_name );
unset( $ses_basket_amount );
unset( $ses_basket_price );
unset( $ses_basket_id );
session_unset('$ses_basket_items');
session_is_registered(ses_basket_items);
}
;
?>
กดแล้วก็จะมา
phpComplete.php
<?php
include "chksession.php";
?>
<?
include "phpConfigCart.php";
include "connect.php";
$payment=$_POST[Payment];
$shipping=$_POST[Shipping];
$sql="select * from member where username='$sess_username' ";
$result=mysql_db_query($db,$sql);
$record=mysql_fetch_array($result);
$noid=$record[Member_ID];
$ToDay = date( "Y-m-d" );
$month = date("n");
switch($month)
{
case "1":$printmonth = "มกราคม";break;
case "2":$printmonth = "กุมภาพันธ์";break;
case "3":$printmonth = "มีนาคม";break;
case "4":$printmonth = "เมษายน";break;
case "5":$printmonth = "พฤษภาคม";break;
case "6":$printmonth = "มิถุนายน";break;
case "7":$printmonth = "กรกฎาคม";break;
case "8":$printmonth = "สิงหาคม";break;
case "9":$printmonth = "กันยายน";break;
case "10":$printmonth = "ตุลาคม";break;
case "11":$printmonth = "พฤศจิกายน";break;
case "12":$printmonth = "ธันวาคม";break;
}
$ToDay= date("j")." $printmonth ".(date("Y")+543);
$day=date("j");
$day2=date("d"+5);
$month="$printmonth";
$year = date("Y")+543;
$time = date( "H:i:s" );
$ToDay2 = date( "Y-m-d" );
$ToDay3 = date( "Y-m-$day2" );
function ThaiDate()
{
$ThDay = array ( "อาทิตย์", "จันทร์", "อังคาร", "พุธ", "พฤหัส", "ศุกร์", "เสาร์" );
$ThMonth = array ( "มกราคม", "กุมภาพันธ์", "มีนาคม", "เมษายน", "พฤษภาคม", "มิถุนายน", "กรกฏาคม", "สิงหาคม", "กันยายน", "ตุลาคม", "พฤศจิกายน","ธันวาคม" );
$a = date( "w" );
$b = date( "n" )-1;
$c = date( "j" );
$d = date( "Y" )+543;
return " $c $ThMonth[$b] $d";
}
$day = ThaiDate();
$date=date("j");
$kkk = date("y");
$kkk2 = $kkk+543;
$day2 = date("d/m/$kkk2");
$sql1 = "INSERT INTO orders ( Date, Member_ID,Shipping_Status,Payment_Status ) ";
$sql1 = $sql1 . "VALUES ( '$ToDay2', '$noid','$shipping','$payment' )";
$rs1 = mysql_db_query( $db,$sql1 );
$order_id = mysql_insert_id();
/*$strSQL = "SELECT * FROM customer ";
$strSQL = $strSQL . "WHERE cus_id=$cus_id";
$result = mysql_query( $strSQL, $conn );
while ( $rs = mysql_fetch_array( $result ) ){
$sql = "UPDATE orders SET name = $rs[cus_fullname] WHERE cus_id=$cus_id";
}*/
for ( $basket_counter=0; $basket_counter<$ses_basket_items; $basket_counter++ )
{
$pro_price = $ses_basket_price[$basket_counter];
$quantity = $ses_basket_amount[$basket_counter];
$pro_id = $ses_basket_id[$basket_counter];
$pro_title = $ses_basket_name[$basket_counter];
$amount = $quantity*$pro_price;
$total += $amount;
if ( $quantity > 0 )
{
$sql2 = "INSERT INTO orders_detail ( Order_ID, Product_ID, Total, Price) ";
$sql2 = $sql2 . "VALUES ( '$order_id', '$pro_id', '$amount', '$quantity' )";
$rs2 = mysql_db_query( $db,$sql2 );
}
}
$ses_basket_items = 0;
unset( $ses_basket_name );
unset( $ses_basket_amount );
unset( $ses_basket_price );
unset( $ses_basket_id );
session_is_registered(ses_basket_items);
echo "<p><br>\n";
echo "<p class=\"Tahoma13\" align=\"center\">\n";
echo "<b><H3><CENTER>ขอบคุณที่ซื้อสินค้ากับเรา</CENTER></H3><br><H3><CENTER>ทางร้านจะดำเนินการจัดส่งสินค้าไปให้เร็วที่สุด หลังจากท่านชำระค่าสินค้า</CENTER></H3></b>\n";
echo"<CENTER><a href=index.php><< กลับสู่หน้าหลัก >></CENTER></a> ";
?>
พอซ์้อสินค้าเสร็จ จะกลับมาซื้อใหม่ ปรากฏว่า ของในตระกร้ารอบที่แล้ว มันยังไม่หายเลยครับ ยังคงค้างอยู่
เมื่อเช้า ผมแก้ให้มันกดซ์้อสินค้าเสร็จแล้วไม่ให้มันเด้งออกจากระบบ เพราะตอนแรก 2 บรรทัดสุดท้าย มันเป็น
session_unset();
session_destroy();
ผมอยากได้ความช่วยเหลือมากๆเลยครับ จ้างก็เอา (โปรเจคจบTT_TT) ผมลองศึกษามา2เดือนแล้ว (ได้แค่นี้) ถ้าใครสนใจช่วยผมจริงๆผมส่งไฟล์ทั้งหมดให้ได้ครับ
ขอบคุณที่ติดตามรับฟัง และช่วยเหลือครับ
Tag : PHP, MySQL, HTML/CSS, Ajax, CakePHP
|
|
|
|
|
|
Date :
2011-09-26 23:51:26 |
By :
ziroto |
View :
896 |
Reply :
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
php เวอร์ชั่นใหม่จะไม่ support session_register ละครับให้ใช้ $_SESSION แทนเช่น
//add-to-cart.php
<?php
session_start();
$ss = $_SESSION;//รับค่าตัวแปรจะได้เขียนสั้นลง ไม่ใช้ =& เพราะจะสับสนว่าตัวแปร session หรือตัว reference ถูกลบ
if (empty($ss['items']))
$ss['items'] = array();
$item_id = $_GET['item_id'];
$item_qty = $_GET['item_qty'];
$ss['items'][$item_id] = $qty;
$_SESSION = $ss; //บันทึกค่าที่เปลี่ยนแปลงกลับไป
?>
//clear-cart.php
<?php
session_start();
$ss = $_SESSION;
$ss['items'] = array();
$_SESSION = $ss; //บันทึกค่าที่เปลี่ยนแปลงกลับไป
?>
|
|
|
|
|
Date :
2011-09-27 01:35:27 |
By :
num |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 01
|