同样的代码,在本地测试成功,但是上传到服务器却不能上传
上传的目录没有搞错
服务器不知是什么系统。我把上传文件的错误信息显示出来看了一下
echo $_FILES['img']['error'];结果是6 
我查看了一下PHP手册,6是UPLOAD_ERR_NO_TMP_DIR  其值为 6,找不到临时文件夹。PHP 4.3.10 和 PHP 5.0.3 引进。
这下如何是好??

解决方案 »

  1.   

    1. 查看php.ini的临时文件存放路径2. 在查看该目录下是否有上传有文件
    遇到这种情况多数你是写错路径 , 例如 $dir = '../../upfile';  应该改成 $dir = ROOT_PATH.'/upfile';ROOT_PATH是一个常量, 它定义了网站根目录路径, 如入口文件里写 define('ROOT_PATH',dirname(__FILE__));
      

  2.   

    同志,服务器上的临时文件存放路径怎么查看??
    不是本地的啊我试了一下
    move_uploaded_file($tmp,ROOT_PATH.'/upload/'.$fname)
    在我本地一样能上传成功
    到服务器上还是一样不行
    根本就不是我定义的目录的问题第一贴中我已经写得很清楚了,文件上传的错误信息明显是6,系统的临时文件夹不对,或没有权限
      

  3.   

    自己的服务器,格局情况修改php.ini中的
    ;;;;;;;;;;;;;;;;
    ; File Uploads ;
    ;;;;;;;;;;;;;;;;; Whether to allow HTTP file uploads.
    file_uploads = On; Temporary directory for HTTP uploaded files (will use system default if not
    ; specified).
    ;upload_tmp_dir =; Maximum allowed size for uploaded files.
    upload_max_filesize = 2M人家的服务器,就请人家改吧。破费点恐怕是难免的