|
|
|
สอบถาม การตัดสตอค อัพเดต ใน Database รบกวนขอคำแนะนำด้วยครับ php javascript |
|
|
|
|
|
|
|
สร้างตารางเบิกสินค้า คล้ายๆการสั่งซื้อของ สามาถเพิ่ม-ลบได้ จนกว่าจะยืนยันการเบิก เช่น รหัสผู้เบิก รหัสสินค้า จำนวน เป็นต้น
จากนั้นค่อยไม่วนลูป ตัดสต็อค เมื่อกดปุ่มสีฟ้ายืนยัน ก็ส่ง user_id ไป basketprocess.php
Code (PHP)
//basketprocess.php
$sql1 = "select * from basket where user_id=123";
$query1 = mysql_query($sql1,$connect);
if ($query1 === FALSE) {
trigger_error(mysql_error());
}
$numrows = mysql_num_rows($query1);
if ($numrows!=0)
{
//while loop
while ($row = mysql_fetch_assoc($query)){
$Product_Code = $row["Product_Code"];
$CM_Check = $row["CM_Check"];
$sql2 = "update stock set PD_Stock = (PD_Stock - $CM_Check) where Product_Code=$Product_Code";
$query2 = mysql_query($sql2,$connect);
//ถ้าจะเก็บประวัติผู้เบิกก็สร้างตารางเก็บมา Insert Into ลงไป
//$sql3 = "insert into stock_history(user_id,product_code,qty, date) values(?????,????,???/) .....
//$query3 = mysql_query($sql3,$connect);
//ลบข้อมูลในตะกร้าเบิกสินค้า
//$sql4 = "delete basket where product_code=??? and user_id=??? .....
//$query3 = mysql_query($sql3,$connect);
}
|
|
|
|
|
Date :
2017-05-31 10:15:35 |
By :
ccjpn |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
api_servie.php (PHP)
public function updateStock($tableName = '', $dataArr = [], $columnFilter = '') {
if((!empty($tableName)) && (count($dataArr) != 0) && (!empty($columnFilter))) {
foreach($dataArr as $data) {
$status = false;
$updates = "";
$condition = "";
$index = 1;
foreach ($data as $key=>$val) {
switch($key) {
case 'secoundaryTableArr':
$condition .= "$columnFilter = '$val'";
break;
default:
if($index > 1)
$updates .= ", ";
$updates .= "$key = '$val'";
$index++;
break;
}
}
$sqlCmd = "UPDATE $tableName SET $updates WHERE $condition";
$status = $this->db->query($sqlCmd);
}
if($status)
return true;
return false;
}
}
ctrl.php (PHP)
public function updateProductStock($param = []) {
$status = false;
$status = $this->updateStock('product_master_detail', $param, 'product_id','product_stock');
if($status) {
echo "Update Stock Success";
} else {
echo "NOT Update Stock. Please recheck.";
}
}
อันนี้คือค่า ที่ส่งไปครับ (JavaScript)
<script>
$(document).ready(function(){
var factory = new Factory();
var ajaxUrl = 'cmreq_cmchk_payitem_ctrl.php';
var data;
$(document).on('click', '#BtnPayItem', function(e) {
e.preventDefault();
var updateStockProduct = $(this).val() || 0;
data = {
funcName: 'updateProductStock',
param: [
{
product_id: $('form[name="cmreqFormCmcheck"]').data('product-id') || '<?php foreach ($orderedItem as $row) { echo $row["product_id"]; } ?>',
product_stock: updateStockProduct || '<?php foreach ($orderedItem as $row) { echo $row["product_stock"]-$row["item_paycmchk"]; } ?>'
}
]
}
factory.connectDBService.sendData(ajaxUrl, data).done(function(res) {
if(res != undefined) {
console.log(res);
}
});
});
});
</script>
เขียนแบบ MVC บรรนี้ที่จะไปอัพเดต
$status = $this->updateStock('product_master_detail', $param, 'product_id','product_stock');
ลอง echo ออกมาจากหน้าเว็บ วนลูป Stock ได้ คือได้ค่าออกมา ตามรูป แต่จะแยกตรงนี้ยังไงแล้วให้ไป Update
รบกวนขอคำแนะนำด้วยครับ ขอบคุนครับ
|
ประวัติการแก้ไข 2017-05-31 12:43:27
|
|
|
|
Date :
2017-05-31 12:42:31 |
By :
Bunny_ball |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 04
|