深圳全飞鸿

标题: 关于PHP的upload-file上传文件 [打印本页]

作者: zhgc    时间: 2023-6-3 04:03
标题: 关于PHP的upload-file上传文件
再利用file-upload上传图片的时候发现,报错在$_FILES["file"]["error"] 中,对应的解释:
  1. $_FILES['file']['error']有以下几种类型:

  2. UPLOAD_ERR_OK = 0
  3. 其值为 0,没有错误发生,文件上传成功。
  4.   
  5. UPLOAD_ERR_INI_SIZE =1
  6. 其值为 1,上传的文件超过了 php.ini 中 upload_max_filesize选项限制的值。
  7.   
  8. UPLOAD_ERR_FORM_SIZE = 2
  9. 其值为 2,上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。
  10.   
  11. UPLOAD_ERR_PARTIAL = 3
  12. 其值为 3,文件只有部分被上传。
  13.   
  14. UPLOAD_ERR_NO_FILE = 4
  15. 其值为 4,没有文件被上传。
  16.   
  17. UPLOAD_ERR_NO_TMP_DIR = 6
  18. 其值为 6,找不到临时文件夹。PHP 4.3.10 和 PHP 5.0.3 引进。
  19.   
  20. UPLOAD_ERR_CANT_WRITE = 7
  21. 其值为 7,文件写入失败。PHP 5.1.0 引进。
复制代码







作者: zhgc    时间: 2023-6-3 04:05
因为看到错误提示是1:所以首先改了php.ini
; Maximum allowed size for uploaded files.
; http://php.net/upload-max-filesize
upload_max_filesize = 20M


upload不报错,但上传任然没有文件

作者: zhgc    时间: 2023-6-3 04:07
发现目标文件名为空,做了如下修改:
  1.   //fix by syant  20230601   upload_max_filesize = 20M
  2.                 //$path=iconv('UTF-8', 'GBK', $path); //fix by syant
  3.                 $encode = mb_detect_encoding($path, array("ASCII",'UTF-8',"GB2312","GBK",'BIG5'));
  4.                   if($encode == 'GB2312'){
  5.                         //
  6.                   } else if($encode == 'GBK'){
  7.                         //
  8.                   } else{
  9.                         $path= mb_convert_encoding($path, 'GBK', $encode);
  10.                   }
复制代码



作者: zhgc    时间: 2023-6-3 04:09
有目录文件名后, 还是不成功,发现文件名里有问号,
于是做了修改(注意放在最靠近文件复制函数的地方)
  1.   //fix by syant 20230601  
  2.                 for ($i = 0; $i <= 31; ++$i) {
  3.                         $path = str_replace(chr($i), "", $path);
  4.                 }
  5.                 $path = str_replace(chr(63), " ", $path);
  6.                 //
  7.         if(!move_uploaded_file($ex['tmp_name'],$path)){
  8.                         file_put_contents("c:/fileuploaderror.txt",$ex['tmp_name']."\r\n".$path);
  9.                 };  
复制代码







欢迎光临 深圳全飞鸿 (http://www.nagomes.com/disc/) Powered by Discuz! X3.2