|
|
|
ปัญหาคือ ตอนทดสอบ เราทำการจัดซื้อสินค้าที่ละหลายๆ เช่นเราสั้งซื้อสินค้า 1 ครั้ง ครั้งละ 5 ตัว ระบบสามารถอ่านค่าได้จะเห็นได้เลยว่าเราสั่งสินค้า 5 ตัว |
|
|
|
|
|
|
|
ปัญหาคือ ตอนทดสอบ เราทำการจัดซื้อสินค้าที่ละหลายๆ เช่นเราสั้งซื้อสินค้า 1 ครั้ง ครั้งละ 5 ตัว ระบบสามารถอ่านค่าได้จะเห็นได้เลยว่าเราสั่งสินค้า 5 ตัว แต่ตอนที่เราจัดเก็บข้อมูลลงฐานข้อมมูล มันจัดเก็บฉะเพราะตัวแรกสุดที่เราสั่งซื้อเท่านั้น แก้ไขยังไงดีครับวอนผู้มีสามารถช่วยแก้ไขให้หน่อยครับ
........................ ไฟล์หน้ารับออเดอร์สินค้า .....................................................
Code (PHP)
<?
session_start();
?>
<HTML>
<HEAD><TITLE>ทดสอบ</TITLE></HEAD>
<BODY>
<H2>::ทดสอบ::</H2>
<P>
[ <A HREF="index.php">หน้าแรก</A> ]
[ <A HREF="basket.php">ตะกร้า</A> ]
[ <A HREF="admin/login_admin.php">admin</A> ]
</P>
<?
if (count($sess_id)==0) {
echo "ไม่มีสินค้านะครับ <BR>";
} else {
?>
</P>
<FORM METHOD="post" ACTION="prd_order2.php">
<P>
<H3>ทดสอบการสั่งซือ</H3></P>
<TABLE WIDTH="700" BORDER="0" CELLSPACING="1" CELLPADDING="0">
<TR>
<TD WIDTH="178">ชื่อ - นาสกุล : </TD>
<TD width="519"><INPUT TYPE="text" NAME="name" SIZE="40">
* </TD>
</TR>
<TR>
<TD>อีเมล์ : </TD>
<TD><INPUT TYPE="text" NAME="email">
</TD>
</TR>
<TR>
<TD>เบอร์โทร :</TD>
<TD><INPUT TYPE="text" NAME="tel">
</TD>
</TR>
<TR>
<TD>ที่อยู่</TD>
<TD><TEXTAREA NAME="address" COLS="40" ROWS="4"></TEXTAREA>* </TD>
</TR>
</TABLE><BR>
<TABLE WIDTH="600" BORDER="1">
<TR BGCOLOR="#E8E8E8">
<TD WIDTH="6%"><CENTER><B>ลบห</B></CENTER></TD>
<TD WIDTH="60%"><CENTER><B>หรัสสินค้าสินค้า</B></CENTER></TD>
<TD WIDTH="60%"><CENTER><B>ชื่อสินค้า</B></CENTER></TD>
<TD WIDTH="12%"><CENTER><B>จำนวน</B></CENTER></TD>
<TD WIDTH="10%"><CENTER><B>ราคา</B></CENTER></TD>
<TD WIDTH="12%"><CENTER><B>รวม</B></CENTER></TD>
</TR>
<?
for ($i=0;$i<count($sess_id);$i++) {
$total_unit=$sess_num[$i]*$sess_price[$i];
$total=$total+$total_unit;
$code=sprintf("%05d",$sess_id[$i]);
echo "
<TR>
<TD>$code</TD>
<TD><center>$sess_bar[$i]</center></TD>
<TD><center>$sess_name[$i]</center></TD>
<TD><CENTER>$sess_num[$i]</CENTER></TD>
<TD><CENTER>$sess_price[$i]</CENTER></TD>
<TD><CENTER>$total_unit</CENTER></TD>
</TR>";
}
?>
</TABLE><BR>
<? echo "จำนวนเงินทั้งหมด $total บาท"; ?>
<BR><BR>
<INPUT TYPE="submit" VALUE="Submit">
<INPUT TYPE="reset" VALUE="Reset">
<INPUT TYPE="hidden" NAME="total_order" VALUE="<?=$total?>">
</P>
</FORM>
<?
}
?>
</BODY>
</HTML>
........................ ไฟล์หน้าจัดเก็บข้อมูลลงฐานข้อมูลออเดอร์สินค้า .....................................................
Code (PHP)
<?
session_start();
$name=$_POST[name];
$email=$_POST[email];
$tel=$_POST[tel];
$address=$_POST[address];
$total_order=$_POST[total_order];
if ($name=="") {
echo "<H3>ERROR :</H3>";
exit();
} else if ($address=="") {
echo "<H3>ERROR :</H3>";
exit();
}
$datenow=date("Y-m-d");
include "connect.php";
$sql="insert into tb_order values('','$name','$email','$tel','$address','$total_order','$datenow') ";
//echo $sql;
mysql_db_query($dbname,$sql);
$sql2="select max(id_order) from tb_order ";
$result2=mysql_db_query($dbname,$sql2);
$row=mysql_fetch_row($result2);
for ($i=0;$i<count($sess_id);$i++) {
$sql3="insert into tb_order_detail values('$row[0]','$sess_id[$i]','$sess_bar[$i]','$sess_num[$i]','$sess_price[$i]') ";
mysql_db_query($dbname,$sql3);
echo $sql3;
}
session_unregister("sess_id");
session_unregister("sess_bar");
session_unregister("sess_name");
session_unregister("sess_price");
session_unregister("sess_num");
echo "<H3><A HREF='index.php'><center> ok </center></A></H3>";
mysql_close();
?>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><style type="text/css">
mysql_close();
?>
Tag : PHP, MySQL, HTML/CSS
|
|
|
|
|
|
Date :
2012-03-30 16:32:41 |
By :
boybekuru |
View :
991 |
Reply :
13 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ช่วยดูให้หน่อยคราบบบบบบผม
|
|
|
|
|
Date :
2012-03-30 17:12:20 |
By :
boybekuru |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตอนที่ echo มันมีการวนลูปค่าเพื่อ Insert หรือเปล่าครับ ลองดูตัวอย่างนี้ครับ
Code (PHP)
<?
session_start();
mysql_connect("localhost","root","root");
mysql_select_db("mydatabase");
$Total = 0;
$SumTotal = 0;
$strSQL = "
INSERT INTO orders (OrderDate,Name,Address,Tel,Email)
VALUES
('".date("Y-m-d H:i:s")."','".$_POST["txtName"]."','".$_POST["txtAddress"]."' ,'".$_POST["txtTel"]."','".$_POST["txtEmail"]."')
";
mysql_query($strSQL) or die(mysql_error());
$strOrderID = mysql_insert_id();
for($i=0;$i<=(int)$_SESSION["intLine"];$i++)
{
if($_SESSION["strProductID"][$i] != "")
{
$strSQL = "
INSERT INTO orders_detail (OrderID,ProductID,Qty)
VALUES
('".$strOrderID."','".$_SESSION["strProductID"][$i]."','".$_SESSION["strQty"][$i]."')
";
mysql_query($strSQL) or die(mysql_error());
}
}
mysql_close();
session_destroy();
header("location:finish_order.php?OrderID=".$strOrderID);
?>
Go to : PHP สร้างระบบตะกร้าสั่งซื้อสินค้า Shopping Cart ด้วย Session และ Array (PHP กับ MySQL)
|
|
|
|
|
Date :
2012-03-30 17:21:46 |
By :
webmaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
งง คับ (๑....๑)!!!
คือตอนจัดเก็บข้อมูลมันเก็บตัวเดียวอะครับ (ช่วยอธิบายอีกนิดได้ไหมอะคับ ความรู้น้อยจิงๆเรื่อง โค้ด T T)
|
|
|
|
|
Date :
2012-03-30 17:28:38 |
By :
boybekuru |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
วานผู้รู้ช่วยด้วยคราบบบบบบ
|
|
|
|
|
Date :
2012-03-30 18:21:00 |
By :
boybekuru |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
echo $sql3;
ตรงนี้ผลออกมาครบห้าไหม
|
|
|
|
|
Date :
2012-03-30 23:04:46 |
By :
ikikkok |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คุณ mr.win ขอบคุณที่ให้แน่ทางนะครับ แต่ผม งง ครับ
.............................................................................................................
คุณ PlaKriM เหมือนเดิมคับไม่ได้
ไม่ครบจนปัญญามากคับ โดนเจ้านายบังคับทำอะคับ เว็บขายของ T T
|
|
|
|
|
Date :
2012-03-31 15:45:51 |
By :
boybekuru |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$sess_id มีค่าเท่าไหร่ครับ
|
|
|
|
|
Date :
2012-03-31 17:13:26 |
By :
Dragons_first |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
echo count($sess_id);
มีค่า ?
|
|
|
|
|
Date :
2012-03-31 17:14:49 |
By :
webmaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
นี้คือผลที่ได้จากการ echo $sql3; ......................................................................................
insert into tb_order_detail values('21','3','test','2','10') insert into tb_order_detail values('21','4','test','1','12') 2
ok
นี้คือผลที่ได้จากการ echo count($sess_id); .......................................................................
น่าจะได้ 2 นะครับ
insert into tb_order_detail values('21','3','test','2','10') insert into tb_order_detail values('21','4','test','1','12') 2
ok
.............................................................................. รูป ...............................................
ผลออกมาเป็นแบบนี้ครับ
|
ประวัติการแก้ไข 2012-03-31 18:41:20
|
|
|
|
Date :
2012-03-31 18:06:17 |
By :
boybekuru |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
นี้คือผลที่ได้จากการ echo $sql3; ......................................................................................
insert into tb_order_detail values('21','3','test','2','10') insert into tb_order_detail values('21','4','test','1','12') 2
ok
นี้คือผลที่ได้จากการ echo count($sess_id); .......................................................................
น่าจะได้ 2 นะครับ
insert into tb_order_detail values('21','3','test','2','10') insert into tb_order_detail values('21','4','test','1','12') 2
ok
.............................................................................. รูป ...............................................
ผลออกมาเป็นแบบนี้ครับ
|
ประวัติการแก้ไข 2012-03-31 18:43:00
|
|
|
|
Date :
2012-03-31 18:09:16 |
By :
boybekuru |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
นี้คือผลที่ได้จากการ echo $sql3; ......................................................................................
insert into tb_order_detail values('21','3','test','2','10') insert into tb_order_detail values('21','4','test','1','12') 2
ok
นี้คือผลที่ได้จากการ echo count($sess_id); .......................................................................
น่าจะได้ 2 นะครับ
insert into tb_order_detail values('21','3','test','2','10') insert into tb_order_detail values('21','4','test','1','12') 2
ok
.............................................................................. รูป ...............................................
ผลออกมาเป็นแบบนี้ครับ
|
ประวัติการแก้ไข 2012-03-31 18:43:48
|
|
|
|
Date :
2012-03-31 18:24:25 |
By :
boybekuru |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
นี้คือผลที่ได้จากการ echo $sql3; ......................................................................................
insert into tb_order_detail values('21','3','test','2','10') insert into tb_order_detail values('21','4','test','1','12') 2
ok
นี้คือผลที่ได้จากการ echo count($sess_id); .......................................................................
น่าจะได้ 2 นะครับ
insert into tb_order_detail values('21','3','test','2','10') insert into tb_order_detail values('21','4','test','1','12') 2
ok
.............................................................................. รูป ...............................................
ผลออกมาเป็นแบบนี้ครับ
|
ประวัติการแก้ไข 2012-03-31 18:44:24
|
|
|
|
Date :
2012-03-31 18:27:01 |
By :
boybekuru |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(T,,,,,,,T)" ช่วยด้วยจร้าาาาาา
|
|
|
|
|
Date :
2012-03-31 18:52:23 |
By :
boybekuru |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 01
|