$dir = $_SERVER['DOCUMENT_ROOT']."/uploads/";
               //上传的文件重命名
$filename = $_FILES[$myfile]['name'];
//$filename = mb_convert_encoding($_FILES[$myfile]['name'],"UTF-8","GBK");
//$filename = iconv("gb2312","UTF-8",$_FILES[$myfile]['name']);
//echo $filename;die;
//上传文件的函数move_uploaded_file(文件临时的目录,文件加载的目录)
if(move_uploaded_file($_FILES[$myfile]['tmp_name'],$dir.$filename)){
//解压上传文件
                         dp_unzipfile($filename,$path);
//echo "文件上传成功";
}else{
echo "上传文件失败";
}

解决方案 »

  1.   

    部分代码如上,现在问题是上传的压缩包名称用中文时就会出现这样的错误
    Warning: move_uploaded_file(D:/WebService/doc.juren9.com/uploads/房间阿斯顿.zip) [function.move-uploaded-file]: failed to open stream: Invalid argument in D:\WebService\doc.juren9.com\upload.php on line 61Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move 'C:\Windows\Temp\phpD29B.tmp' to 'D:/WebService/doc.juren9.com/uploads/房间阿斯顿.zip' in D:\WebService\doc.juren9.com\upload.php on line 61
    上传文件失败
    实在找不出原因了,求大神指教
      

  2.   


    windows下的路径要这样:
    D:\\WebService\\doc.juren9.com\\uploads\\房间阿斯顿.zipLinux:
    # /WebService/doc.juren9.com/uploads/房间阿斯顿.zip.gz
      

  3.   

    lz呀,那$filename换着用就成了!是吧!
      

  4.   

    中文可以的,把$_FILES[$myfile]打印出来看看
      

  5.   

    这是我正在做的项目里的上传图片的文件,伱拿去用吧!!/**
    * 功能:
    *   上传图片
    * 参数说明:
    *   $imgpath:    FILE变量
    * 返回值:
    *   1:$imgpath   上传图片成功后的完整图片路径
    *   2:false      上传图片失败
    *   2:false      上传图片失败失败
    * 版本:
    *   v1.0 07年8月5日作第1次修改,
    */ 
     
    function upload_image($imgpath){
           
        $name=$imgpath["name"];
        $tmp_name=$imgpath["tmp_name"];
        $type=$imgpath["type"];
        $size=$imgpath["size"];
        $uploadfile = "../index/upload_image/".$imgpath['name'];   //time()."_".   上传的位置
           
        $maxsize=500*1024;                                           //最大允许上许文件大小
        if($name==""){                                             //文件名为空
             echo"<script>alert('请先选择要上传的图片文件!'); 
             window.history.back();</script>";
        }

        if($size>$maxsize){                                       //超过规定大小
         
            echo"<script>alert('上传文件大小不能超过500K! ');window.history.back();</script>";
            exit;
        }
         
        if(move_uploaded_file($tmp_name,$uploadfile))
             return $uploadfile;
        else if (copy($tmp_name,$uploadfile))
            return $uploadfile;
        else
            return false;    
    }
    //upload_image函数部分 在伱需要上传图片的页面调用这个函数 
    //如果不是一个页面 别忘记在那个页面包含这个文件
      
      $photo=$_FILES['photo'];
      upload_image($photo);
    ?>