php Notice: Undefined index 错误提示解决方法

yipeiwu_com5年前PHP代码库
第一种方法:如果不影响程序的正常执行,可以采用屏蔽的方法

可以在代码的第一行 加上
error_reporting(E_ALL ^ E_NOTICE);

关闭掉 NOTICE错误的警告

第二种方法:定位到具体的行,根据提示解决。
例如elseif ($_POST['istrue'] == 'ok'),如上代码,没有提交istrue这个,所以肯定是有问题的。

可以用如下代码解决
上面先判断
复制代码 代码如下:

if(array_key_exists( 'istrue',$_POST))
{
if($_POST[ 'istrue'])
{
$istrue=$_POST[ 'istrue'];
}
}else{
$istrue='';
}

后面的判断可以如下
复制代码 代码如下:

elseif ($istrue == 'ok')

就可以避免此类错误,大家可以参考一些程序的系统是如果做的。
具体的可以参考dedecms活phpcms的代码
复制代码 代码如下:

//检查和注册外部提交的变量
foreach($_REQUEST as $_k=>$_v)
{
if( strlen($_k)>0 && eregi('^(cfg_|GLOBALS)',$_k) )
{
exit('Request var not allow!');
}
}
function _RunMagicQuotes(&$svar)
{
if(!get_magic_quotes_gpc())
{
if( is_array($svar) )
{
foreach($svar as $_k => $_v) $svar[$_k] = _RunMagicQuotes($_v);
}
else
{
$svar = addslashes($svar);
}
}
return $svar;
}

foreach(Array('_GET','_POST','_COOKIE') as $_request)
{
foreach($$_request as $_k => $_v) ${$_k} = _RunMagicQuotes($_v);
}
if(empty($istrue))
{
$istrue = '';
}

相关文章

php的$_FILES的临时储存文件与回收机制实测过程

php的$_FILES的临时储存文件与回收机制实测过程

我想有跟我一样的想法的人会这样处理的: 上传的文件只是想临时使用,不需要把原文件保存备用,如resize之类的操作,且这些后期的操作会出现在第二轮从客户端请求时才操作的,如先上传,把上传...

浅析php插件 Simple HTML DOM 用DOM方式处理HTML

simple_html_dom插件用dom处理html文件的利器使用:加载simple_html_dom.php文件复制代码 代码如下:require_once 'simple_html...

php下正则来匹配dede模板标签的代码

html代码 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://w...

在同一窗体中使用PHP来处理多个提交任务

为什么使用多个提交任务? 在我回答这个问题之前,先让我回答一个很显然的问题:既然许多窗体更适合单一的提交按钮,为什么有时人们需要的是两个(或者是更多)的提交按钮? 对这一问题最好的解释方...

一道关于php变量引用的面试题

php面试题题目如下: 复制代码 代码如下: <?php $a = 1; $x =&$a; $b=$a++; ?> 问: $b和$x的值分别是什么? php面试题的答案如下...