Chock丶W
2015-08-04 15:54
<?php
include_once 'common.upload.php';
function getfile(){
$i=0;
foreach($_FILES as $file){
if(is_string($file['name'])){
$files[$i]=$file;
$i++;
}
else if(is_array($file['name'])){
foreach($file['name'] as $key=>$val){
$files[$i]['name']=$file['name'][$key];
$files[$i]['type']=$file['type'][$key];
$files[$i]['tmp_name']=$file['tmp_name'][$key];
$files[$i]['error']=$file['error'][$key];
$files[$i]['size']=$file['size'][$key];
$i++;
}
}
}
return $files;
}
function uploadfile($fileinfo,$maxsize=2049999,$path='./upload',$flag=true,$allowext=array('jped','jpg','png','gif')){
// $flag=true;
// $allowext=array('jpeg','jpg','png','gif');
//判断错误号
if($fileinfo['error']===UPLOAD_ERR_OK){
//检测文件大小
if($fileinfo['size']>$maxsize){
$res['mes']=$fileinfo['name'].'上传文件过大';
}
//检测文件类型
$ext=getext($fileinfo['name']);
if(!in_array($ext,$allowext)){
$res['mes']=$fileinfo['name'].'非法文件类型';
}
//检测是否为真实的图片类型
if($flag){
if(!getimagesize($fileinfo['tmp_name'])){
$res['mes']=$fileinfo['name'].'不是真实的图片类型';
}
//检测文件是否通过HTTP POST方式上传
if(!is_uploaded_file($fileinfo['tmp_name'])){
$res['mes']=$fileinfo['name'].'文件不是通过HTTP POST方式上传';
}
//移动文件
if($res) return $res;
}
// $path='./upload';
$uniname=getuniName();
$destination=$path.'/'.$uniname.'.'.$ext;
if(!move_uploaded_file($fileinfo['tmp_name'], $destination)){
$res['mes']='上传文件失败';
}
$res['mes']=$fileinfo['name'].'上传成功';
$res['dest']=$destination;
return $res;
}else{
switch ($fileinfo ['error']) {
case 1 :
$mes = '上传文件超过PHP配置文件中upload_max_file的值';
break;
case 2 :
$mes = '超过表单MAX_FILE_SIZE的大小';
break;
case 3 :
$mes = '文件部分被上传';
break;
case 4 :
$mes = '没有选择上传文件';
break;
case 6 :
$mes = '没有找到临时目录';
break;
case 7 :
case 8 :
$mes = '系统错误';
break;
}
}
}
}
Notice不是错误,你可以看下错误与异常这个课程
^-^...
我也是这样子 问题出在哪里?
这是显示的结果,求解答
PHP实现文件上传与下载
43735 学习 · 328 问题
相似问题