1

当我提交表单时,我的网站上会弹出大量此类警告(我正在使用 $_POST 获取它们)。

Notice: Undefined index: FuelPurch in C:\xampp\htdocs\daniel\ShellySite\controller\php\submit_form.php on line 9

隐藏它们/使它们不显示的最佳方法是什么?如果某些字段没有填写,这对我来说不是问题,我只是不希望它们出现。

我试过这样的东西......

    if(isset($_POST['FuelPurch'])){
        $FuelP=$_POST['FuelPurch'];
    }

但这似乎不起作用...

编辑:没关系,我在不知情的情况下编辑我的网站的移动版本,所以从我的电脑查看它时我没有看到我想要的结果。为了澄清起见,我在那里发布的代码段确实有效。

4

4 回答 4

2

您可以使用 error reporting(E_ALL ^ E_NOTICE)来关闭这些错误。

error_reporting(E_ALL ^ E_NOTICE);

但奇怪的是,isset您提到的方法实际上应该有效并且也更清洁。

也许您$FuleP稍后会使用它,这将是未定义的,因此如果$_POST['FuelPurch']未定义,则会引发相同的错误。在这种情况下尝试:

$FuelP=0; // Suitable default value that will be used if no value is posted
if (isset($_POST['FuelPurch'])) $FuelP=$_POST['FuelPurch'];

$FuelP无论如何都会定义这种方式。

于 2012-10-06T21:51:54.923 回答
1

将以下行放在文件顶部:

error_reporting(E_ALL ^ E_NOTICE);

但是,该isset()方法应该有效,并且表明可以使用它。

于 2012-10-06T21:54:26.600 回答
1

只要写if isset在正确的地方。不要禁用错误报告!如有必要,请向我们展示代码。

于 2012-10-06T21:56:38.957 回答
0

或者在单行语句中,您可以在行首添加“@”

于 2020-08-18T14:23:11.083 回答