首页 > 解决方案 > 如果 ab<0,PHP 减去“错误”

问题描述

我正在使用“shop-app”,我想在 ab<0 时得到错误响应,因为如果用户有例如 10 美元而一件商品的价格为 20 美元,他就不能购买它,但在我的应用程序中它看起来:10 -20=-10 这是 php 脚本:

<?php
if($_SERVER['REQUEST_METHOD']=='POST'){

include 'DatabaseConfig.php';

$con = mysqli_connect($HostName,$HostUser,$HostPass,$DatabaseName);

$id = $_POST['UserID'];
$S_cash = $_POST['Cash'];
$S_substract = $_POST['Substract'];



$Sql_Query = "UPDATE user SET cash= '$S_cash' - '$S_substract' WHERE id = $id";

if(mysqli_query($con,$Sql_Query))
{
echo 'Success!';
}
else
if('$S_cash' - '$S_substract' < 0)
///this is what ive tried
{
 echo 'error';
}
}
mysqli_close($con);
?>

标签: php

解决方案


'$S_cash' - '$S_substract'加上单引号,因为那个 php 将它解释为文字 $S_cash - $S_substract

而不是他们代表的数字。

尝试使用双引号,如

"$S_cash" - "$S_substract"

或根本没有引号,如

$S_cash - $S_substract

还可以考虑使用准备好的语句


推荐阅读