php提示undefined index的几种解决方法


Posted in PHP onMay 21, 2012

平时用$_post[''],$_get['']获取表单中参数时会出现Notice: Undefined index: --------;php提示undefined index的几种解决方法

我们经常接收表单POST过来的数据时报Undefined index错误,如下: $act=$_POST['action'];
用以上代码总是提示
Notice: Undefined index: act in D:\test\post.php on line 20
另外,有时还会出现
Notice: Undefined variable: Submit ...... 等一些这样的提示

出现上面这些是 PHP 的提示而非报错,PHP 本身不需要事先声明变量即可直接使用,但是对未声明变量会有提示。一般作为正式的网站会把提示关掉的,甚至连错误信息也被关掉。

解决方法:

方法1:服务器配置修改
修改 php.ini 中的 error配置下错误显示方式:将error_reporting = E_ALL 修改为

error_reporting = E_ALL & ~E_NOTICE

修改后重启下APCHE服务器,方可生效。

方法2:对变量进行初始化。

方法3:做判断isset($_post['']),empty($_post['']) if --else

方法4:在出现notice代码之前加上@,@表示这行有错误或是警告不要输出,@$username=$_post['username'];
在变量前面 加上一个 @ ,如 if (@$_GET['action']=='save') { ...

方法5:最后一种很实用,是别人写的一个函数,通过这个函数进行传递值。

定义一个函数:

function _get($str){ 
$val = !empty($_GET[$str]) ? $_GET[$str] : null; 
return $val; 
}

然后在用的时候,直接用 _get('str') 代替 $_GET['str'] 就行啦~

[PHP-Core-Error]

error_reporting = E_ALL & ~E_NOTICE
; 错误报告级别是位字段的叠加,推荐使用 E_ALL | E_STRICT
; 1 E_ERROR 致命的运行时错误
; 2 E_WARNING 运行时警告(非致命性错误)
; 4 E_PARSE 编译时解析错误
; 8 E_NOTICE 运行时提醒(经常是bug,也可能是有意的)
; 16 E_CORE_ERROR PHP启动时初始化过程中的致命错误
; 32 E_CORE_WARNING PHP启动时初始化过程中的警告(非致命性错)
; 64 E_COMPILE_ERROR 编译时致命性错
; 128 E_COMPILE_WARNING 编译时警告(非致命性错)
; 256 E_USER_ERROR 用户自定义的致命错误
; 512 E_USER_WARNING 用户自定义的警告(非致命性错误)
; 1024 E_USER_NOTICE 用户自定义的提醒(经常是bug,也可能是有意的)
; 2048 E_STRICT 编码标准化警告(建议如何修改以向前兼容)
; 4096 E_RECOVERABLE_ERROR 接近致命的运行时错误,若未被捕获则视同E_ERROR
; 6143 E_ALL 除E_STRICT外的所有错误(PHP6中为8191,即包含所有)

PHP 相关文章推荐
php重定向的三种方法分享
Feb 22 PHP
深入php之规范编程命名小结
May 15 PHP
php使用curl和正则表达式抓取网页数据示例
Apr 13 PHP
PHP中UNIX时间戳和日期间的转换与计算实例
Nov 19 PHP
ThinkPHP中I(),U(),$this->post()等函数用法
Nov 22 PHP
php中ob函数缓冲机制深入理解
Aug 03 PHP
thinkphp如何获取客户端IP
Nov 03 PHP
thinkphp框架实现数据添加和显示功能
Jun 29 PHP
PHP获取表单数据与HTML嵌入PHP脚本的实现
Feb 09 PHP
yii2利用自带UploadedFile实现上传图片的示例
Feb 16 PHP
在php的yii2框架中整合hbase库的方法
Sep 20 PHP
PHP自动生成缩略图函数的源码示例
Mar 18 PHP
openflashchart 2.0 简单案例php版
May 21 #PHP
PHP中去掉字符串首尾空格的方法
May 19 #PHP
有关PHP中MVC的开发经验分享
May 17 #PHP
php的array_multisort()使用方法介绍
May 16 #PHP
一个显示某段时间内每个月的方法 返回由这些月份组成的数组
May 16 #PHP
php array的学习笔记
May 16 #PHP
php文件操作实例代码
May 10 #PHP
You might like
PHP简洁函数小结
2011/08/12 PHP
AJAX的跨域访问-两种有效的解决方法介绍
2013/06/22 PHP
php中让上传的文件大小在上传前就受限制的两种解决方法
2013/06/24 PHP
PHP处理JSON字符串key缺少双引号的解决方法
2014/09/16 PHP
crontab无法执行php的解决方法
2016/01/25 PHP
Laravel框架分页实现方法分析
2018/06/12 PHP
用javascript控制iframe滚动的代码
2007/04/10 Javascript
兼容ie、firefox的图片自动缩放的css跟js代码分享
2012/01/21 Javascript
浅谈Javascript鼠标和滚轮事件
2012/06/27 Javascript
JavaScript常用验证函数实例汇总
2014/11/25 Javascript
纯javascript响应式树形菜单效果
2015/11/10 Javascript
JavaScript中运算符规则和隐式类型转换示例详解
2017/09/06 Javascript
node通过express搭建自己的服务器
2017/09/30 Javascript
解决vue+webpack打包路径的问题
2018/03/06 Javascript
微信小程序实现人脸识别
2018/05/25 Javascript
基于jQuery的时间戳与日期间的转化
2019/06/21 jQuery
Javascript实现html转pdf高清版(提高分辨率)
2020/02/19 Javascript
[02:35]DOTA2超级联赛专访XB 难忘一年九冠称王
2013/06/20 DOTA
[58:15]2018DOTA2亚洲邀请赛 4.1 小组赛 A组 NB vs Liquid
2018/04/02 DOTA
python requests post多层字典的方法
2018/12/27 Python
Python中numpy模块常见用法demo实例小结
2019/03/16 Python
pandas 如何分割字符的实现方法
2019/07/29 Python
Spark处理数据排序问题如何避免OOM
2020/05/21 Python
python 判断一组数据是否符合正态分布
2020/09/23 Python
CSS3制作文字半透明倒影效果的两种实现方式
2014/08/08 HTML / CSS
详解css3中 text-fill-color属性
2019/07/08 HTML / CSS
自动化专业本科毕业生求职信
2013/10/20 职场文书
联谊活动策划书
2014/01/26 职场文书
医药销售求职信范文
2014/02/01 职场文书
元旦晚会策划方案
2014/02/18 职场文书
学习雷锋演讲稿
2014/05/10 职场文书
组织鉴定材料
2014/06/02 职场文书
新教师岗前培训方案
2014/06/05 职场文书
公司年底活动方案
2014/08/17 职场文书
干部作风整顿个人剖析材料
2014/10/06 职场文书
工程主管竞聘书
2015/09/15 职场文书