• 欢迎访问爱玩吧
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏爱玩吧

【教程】PHP中出现Notice: Undefined index: submit in解决办法(找了好久这个问题)

建站资源 aiwanyule 5年前 (2016-05-09) 439次浏览 已收录 0个评论

PHP中出现Notice: Undefined index: submit in解决办法(找了好久这个问题)

大家在调试程序的时候,很多网上提供的源码都会出现 Undefined variable错误,一般情况下php是不需要定义变量的,但如果服务器什么都报错的,就会

出现错误,所以服务器上都是应该屏蔽这种错误的

PHP默认配置会报这个错误,我的PHP版本是5.2.13,存在这个问题:

做个简单的说明,代码如下:

解决办法,加上这段代码:error_reporting(E_ALL & ~E_NOTICE);

<?php
error_reporting(E_ALL & ~E_NOTICE);
$do=$_GET['do']?$_GET['do']:'1';
require'a.php';?>
<?php

下面为大家加上几个PHP中出现Notice: Undefined index: submit in解决的办法

解决办法有两个:

1: if($_POST[‘submit’]) 加一个判断条件,改为=>

if(isset($_POST[‘submit’]) && $_POST[‘submit’])

2: 在开头加上

error_reporting(E_ALL & ~E_NOTICE); // 这句话表示提示除去 E_NOTICE 之外的所有错误信息

因为post数组是个空的array,而代码中的这种方法适用于的是提交以后。

解决办法二(来源于网络)

学习在初级阶段,所以一直用Wamp的集成包,但是上次自己配置环境后,发现在post提交的时候总是出现Notice: Undefined index: submit in…..这样的报错,我找了很久,总觉得错误不是程序代码的,所以在网上查了查,原来在自己配置的5.3.3的php中php.ini文件配置的安全级别太高的缘故,所以具体办法如下:

这个和你程序没有关系,只是你把php.ini的安全级别调的太高了,这个应该是notice级别的错误(不是错误,因为程序还在运行)

修改一下php.ini,搜索error_reporting,原值为:E_ALL,把它修改成E_ALL & ~E_NOTICE就行了,记得重启apache

在补充几点PHP中出现Notice: Undefined index: submit in的问题和解决的办法

Notice: Undefined variable

这就是将警告在页面上打印出来,虽然这是有利于暴露问题,但实现使用中会存在很多问题。

需要设置显示错误级别,来解决问题。

网络上的通用解决办法是修改php.ini的配置:

解决方法:

1) error_reporting设置:

找到error_reporting = E_ALL

修改为error_reporting = E_ALL & ~E_NOTICE

2) register_globals设置:

找到register_globals = Off

修改为register_globals = On

我发现在php代码中直接使用

error_reporting(E_ALL & ~E_NOTICE);

可以解决这个问题,小技巧记一下,呵呵。

以下是补充:

Notice: Undefined variable: email in D:\PHP5\ENOTE\ADDNOTE.PHP on line 9

Notice: Undefined variable: subject in D:\PHP5\ENOTE\ADDNOTE.PHP on line 9

Notice: Undefined variable: comment in D:\PHP5\ENOTE\ADDNOTE.PHP on line 9

其实以上就是未定义变量,我们就直接判断变量的代码导致。

本来php是不需要定义变量的,但是出现这种情况应该怎么办呢?

只要在C:\WINDOWS找出php.ini的

在php.ini中的302行 error_reporting = E_ALL

修改成

error_reporting = E_ALL & ~E_NOTICE再重启apache2.2就行了

解决方法:修改php.ini

将: error_reporting = E_ALL

修改为:error_reporting = E_ALL & ~E_NOTICE

如果什么错误都不想让显示,直接修改:

display_errors = Off

如果你没有php.ini的修改权限,可在php头部加入

ini_set(“error_reporting”,”E_ALL & ~E_NOTICE”);

即可


爱玩吧 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:【教程】PHP中出现Notice: Undefined index: submit in解决办法(找了好久这个问题)
喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址