我有这段代码来获取数据:
$resultsTicket = $mysqli->query("SELECT * FROM orders_history
WHERE customer_name = '$member_name'
AND order_method = 'EStock'
ORDER BY id ASC");
结果如下:
订单历史记录
----------------------------
unique_random quantity
----------------------------
12C3EDsE34e 5
sad234sadsa 7
从上面的结果来看,在查看页面中,用户将选择他们想要选择的数量。例如,在第一行中:他们从 5 个数量中选择 3 个。提交时,数据将发布到另一个表:
claim_history
----------------------------
unique_random claim
----------------------------
12C3EDsE34e 3
sad234sadsa 2
我现在的问题是如何自动更新第一个表(orders_history)中的数量。
订单历史记录
----------------------------
unique_random quantity
----------------------------
12C3EDsE34e 2
sad234sadsa 5
我已经试过了,但是好像不行:
<?php
$customer_email=$member_email;
$resultsTicket = $mysqli->query("SELECT * FROM orders_history
WHERE customer_name = '$member_name'
AND order_method = 'EStock'
ORDER BY id ASC");
$mysqli->query ("UPDATE orders_history
LEFT JOIN estockClaims on estockClaims.transaction_id = orders_history.transaction_id
SET orders_history.quantity = orders_history.quantity - estockClaims.quantity;
");
if ($resultsTicket > 0) {
$i = 0;
$random = substr(str_shuffle(abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ),0, 1) . substr(str_shuffle(aBcEeFgHiJkLmNoPqRstUvWxYz0123456789),0, 6);
while($obj = $resultsTicket->fetch_object()) {
最佳答案
您可以在 mysql 中使用更新触发器:http://dev.mysql.com/doc/refman/5.6/en/trigger-syntax.html
- 通过转义变量来避免 sql 注入(inject)。
关于php - 选择数据时自动更新数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26969455/