未定义的索引:提交

时间:2014-02-06 09:42:38

标签: php forms indexing submit undefined

我已经制作了这个简单的php来检查数字是正数还是负数。它有效但我得到了这个通知:未定义的索引:提交。

<?php
if (!$_POST["submit"])
    {
    ?>
    <body>
        <form action="<?=$_SERVER['PHP_SELF']?>" method="post">
            Enter a number: <input name="number" size="2">
            <input type="submit" name="submit" value="Go">
        </form>
    </body>
    <?php
}
else
{
    $number = $_POST['number'];
    if ($number > 0)
    {
        echo 'You entered a positive number';
    }
    elseif ($number < 0)
    {
        echo 'You entered a negative number';
    }
    else
    {
        echo 'You entered 0';
    }
}
?>

我是新来的,所以如果你可以并且想要:)

5 个答案:

答案 0 :(得分:1)

您应该将第二行替换为:

if (!isset($_POST['submit'])) {

答案 1 :(得分:1)

您的$_POST["submit"]似乎是空的。它会被倒置!并且输出为true,因此您的程序可以正常工作。

但是你永远不会发布任何名称为submit的值,它是按钮的名称。我想你想检查$_POST["number"]是否为空。

if (!empty($_POST["number"])) {
    //your stuff here.

答案 2 :(得分:0)

改变你的状况

if (!isset($_POST["submit"]))

答案 3 :(得分:0)

替换

if (!$_POST["submit"])

if (isset($_GET['submit']))

答案 4 :(得分:0)

替换第二行:

if (!$_POST['submit'])

使用:

if (!isset($_POST['submit']))