http://www.phpe.net/manual/features.file-upload.php
看这里吧,很详细的。

解决方案 »

  1.   

    给你一段最简单的代码。
    ===============================<form action="" method="post" enctype="multipart/form-data" name="form1">
      <input type="file" name="file">
      <input type="submit" name="Submit" value="提交">
    </form>
    <?php
    if($_FILES){
    if(copy($_FILES["file"]["tmp_name"], $_FILES["file"]["name"])){
    echo "上传成功!";
    }else{
    echo "上传失败!";
    }
    }
    ?>
      

  2.   

    看服务器PHP的版本和php.ini的配置了。
    看楼主的写法,是把register_globals设为了On.
    感觉楼主应该是表单的form写错了值.
    <form action="" name="myform" method="post" enctype="multipart/form-data" >
      

  3.   

    <form enctype="multipart/form-data" action="_URL_" method="POST">
    <input type="hidden" name="MAX_FILE_SIZE" value="30000">
    Send this file: <input name="userfile" type="file">
    <input type="submit" value="Send File">
    </form>
    ----------
    注意enctype="multipart/form-data"不要忘了<?php
    // 在 4.1.0 以前的 PHP 中,需要用 $HTTP_POST_FILES 代替 $_FILES。
    // 在 4.0.3 以前的 PHP 中,需要用 copy() 和 is_uploaded_file() 来代替 move_uploaded_file()。$uploaddir = '/var/www/uploads/';
    $uploadfile = $uploaddir. $_FILES['userfile']['name'];
    print "<pre>";
    if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploaddir . $_FILES['userfile']['name'])) {
        print "File is valid, and was successfully uploaded.  Here's some more debugging info:\n";
        print_r($_FILES);
    } else {
        print "Possible file upload attack!  Here's some debugging info:\n";
        print_r($_FILES);
    }
    print "</pre>";
    ?>