我收到以下错误消息,当我试图将内容提交给我的表格。 我怎么可以固定呢?
通知:未定义指数:文件名中d:\瓦帕\ WWW \ update.php在第4行
例如Update.php代码:
<?php
$index = 1;
$filename = $_POST['filename'];
echo $filename;
?>
和$ _ POST [“名”]来自另一个页面:
<?php
$db = substr($string[0],14) . "_" . substr($string[1],14) . "_db.txt";
?>
<input type="hidden" name="filename" value="<?php echo $db; ?>">
Assuming
仅复制/粘贴相关的代码和您的形式包括<form method="POST">
if(isset($_POST['filename'])){
$filename = $_POST['filename'];
}
if(isset($filename)){
echo $filename;
}
如果_POST
没有设置filename
变量不会无论是在上面的例子。
另一种方法:
$filename = false;
if(isset($_POST['filename'])){
$filename = $_POST['filename'];
}
echo $filename; //guarenteed to be set so isset not needed
在这个例子中的文件名不分的局面被设置_POST
。 这应该证明使用isset
很好。
这里更多信息: http://php.net/manual/en/function.isset.php
if(isset($_POST['form_field_name'])) {
$variable_name = $_POST['form_field_name'];
}
更改$ _ POST到$ _FILES并确保您的加密类型是“多/表单数据”
是您输入字段实际上在形式?
<form method="POST" action="update.php">
<input type="hidden" name="filename" value="test" />
</form>
if(!empty($_POST['filename'])){
$filename = $_POST['filename'];
echo $filename;
}
只是
if(isset($_POST['filename'])){
$filename = $_POST['filename'];
echo $filename;
}
else{
echo "POST filename is not assigned";
}
使用isset
用于此目的
<?php
$index = 1;
if(isset($_POST['filename'])) {
$filename = $_POST['filename'];
echo $filename;
}
?>
使用empty()
以检查它是否可用。 试着用 -
如果主机不存在,这里将产生错误
if(!empty($_GET["host"]))
if($_GET["host"]!="")
请试试这个
error_reporting = E_ALL & ~E_NOTICE
在php.ini
enctype="multipart/form-data"
检查你的加密类型的形式提交前