传递隐藏价值的PHP

时间:2015-09-16 10:49:09

标签: php html

HTML页面

<form name='form' action='procces.php' method='POST'>
<input name='filename' type='hidden' value='myfile.rar'/>
<input name='filesize' type='hidden' value='23MB'/>
<input name='id' type='hidden' value='1.1.1.1'/>
<input type='submit' value='Send'/>

procces.php

<?php
$filename = $_POST['filename'];
$filesize = $_POST['filesize'];
$id = $_POST['id'];

echo "<form name='form' action=procces.php' method='POST'>
<input name='filename' type='hidden' value='".$filename."'/>
<input name='filesize' type='hidden' value='".$filesize."'/>
<input name='id' type='hidden' value='".$id."'/>
</from>";
?>
  
      
  • 注意:未定义的索引:第2行的C:\ xampp \ htdocs \ learning \ procces.php中的文件名
  •   
  • 注意:未定义的索引:第3行的C:\ xampp \ htdocs \ learning \ procces.php中的文件名
  •   
  • 注意:未定义的索引:第4行的C:\ xampp \ htdocs \ learning \ procces.php中的文件名
  •   

可以帮我解决这个问题吗?感谢..

2 个答案:

答案 0 :(得分:0)

您尝试在发布表单之前访问$_POST ed值。

因此错误。

添加条件,仅在发布表单后获取值。

但是,首先将三个变量初始化为空白。

如果您在以后的脚本中使用它,它们不应显示未定义的变量错误。

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

答案 1 :(得分:0)

您不能只分配变量。您需要检查POST变量是否存在。当页面刚刚加载并且在提交表单时创建它们时它们不存在。

改变这个:

$filename = $_POST['filename'];
$filesize = $_POST['filesize'];
$id = $_POST['id'];

到此:

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