当前所在位置:首页 > 建站常识
欢迎您访问灵风网络,我们将提供您最优惠的建站套餐,祝您工作愉快!如有疑问请咨询客服

大连网站建设简单的PHP文件上传方法

发布时间:2012-05-29 来源:www.fo-sky.com 浏览次数: 分享到:
更多

  现在特别多企业做网站大多数用到的是asp来开发的,但是也有使用PHP开发的。现在网站都是少不文件、图片上传这一步的,今天就写了个函数仅供参考,有些不妥的地方还玩大家提意见。

/************文件上传函数******************/   
/*   
*$formname                       Html上传表单名称   
*$allowtype_array                允许上传的文件类型数组   
*$allow_size                     允许上传的文件最大大小,默认是1MB   
*$isRename                       是否需要重命名被上传的文件   
*/

  function upload_file($formname,$path,$allowtype_array,$allow_size='1048576',$isRename=true){
if($_FILES[$formname]['tmp_name']=='' || $_FILES[$formname]['name']=='' || $_FILES[$formname]['size']==0){
  return false;
   }   
if(!file_exists('../uploadfiles/'.$path)){
if(!mkdir('../uploadfiles/'.$path,0777)){
WriteErrMsg('创建上传文件保存文件目录失败,请联系管理员检查目录权限'); 
   }
   } 
if($_FILES[$formname]['size']>$allow_size){
WriteErrMsg('上传文件过大,请将上传文件限制在'.number_format($allow_size/1048576,'2','.','').'MB以内');
   } 
$file_name_array=explode('.',$_FILES[$formname]['name']);
$file_type=strtolower($file_name_array[count($file_name_array)-1]);
if(!in_array($file_type,$allowtype_array)){
     WriteErrMsg('上传文件类型错误,仅允许上传后缀名为 .'.implode(' .',$allowtype_array).'的文件'); 
  }
$save_name=$isRename?randomname().'.'.$file_type:$_FILES[$formname]['name']; 
  if(!move_uploaded_file($_FILES[$formname]['tmp_name'],'../uploadfiles/'.$path.'/'.$save_name)){
WriteErrMsg('文件上传过程中发生错误,请重新上传');
   }
switch($_FILES[$formname]['error']){
case 0: 
return $save_name; 
break;    
case 1:  
WriteErrMsg('上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值'); 
break; 
case 2:
WriteErrMsg('上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值'); 
break;
    case 3:
WriteErrMsg('文件只有部分被上传');
    break;  
case 4:
WriteErrMsg('没有文件被上传'); 
   break; 
   default:
WriteErrMsg('能出现这条错误提示,日子也该混到头了'); 
   break; 
  }
  } 


希望以上信息能够帮助您,如果您还有关于大连网站制作,大连网站建设,大连网页设计,大连做网站,大连个人做网站及网站相关问题,请与我们联系,大连灵风科技将竭诚为您服务!

--- 大连灵风网络科技 祝您生意兴隆!