在php中,如果一个输入值大于另一个输入值,则返回错误消息

在php中,如果一个输入值大于另一个输入值,则返回错误消息,php,error-handling,Php,Error Handling,我有一个表单,将5个输入值保存到数据库中的清单中。问题是,如果“Value”大于“Buy_Value”,我需要它返回一条错误消息。现在它打印错误消息,但仍然将数据提交到数据库,这对我来说是没有用的。我只是在代码中的错误位置使用了函数吗 if($_SERVER["REQUEST_METHOD"] == "POST"){ if(isset($_POST['ID'])&&isset($_POST['Name'])&&isset($_POST['Inventory_nu

我有一个表单,将5个输入值保存到数据库中的清单中。问题是,如果“Value”大于“Buy_Value”,我需要它返回一条错误消息。现在它打印错误消息,但仍然将数据提交到数据库,这对我来说是没有用的。我只是在代码中的错误位置使用了函数吗

 if($_SERVER["REQUEST_METHOD"] == "POST"){
if(isset($_POST['ID'])&&isset($_POST['Name'])&&isset($_POST['Inventory_number'])
&&isset($_POST['Value'])&&isset($_POST['Buy_Value'])){

            $ID=$_POST['ID']; 
    $Name=$_POST['Name']; 
    $Inventory_number=$_POST['Inventory_number'];
    $Value=$_POST['Value'];
    $Buy_Value=$_POST['Buy_Value'];
    //echo "<p>".$ID." ".$Name." ".$Inventory_number."</p>";
    include('config.php');

    if ($Value > $Buy_Value) {
echo("The 'buy value' must be greater than 'value'");
}
$sql="INSERT INTO $mysql_database.`inventory` 
(`id`, `Name`, `Inv_Nr`, `value`, `buy_value`) 
VALUES ('$ID', '$Name', '$Inventory_number', '$Value', '$Buy_Value')";
$result=mysql_query($sql);
tab($sql);
mysql_close($bd);
    }
 }

     function tab($sql){
if (!mysql_errno())
{
    echo "<br />Data submitted";
}
    else
{
    echo "<br />Error: " . mysql_error();
}
}
 ?>
if($\u服务器[“请求\u方法”]=“发布”){
如果(isset($_POST['ID'])和&isset($_POST['Name'])和&isset($_POST['Inventory\u number']))
&&isset($_POST['Value'])和&isset($_POST['Buy_Value'])){
$ID=$_POST['ID'];
$Name=$_POST['Name'];
$Inventory\u number=$\u POST['Inventory\u number'];
$Value=$_POST['Value'];
$Buy_Value=$_POST['Buy_Value'];
//echo“”$ID.“$Name.”“$Inventory\u number.”

”; 包括('config.php'); 如果($Value>$Buy\u Value){ echo(“购买价值”必须大于“价值”); } $sql=“插入$mysql\u数据库。`inventory` (`id`、`Name`、`Inv\u Nr`、`value`、`buy\u value`) 值(“$ID”、“$Name”、“$Inventory\u number”、“$Value”、“$Buy\u Value”)”; $result=mysql\u查询($sql); 选项卡($sql); mysql_close($bd); } } 函数选项卡($sql){ 如果(!mysql_errno()) { 回显“
提交的数据”; } 其他的 { echo“
错误:“.mysql_Error(); } } ?>
将数据库查询执行放在else部分,如果出现以下情况,则不会执行

  if ($Value > $Buy_Value) {
条件满足

试试这个:

if ($_SERVER["REQUEST_METHOD"] == "POST") {
    if (isset($_POST['ID']) && isset($_POST['Name']) && isset($_POST['Inventory_number'])
        && isset($_POST['Value']) && isset($_POST['Buy_Value'])
    ) {

        $ID = $_POST['ID'];
        $Name = $_POST['Name'];
        $Inventory_number = $_POST['Inventory_number'];
        $Value = $_POST['Value'];
        $Buy_Value = $_POST['Buy_Value'];
        //echo "<p>".$ID." ".$Name." ".$Inventory_number."</p>";
        include('config.php');

        if ($Value > $Buy_Value) {
            echo("The 'buy value' must be greater than 'value'");
        } else {
            $sql = "INSERT INTO $mysql_database.`inventory`
(`id`, `Name`, `Inv_Nr`, `value`, `buy_value`)
VALUES ('$ID', '$Name', '$Inventory_number', '$Value', '$Buy_Value')";
            $result = mysql_query($sql);
            tab($sql);
            mysql_close($bd);
        }
    }
}

function tab($sql)
{
    if (!mysql_errno()) {
        echo "<br />Data submitted";
    } else {
        echo "<br />Error: " . mysql_error();
    }
}
if($\u服务器[“请求\u方法”]=“发布”){
如果(isset($_POST['ID'])和&isset($_POST['Name'])和&isset($_POST['Inventory\u number']))
&&isset($_POST['Value'])和&isset($_POST['Buy_Value']))
) {
$ID=$_POST['ID'];
$Name=$_POST['Name'];
$Inventory\u number=$\u POST['Inventory\u number'];
$Value=$_POST['Value'];
$Buy_Value=$_POST['Buy_Value'];
//echo“”$ID.“$Name.”“$Inventory\u number.”

”; 包括('config.php'); 如果($Value>$Buy\u Value){ echo(“购买价值”必须大于“价值”); }否则{ $sql=“插入$mysql\u数据库。`inventory` (`id`、`Name`、`Inv\u Nr`、`value`、`buy\u value`) 值(“$ID”、“$Name”、“$Inventory\u number”、“$Value”、“$Buy\u Value”)”; $result=mysql\u查询($sql); 选项卡($sql); mysql_close($bd); } } } 函数选项卡($sql) { 如果(!mysql_errno()){ 回显“
提交的数据”; }否则{ echo“
错误:“.mysql_Error(); } }
使用
exit
而不是
echo
来显示以下行

exit("The 'buy value' must be greater than 'value'");