无法在一个php页面中动态生成html控件到下一页

时间:2013-03-08 10:53:40

标签: php file-upload

//photoform.php

<html>
<body>
<form action="upload.php" name="phsub" method="post" enctype="multipart/form-data">
<?php
session_start();
$op=$_POST["opcnt"];

if ($op!="Select")
{
    echo "<fieldset>";
    echo "<legend> Open Category </legend>";

    for ($i=1;$i<=$op;$i++)
{
    echo "<input name='ofile$i' id='ofile$i' type='file'/>";
    echo"<br>";
}
    echo "</fieldset>";
}
?>
<input type="submit" name="submit" value="Submit">
</form>
</body>
</html>

upload.php的

<?php 
    $empty = $post = array(); 
    foreach ($_POST as $varname => $varvalue) { 
        if(empty($varvalue)) { 
            $empty[$varname] = $varvalue; 
        } 
        else { 
            $post[$varname] = $varvalue; 
        } 
    } 
    print "<pre>"; 
    if (empty($empty)) { 
        print "None of the POSTed values are empty, posted:\n"; 
        var_dump($post); 
    } 
    else { 
        print "We have " . count($empty) . " empty values\n"; 
        print "Posted:\n"; 
        var_dump($post); 
        print "Empty:\n"; 
        var_dump($empty); 
        exit; 
    }
?>

问题:当我列出所有$ post值时,我只会收到&#34;提交&#34;按钮是静态的。我可以根据条件查看所有生成的文件上传控件。但无法获取upload.php文件中的控件。如果代码中有任何问题,请指点一下。我是PHP的新手。提前感谢您的意见。

谢谢 - Abhik Banerjee

2 个答案:

答案 0 :(得分:0)

photoform.php输出$_POST变量以确认$_POST['opcnt']不是select

此外,如果可以,请添加photoform.php的实际输出html,因为它可能缺少字段和/或字段名称。

此外,

//upload.php

<?php
    var_dump($_POST);
?>

要访问表单POST变量,请使用$_POST

//更新

当您的form提交类型为input的{​​{1}}时,这些被视为特例。这些值将映射到file变量。

有关详细说明,请参阅php docs on php.net

答案 1 :(得分:0)

您可以从中获取文件详细信息      $ _FILES