Php 程序正在跳过我的if-else语句中的if

Php 程序正在跳过我的if-else语句中的if,php,html,if-statement,Php,Html,If Statement,以下是我的php代码: <?php $amount = $_GET["startingAmount"]; $whichWay = $_GET["whichWay"]; $conversion = $_GET["conversion"]; $step = $_GET["step"]; if (is_numeric($conversion))

以下是我的php代码:

        <?php
            $amount = $_GET["startingAmount"];
            $whichWay = $_GET["whichWay"];
            $conversion = $_GET["conversion"];
            $step = $_GET["step"];
            if (is_numeric($conversion)) 
            {
                if ($whichWay === "1") 
                {
                    echo "<table>";
                        echo "<tr><th>USD</th><th>Canadian</th></tr>";
                        for ($i = 0; $i <= 10; $i++) 
                        {                        
                            $outputValue = $amount * $conversion;
                            echo "<tr><td>$amount</td><td>$outputValue</td></tr>";
                            $amount = $amount+$step;
                        }
                    echo "</table>";
                } 
                else
                {
                    echo "<table>";
                        echo "<tr><th>Canadian</th><th>USD</th></tr>";
                        for ($i = 0; $i <= 10; $i++) 
                        {                        
                            $outputValue = $amount * $conversion;
                            echo "<tr><td>$amount</td><td>$outputValue</td></tr>";
                            $amount = $amount+$step;
                        }
                    echo "</table>";
                }
            }
            else 
            {
                    echo "<p>You did not input a numeric value for both the amount you wanted to convert and for the conversion rate.<br>Please go back and do it again</p>";
            }
        ?>

以下是发送信息的html表单:

<body>
        <h1>USD/Canadian Money Conversion Site</h1>
        <div>
            <form method="get" action="output.php">            
                Starting Amount: 
                    <select name="startingAmount" size="1">
                        <option name="1">1</option>
                        <option name="10">10</option>
                        <option name="20">20</option>
                    </select><br> 
                Conversion type:
                    <select name="whichWay" size="1">
                        <option name="1">USD to Canadian</option>
                        <option name="2">Canadian to USD</option>
                    </select><br>  
                Conversion Rate: <input type="text" name="conversion" required><br>
                Step:
                    <select name="step" size="1">
                        <option name="1">1</option>
                        <option name="2">2</option>
                        <option name="3">3</option>
                        <option name="4">4</option>
                    </select><br> 
                <input type="submit">
            </form>
        </div>
    </body>

美元/加拿大货币兑换网站
起始金额:
1.
10
20

转换类型: 美元对加拿大 加币兑美元
转换率:
步骤: 1. 2. 3. 4.
由于某些原因,如果用户选择USD到Canadan或反之亦然,php不识别whichWay的值,只运行else语句。 其他一切都很好。程序可以运行else语句,其余变量工作正常。 任何帮助都将不胜感激。

更改为
,并对所有
更改
,对所有
更改
并对所有
您在HTML代码中有“名称”,但没有“值”

在“选择”中,在每个选项中,您不应该使用“name='1'”,而应该使用“value='1'”,等等

在HTML代码中使用“name”,而不是“value”

在“选择”中,在每个选项中,您应该在HTML中使用“value='1'”等,而不是“name='1'”,不要使用
name
属性,它们使用
value
属性

你的HTML应该改变以反映这一点

<form method="get" action="output.php">            
    Starting Amount: 
        <select name="startingAmount" size="1">
            <option value="1">1</option>
            <option value="10">10</option>
            <option value="20">20</option>
        </select><br> 
    Conversion type:
        <select name="whichWay" size="1">
            <option value="1">USD to Canadian</option>
            <option value="2">Canadian to USD</option>
        </select><br>  
    Conversion Rate: <input type="text" name="conversion" required><br>
    Step:
        <select name="step" size="1">
            <option value="1">1</option>
            <option value="2">2</option>
            <option value="3">3</option>
            <option value="4">4</option>
        </select><br> 
    <input type="submit">
</form>
在HTML中,不使用
名称
属性,而是使用
属性

你的HTML应该改变以反映这一点

<form method="get" action="output.php">            
    Starting Amount: 
        <select name="startingAmount" size="1">
            <option value="1">1</option>
            <option value="10">10</option>
            <option value="20">20</option>
        </select><br> 
    Conversion type:
        <select name="whichWay" size="1">
            <option value="1">USD to Canadian</option>
            <option value="2">Canadian to USD</option>
        </select><br>  
    Conversion Rate: <input type="text" name="conversion" required><br>
    Step:
        <select name="step" size="1">
            <option value="1">1</option>
            <option value="2">2</option>
            <option value="3">3</option>
            <option value="4">4</option>
        </select><br> 
    <input type="submit">
</form>