将$ _POST中给出的字符串与php进行比较

hel*_*dre 4 php post compare

我有一个发送大小东西的表单,我需要查看字符串是什么,以便我可以相应地设置价格.当我尝试这样做时,它说它们不相等,我没有价格.这是我正在使用的代码:

if ($_POST['sizes'] == "Small ($30)"){$total = "30";}
if ($_POST['sizes'] == "Medium ($40)"){$total = "40";}
if ($_POST['sizes'] == "Large ($50)"){$total = "50";}
else {$total = $_POST['price'];}
Run Code Online (Sandbox Code Playgroud)

我在这做错了什么?我可以回显$ _POST ['sizes'],它只给我一个这样的东西.

Pet*_*ley 8

什么保罗·迪克森说是正确的.可能我还建议使用switch语句而不是那些笨重的if语句(实际上有一个逻辑错误,我可能会添加 - 当不是时$total总是相等)$_POST['price']'Large ($50)'

<?php

switch ( $_POST['sizes'] )
{
    case 'Small ($30)' :
        $total = 30;
        break;
    case 'Medium ($40)' :
        $total = 40;
        break;
    case 'Large ($50)' :
        $total = 50;
        break;
    default:
        $total = $_POST['price'];
        break;
}

?>
Run Code Online (Sandbox Code Playgroud)