Heim >Backend-Entwicklung >PHP-Tutorial >php文件上传_PHP教程

php文件上传_PHP教程

WBOY
WBOYOriginal
2016-07-20 11:08:491352Durchsuche

一款php文件上传实例哦,他可以支持txt,rar,zip,jpg,jpeg,gif,png,swf,wmv,avi,wma,mp3,mid,jar,jad,exe,html,htm,css,js,doc'上传,音乐文件等都可以。

一款php教程文件上传实例哦,他可以支持txt,rar,zip,jpg,jpeg,gif,png,swf,wmv,avi,wma,mp3,mid,jar,jad,exe,html,htm,css教程,js,doc'上传,音乐文件等都可以。





php文件上传




if(!$_post)die();
$state=uploadfile('filedata');
if($state['err']){
die('<script>alert("上传出错:'.$state['msg'].'");history.go(-1);</script>');
}

echo'
';


function uploadfile($inputname)
{
 $immediate=$_get['immediate'];
 $attachdir='../pictures';//上传文件保存路径,结尾不要带/
 $urldir="../pictures";
 $dirtype=2;//1:按天存入目录 2:按月存入目录 3:按扩展名存目录  建议使用按天存
 $maxattachsize=2097152;//最大上传大小,默认是2m
 $upext='txt,rar,zip,jpg,jpeg,gif,png,swf,wmv,avi,wma,mp3,mid,jar,jad,exe,html,htm,css,js,doc';//上传扩展名
 
 $err = "";
 $msg = "";
 $upfile=$_files[$inputname];
 if(!empty($upfile['error']))
 {
  switch($upfile['error'])
  {
   case '1':
    $err = '文件大小超过了php.ini定义的upload_max_filesize值';
    break;
   case '2':
    $err = '文件大小超过了html定义的max_file_size值';
    break;
   case '3':
    $err = '文件上传不完全';
    break;
   case '4':
    $err = '无文件上传';
    break;
   case '6':
    $err = '缺少临时文件夹';
    break;
   case '7':
    $err = '写文件失败';
    break;
   case '8':
    $err = '上传被其它扩展中断';
    break;
   case '999':
   default:
    $err = '无有效错误代码';
  }
 }
 elseif(empty($upfile['tmp_name']) || $upfile['tmp_name'] == 'none')$err = '无文件上传';
 else
 {
   $temppath=$upfile['tmp_name'];
   $fileinfo=pathinfo($upfile['name']);
   $extension=$fileinfo['extension'];
   if(preg_match('/'.str_replace(',','|',$upext).'/i',$extension))
   {
    $filesize=filesize($temppath);
    if($filesize > $maxattachsize)$err='文件大小超过'.$maxattachsize.'字节';
    else
    {
     switch($dirtype)
     {
      case 1: $attach_subdir = 'day_'.date('ymd'); break;
      case 2: $attach_subdir = 'month_'.date('ym'); break;
      case 3: $attach_subdir = 'ext_'.$extension; break;
     }
     $attach_dir = $attachdir.'/'.$attach_subdir;
     if(!is_dir($attach_dir))
     {
      @mkdir($attach_dir, 0777);
      @fclose(fopen($attach_dir.'/index.htm', 'w'));
     }
     php_version      $filename=date("ymdhis").mt_rand(1000,9999).'.'.$extension;
     $target = $urldir.'/'.$attach_subdir.'/'.$filename;
     
     move_uploaded_file($upfile['tmp_name'],$target);
     if($immediate=='1')$target='!'.$target;
     $msg=str_replace('../',"",$target);
    }
   }
   else $err='上传文件扩展名必需为:'.$upext;

   @unlink($temppath);
 }
 return array('err'=>$err,'msg'=>$msg);
}
?>


www.bkjia.comtruehttp://www.bkjia.com/PHPjc/444851.htmlTechArticle一款php文件上传实例哦,他可以支持txt,rar,zip,jpg,jpeg,gif,png,swf,wmv,avi,wma,mp3,mid,jar,jad,exe,html,htm,css,js,doc'上传,音乐文件等都可以。 一款php教程...
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn