|
|
|
อยากให้เช็กสต๊อกสินค้าก่อนตัดสต๊อกออก กำลังงงเรื่องเงื่อนไข for ช่วยแนะนำหน่อย |
|
|
|
|
|
|
|
ก็ต้องดึงข้อมูลออกมาตรวจบอสแหละครับทำได้ขนาดนี้ก็ไม่น่าจะดึงออกมายากนะครับดึงออกมาแล้วใช้ if ตรวจสอบเอารายตัวครับ
|
|
|
|
|
Date :
2014-07-08 09:22:15 |
By :
soghband |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตามความเห็น 1 เลยครับ แต่แนะให้อีกนิด ส่งยอดคงเหลือ ไปหน้าเพจแรกเพื่อตรวจสอบเบื้องต้นก่อนเลยครับ
ใช้ javascript ตรวจสอบเบื่องต้นก่อน ลดภาระ Server ลงไปหน่อย
|
|
|
|
|
Date :
2014-07-08 09:37:57 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองดึงแล้ว แต่ไม่รู้จะใช้ where ยังไงดี คือมันมีโค้ดก่อนหน้านี้ที่ตัดเงิน อยากให้มันเช็กสต๊อกก่อนตัดเงิน
ใช้แล้วก็ดึงไม่ออก คืออยากจะเช็กก่อนบนสุดเลย
|
|
|
|
|
Date :
2014-07-08 17:09:13 |
By :
martza125 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลืมบอกไป โค้ดไม่ได้ทำเองทั้งหมดนะ ดู WORKSOHP มาจากที่อื่นอีกที แต่มันไม่มีระบบสต๊อกมาก็เลยมาทำเพิ่มเอง
แต่ดึงไม่ออก พยายาม SELECT แล้วเปลีย่น where แล้ว
ถ้าดึงก่อน insert ออก แต่ก่อนนี้มันมี ตัดเงินมาก่อน อยากให้เช็กสต๊อกอยู่บนสุดเลย
|
|
|
|
|
Date :
2014-07-08 17:17:36 |
By :
martza125 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code
<?php
session_start();
$formid = isset($_SESSION['formid']) ? $_SESSION['formid'] : "";
if ($formid != $_POST['formid']) {
echo "E00001!! SESSION ERROR RETRY AGAINT.";
} else {
unset($_SESSION['formid']);
if ($_POST) {
require 'connect.php';
for ($i = 0; $i < count($_POST['qty']); $i++) {
$order_detail_quantity = mysql_real_escape_string($_POST['qty'][$i]);
$product_id = mysql_real_escape_string($_POST['product_id'][$i]);
$productcheck = mysql_query("SELECT * FROM products where id = '$product_id'");
$checklow = $productcheck['product_stock'] - $order_detail_quantity;
if ($checklow < 1) {
header('location:index.php?a=order');
mysql_close();
exit();
}
}
$order_fullname = mysql_real_escape_string($_POST['order_fullname']);
$order_address = mysql_real_escape_string($_POST['order_address']);
$order_phone = mysql_real_escape_string($_POST['order_phone']);
$meSql = "INSERT INTO orders (order_date, order_fullname, order_address, order_phone) VALUES (NOW(),'{$order_fullname}','{$order_address}','{$order_phone}') ";
$meQeury = mysql_query($meSql);
if ($meQeury) {
$order_id = mysql_insert_id();
for ($i = 0; $i < count($_POST['qty']); $i++) {
$order_detail_quantity = mysql_real_escape_string($_POST['qty'][$i]);
$order_detail_price = mysql_real_escape_string($_POST['product_price'][$i]);
$product_id = mysql_real_escape_string($_POST['product_id'][$i]);
$lineSql = "INSERT INTO order_details (order_detail_quantity, order_detail_price, product_id, order_id) ";
$lineSql .= "VALUES (";
$lineSql .= "'{$order_detail_quantity}',";
$lineSql .= "'{$order_detail_price}',";
$lineSql .= "'{$product_id}',";
$lineSql .= "'{$order_id}'";
$lineSql .= ") ";
mysql_query($lineSql);
}
mysql_close();
unset($_SESSION['cart']);
unset($_SESSION['qty']);
header('location:index.php?a=order');
}else{
mysql_close();
header('location:index.php?a=orderfail');
}
}
}
?>
โค้ดเต็ม ยังไม่ได้ใส่ตัดเงินกับตัดสต๊อกเข้าไปนะ มีแค่ order กับ order_details
|
|
|
|
|
Date :
2014-07-08 17:43:08 |
By :
martza125 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อ้อได้ละครับ query อย่างเดียวมันไม่ออก ต้อง fetch ด้วย
|
|
|
|
|
Date :
2014-07-09 02:10:48 |
By :
martza125 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
มาอีกทีมึนเลยถามเองตอบเอง
|
|
|
|
|
Date :
2014-07-09 13:40:19 |
By :
soghband |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5555 ผมพลาดเอง พลาดโง่ๆเลย
|
|
|
|
|
Date :
2014-07-09 16:44:28 |
By :
martza125 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 03
|