|
|
|
ผู้ชำนาญบอกที การจะเพิ่มโค๊ด เอาจำนวนวัสดุเดิมลบกับ วัสดุที่เบิกใหม่ ต้องใส่โค๊ดไหน ขอบคุณล่วงหน้าครับ มือใหม่หัดทำ |
|
|
|
|
|
|
|
หน้า save_order
<?
session_start();
mysql_connect("localhost","root","root");
mysql_select_db("mydatabase");
$Total = 0;
$SumTotal = 0;
$strSQL = "
INSERT INTO orders (OrderDate,Name,Address,Tel)
VALUES
('".date("Y-m-d H:i:s")."','".$_POST["txtName"]."','".$_POST["txtAddress"]."','".$_POST["txtTel"]."')
";
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);
?>
Tag : PHP, MySQL
|
|
|
|
|
|
Date :
2013-02-12 18:15:28 |
By :
natt3021 |
View :
870 |
Reply :
10 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ต้องอยู่ใน loop นี่
Code (PHP)
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());
}
ลองทำดูครับ เอา strProductID ไป Select จำนวนขึ้นมา แล้วลบออกตามจำนวนที่เบิกใหม่ จะได้จะนวนล่าสุดหลังจากเบิกไปแล้ว
แล้วจึงเอา จำนวนล่าสุด Update คืนไปยัง strProductID เดิม
|
|
|
|
|
Date :
2013-02-12 18:23:55 |
By :
Krungsri |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
พี่ช่วยทำให้ดูเป็นตัวอย่างได้ไหมครับๆ คร่าวๆ ก็ได้ ผมมือใหม่จริงๆๆ ยัง สับสนยุ
|
|
|
|
|
Date :
2013-02-12 18:30:11 |
By :
natt3021 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่ทราบว่าแบบนี้หรือเปล่าครับ
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)
VALUES
('".date("Y-m-d H:i:s")."','".$_POST["txtName"]."','".$_POST["txtAddress"]."','".$_POST["txtTel"]."')
";
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());
// อัพเดท stock โดยนำจำนวนล่าสุดที่มีอยู่ ลบ ส่วนที่เบิกออกไป
$strUp="UPDATE stock SET Quanlity=Quanlity-'".$_SESSION["strQty"][$i]."' WHERE ProductID='".$_SESSION["strProduct"][$i]."'";
mysql_query($strUP) or die(mysql_error());
}
}
mysql_close();
session_destroy();
header("location:finish_order.php?OrderID=".$strOrderID);
?>
|
ประวัติการแก้ไข 2013-02-12 19:00:51
|
|
|
|
Date :
2013-02-12 18:36:09 |
By :
Ex-[S]i[L]e[N]t |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมลองแบบนี้แล้วไม่ได้ อ่ะครับ ช่วยหน่อยผมทำผิดตรงไหน หรือใส่ค่าไรผิดไป
if($_SESSION["strProductID"][$i] != "")
{
strProductID =""
$strSQL = "
INSERT INTO orders_detail (OrderID,ProductID,Qty)
VALUES
('".$strOrderID."','".$_SESSION["strProductID"][$i]."','".$_SESSION["strQty"][$i]."')
";
mysql_query($strSQL) or die(mysql_error());
// อัพเดท stock โดยนำจำนวนล่าสุดที่มีอยู่ ลบ ส่วนที่เบิกออกไป
$strUp="UPDATE pruduct SET Qty=Qty-'".$_SESSION["strQty"][$i]."."' WHERE ProductID=
'".$_SESSION["strProduct"][$i]."."'";
mysql_query($strUP) or die(mysql_error());
}
|
|
|
|
|
Date :
2013-02-12 18:47:38 |
By :
natt3021 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Parse error: syntax error, unexpected '=' in C:\AppServ\www\test\save_checkout.php on line 23
|
|
|
|
|
Date :
2013-02-12 18:49:55 |
By :
natt3021 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Syntax ผิดเพียบเลยครับ ถ้าคุณใช้ Dream เขียน ถ้า Error จะมี tab สีแดงบอก เขียนช้าๆดีกว่าครับ เอาชัว
Code (PHP)
<?
if($_SESSION["strProductID"][$i] != "")
{
$strProductID ="";
$strSQL = "INSERT INTO orders_detail (OrderID,ProductID,Qty) VALUES('".$strOrderID."','".$_SESSION["strProductID"][$i]."','".$_SESSION["strQty"][$i]."')";
mysql_query($strSQL) or die(mysql_error());
// อัพเดท stock โดยนำจำนวนล่าสุดที่มีอยู่ ลบ ส่วนที่เบิกออกไป
$strUp="UPDATE pruduct SET Qty=Qty-'".$_SESSION["strQty"][$i]."' WHERE ProductID='".$_SESSION["strProduct"][$i]."'";
mysql_query($strUP) or die(mysql_error());
}
?>
|
|
|
|
|
Date :
2013-02-12 18:58:50 |
By :
Ex-[S]i[L]e[N]t |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่ error ไรแล้วครับ แต่ข้อมูลไม่ถูกส่งไปฟอร์ม finish_order.php อ่ะครับ และจำนวนใน ตาราง product ก็ไม่ถูกลบกับจำนวน ที่เบิกด้วยครับ
|
ประวัติการแก้ไข 2013-02-12 19:23:07 2013-02-12 19:24:48
|
|
|
|
Date :
2013-02-12 19:19:26 |
By :
natt3021 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
DB สองคนนี้เหมือนกันหรือเปล่าครับ อธิบายอย่างดี DB ไม่เหมือนกัน งง นะเออ...
|
|
|
|
|
Date :
2013-02-12 21:22:22 |
By :
apisitp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
พี่ช่วยดูให้หน่อยครับ โค๊ดบนสุดเลยครับ ผมต้องใส่โค๊ดอะไร ตรงไหน ให้มันลบ จำนวน เดิม กับจำนวน ที่เบิก ได้
|
|
|
|
|
Date :
2013-02-12 21:57:11 |
By :
natt3021 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ทำไม่ได้สักที ใครพอจะอธิบายง่ายกว่านี้ป่าวครับมือใหม่หัดทำ
|
|
|
|
|
Date :
2013-02-13 08:48:22 |
By :
natt3021 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 03
|