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.ini中文版(1)
Oct 09 PHP
解析PHP高效率写法(详解原因)
Jun 20 PHP
php打开远程文件的方法和风险及解决方法
Nov 12 PHP
php防止站外远程提交表单的方法
Oct 20 PHP
PHP+MySQL插入操作实例
Jan 21 PHP
php对象在内存中的存在形式分析
Feb 03 PHP
Laravel框架中实现使用阿里云ACE缓存服务
Feb 10 PHP
百度地图经纬度转换到腾讯地图/Google 对应的经纬度
Aug 28 PHP
php发送http请求的常用方法分析
Nov 08 PHP
CentOS系统中PHP安装扩展的方式汇总
Apr 09 PHP
php如何利用pecl安装mongodb扩展详解
Jan 09 PHP
PHP字符串中抽取子串操作实例分析
Jun 22 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
mysql建立外键
2006/11/25 PHP
php XPath对XML文件查找及修改实现代码
2011/07/27 PHP
PHP连接sql server 2005环境配置及问题解决
2014/08/08 PHP
Laravel使用swoole实现websocket主动消息推送的方法介绍
2019/10/20 PHP
Nigma vs Liquid BO3 第一场2.13
2021/03/10 DOTA
浅谈Javascript嵌套函数及闭包
2010/11/09 Javascript
Javascript 自适应高度的Tab选项卡
2011/04/05 Javascript
ExtJS中文乱码之GBK格式编码解决方案及代码
2013/01/20 Javascript
jquery 文本上下无缝滚动,鼠标放上去就停止 小例子
2013/06/05 Javascript
自定义的一个简单时尚js下拉选择框
2013/11/20 Javascript
Javascript 实现复制(Copy)动作方法大全
2014/06/20 Javascript
jQuery+css实现百度百科的页面导航效果
2014/12/16 Javascript
jQuery选择器之基本选择器与层次选择器
2015/03/03 Javascript
jQuery事件绑定on()、bind()与delegate() 方法详解
2015/06/03 Javascript
简单实现vue中的依赖收集与响应的方法
2019/02/18 Javascript
vue列表单项展开收缩功能之this.$refs的详解
2019/05/05 Javascript
Vue.extend 编程式插入组件的实现
2019/11/18 Javascript
jQuery 常用特效实例小结【显示与隐藏、淡入淡出、滑动、动画等】
2020/05/19 jQuery
[01:08:29]DOTA2-DPC中国联赛定级赛 RNG vs Aster BO3第一场 1月9日
2021/03/11 DOTA
python实现2014火车票查询代码分享
2014/01/10 Python
在Python中使用itertools模块中的组合函数的教程
2015/04/13 Python
Python各类图像库的图片读写方式总结(推荐)
2018/02/23 Python
对Python字符串中的换行符和制表符介绍
2018/05/03 Python
python模块和包的应用BASE_PATH使用解析
2019/12/14 Python
python保存log日志,实现用log日志画图
2019/12/24 Python
基于python3实现倒叙字符串
2020/02/18 Python
Python中常用的高阶函数实例详解
2020/02/21 Python
python 动态渲染 mysql 配置文件的示例
2020/11/20 Python
HTML5 对各个标签的定义与规定:body的介绍
2012/06/21 HTML / CSS
美国领先的汽车轮胎和轮毂供应商:TireBuyer
2016/07/21 全球购物
Qoo10马来西亚:全球时尚和引领潮流的购物市场
2016/08/25 全球购物
瑞士领先的网上超市:LeShop.ch
2018/11/14 全球购物
环境保护与污染治理求职信
2014/07/16 职场文书
七年级之开学家长寄语35句
2019/09/05 职场文书
golang goroutine顺序输出方式
2021/04/29 Golang
只用50行Python代码爬取网络美女高清图片
2021/06/02 Python