我初学PHP,有些很简单的东西有点搞不明白。来这里向大家请教下~~
  代码的功能要求为:实现一个上传文件域,通过$_FILES变量输出上传文件的资料。
  可为什么我的代码执行后,$_FILES变量为空的呢?而且在我没有选择上传之前,程序就已经产生了判断,输出了"empty file".这是怎么回事呢?要怎么改呢?谢谢大虾们!!~~
<body> <table width = "500" border = "0" cellspacing = "0" cellpadding = "10">
<!-- kjdfoiwejur -->
<form action = "" method = "post" entype = "multipart/form-data">

    <tr>
<td width = "150" height = "30" align = "right", valign = "middle">Please upload your file:</td>

<td width = "250"><input type = "file" name = "upfile"/></td>

<td width = "100"><input type = "submit" name = "submit" value = "upload"/></td>
</tr>
</form>
</table>
<?php
if (!empty($_FILES)){
echo "OK1";
foreach($_FILES['upfile'] as $name => $value)
echo $name.'='.$value.'<br>';
}
else{
echo "empty file";
}
?>
</body>

解决方案 »

  1.   

    因为你写在一个页面上。没做判断。代码直接执行了php段的程序啊。如果你是post到另外一个页面就不会了。我的意思是html代码和php分开来。。
      

  2.   

    <?php 
    if($_POST['submit']=="upload")
    {if (!empty($_FILES)){ 
    echo "OK1"; 
    foreach($_FILES['upfile'] as $name => $value) 
    echo $name.'='.$value.' <br>'; 

    else{ 
    echo "empty file"; 
    } }?>