PHP/MySQL SET var=var-var
我为我的网站开了一家商店,并让它正常工作,但我意识到它缺乏正确购买商品的能力。从长远来看,你不会走进一家商店,抓取一件商品,买它,再抓取它,买它,再抓取它,等等,为了得到你想要的数量。你一次就把它们都抓起来。我的网站缺少这样的功能。因此,我试图改变代码,采取股票,到目前为止,我没有成功 我尝试了以下方法:PHP/MySQL SET var=var-var,php,mysql,sql,sql-update,prepared-statement,Php,Mysql,Sql,Sql Update,Prepared Statement,我为我的网站开了一家商店,并让它正常工作,但我意识到它缺乏正确购买商品的能力。从长远来看,你不会走进一家商店,抓取一件商品,买它,再抓取它,买它,再抓取它,等等,为了得到你想要的数量。你一次就把它们都抓起来。我的网站缺少这样的功能。因此,我试图改变代码,采取股票,到目前为止,我没有成功 我尝试了以下方法: function takestock($id, $count) { global $mysqli,$db_table_prefix; $stmt = $mysqli->prepare
function takestock($id, $count) {
global $mysqli,$db_table_prefix;
$stmt = $mysqli->prepare("UPDATE ".$db_table_prefix."shop
SET stock = stock - ?
WHERE
id = ?");
$stmt->bind_param("ii", $id, $count);
$result = $stmt->execute();
$stmt->close();
return $result;}
及
及
但我似乎无法从库存中去掉计数 绑定参数的顺序应与您希望在SQL语句中使用参数的顺序相对应。在这里,项目计数应该排在第一位,id排在第二位。即,替换以下行:
$stmt->bind_param("ii", $id, $count);
与:
那我该怎么处理SET stock=stock-?@不懒,是的,确实-只需将其保留为
SET stock=stock-?
谢谢!我马上就把你的答案标为正确。
function takestock($id, $count) {
global $mysqli,$db_table_prefix;
$stmt = $mysqli->prepare("UPDATE ".$db_table_prefix."shop
SET stock = stock - ".$count."
WHERE
id = ?");
$stmt->bind_param("ii", $id, $count);
$result = $stmt->execute();
$stmt->close();
return $result;}
$stmt->bind_param("ii", $id, $count);
$stmt->bind_param("ii", $count, $id);