php获取表单数据时出现Undefined index错误

标签: phpUndefined index   时间:2017-10-28
平时用$_post[''],$_get['']获取表单中参数时会出现Notice: Undefined index。字面意思就是未定义的索引,一般情况下是因为程序开发作者判断不严谨导致。一般不会影响程序的运行,具体的解决方法可以参考下文。

当我尝试将内容提交到我的表单时,我收到以下错误消息。我怎么可以修复它?

注意:未定义的索引:文件名D:\ wamp \ www \ update.php在第4行

示例Update.php代码:

<?php

$index = 1;
$filename = $_POST['filename'];

echo $filename;


?>

$ _POST ['filename']来自另一个页面:

<?php
$db = substr($string[0],14) . "_" . substr($string[1],14) . "_db.txt";
?>

<input type="hidden" name="filename" value="<?php echo $db; ?>">

 

修复方法如下。

第一种方法:isset判断

if(isset($_POST['filename'])){
    $filename = $_POST['filename'];
}
if(isset($filename)){ 
    echo $filename;
}

 

第二种方法:屏蔽警告

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

error_reporting = E_ALL & ~E_NOTICE 

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

 

第三种方法:自定义函数

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

通过这个函数进行传递值。

 

第四种方法:@

在出现notice代码之前加上@,@表示这行有错误或是警告不要输出,@username=_post[‘username’]; 

原文地址:http://www.manongjc.com/article/2194.html