php限制文件类型,限制上传文件类型程序代码_PHP教程

我们一般不会在前段限制用户上传文件时的文件类,因为也没什么好的办法来限制只能使用像php,asp这类来操作,下面我来介绍利用js来定义type=file浏览上传时的文件类型与php中限制上传文件类型代码。

利用js

例1

代码如下

复制代码

function check(){

var filepath=path.value

filepath=filepath.substring(filepath.lastIndexOf(‘.’)+1,filepath.length)

if(filepath != ‘jpg’ && filepath != ‘gif’)

alert(“只能上传JPG或GIF格式的图片”)

}

(只能上传JPG或GIF格式的图片)

例2

代码如下

复制代码

function ck(obj){if(obj.value.length>0){

var af=”jpg,gif,png,zip,rar,txt,htm”;

if(eval(“with(obj.value)if(!/”+af.split(“,”).join(“|”)+”/ig.test(substring(lastIndexOf(‘.’)

+1,length)))1;”)){alert(“Allowed file types:n”+af);obj.createTextRange().execCommand(‘delete’)};

}}

例3

代码如下

复制代码

/*

* 判断图片类型

*

* @param ths

* type=”file”的javascript对象

* @return true-符合要求,false-不符合

*/

function checkImgType(ths){

if (ths.value == “”) {

alert(“请上传图片”);

return false;

} else {

if (!/.(gif|jpg|jpeg|png|GIF|JPG|PNG)$/.test(ths.value)) {

alert(“图片类型必须是.gif,jpeg,jpg,png中的一种”);

ths.value = “”;

return false;

}

}

return true;

}

如果是利用php,asp类的我们就不能像上面处理了需要如下

代码如下

复制代码

$name=$_FILES[‘file4’][‘name’]; //获取客户端机器原文件的名称

$type=strstr($name,”.”); //获取从”.”到最后的字符 if($type!=”.txt”)

{ echo “对不起,您上传文件的格式不正确!!”;

echo “将在3秒钟后返回前页…”;

}

上面的方法说实话只能骗小朋友了,只要我们把上传文件的后缀名改一下就可能通过上面验证

稍加改进后这样就与文件后缀名无关了

代码如下

复制代码

$temppath=$upfile[‘tmp_name’];

$fileinfo=pathinfo($upfile[‘name’]);

$extension=$upfile[‘type’];

switch( $extension )

{

case ‘application/msword’:

$extension =’doc’;

break;

case ‘application/vnd.ms-excel’:

$extension =’xls’;

break;

case ‘application/vnd.openxmlformats-officedocument.wordprocessingml.document’:

$extension =’docx’;

break;

case ‘application/vnd.ms-powerpoint’:

$extension =’ppt’;

break;

case ‘application/pdf’:

$extension =’pdf’;

break;

case ‘application/vnd.openxmlformats-officedocument.spreadsheetml.sheet’:

$extension =’xlsx’;

break;

default:

die(‘只允许上传doc,docx,xls,pdf,ppt文件 重新上传‘);

}

id 后缀名 php识别出的文件类型

0 gif image/gif

1 jpg image/jpeg

2 png image/png

3 bmp image/bmp

4 psd application/octet-stream

5 ico image/x-icon

6 rar application/octet-stream

7 zip application/zip

8 7z application/octet-stream

9 exe application/octet-stream

10 avi video/avi

11 rmvb application/vnd.rn-realmedia-vbr

12 3gp application/octet-stream

13 flv application/octet-stream

14 mp3 audio/mpeg

15 wav audio/wav

16 krc application/octet-stream

17 lrc application/octet-stream

18 txt text/plain

19 doc application/msword

20 xls application/vnd.ms-excel

21 ppt application/vnd.ms-powerpoint

22 pdf application/pdf

23 chm application/octet-stream

24 mdb application/msaccess

25 sql application/octet-stream

26 con application/octet-stream

27 log text/plain

28 dat application/octet-stream

29 ini application/octet-stream

30 php application/octet-stream

31 html text/html

32 htm text/html

33 ttf application/octet-stream

34 fon application/octet-stream

35 js application/x-javascript

36 xml text/xml

37 dll application/octet-stream

38 dll application/octet-stream

www.bkjia.comtrueTechArticle我们一般不会在前段限制用户上传文件时的文件类,因为也没什么好的办法来限制只能使用像php,asp这类来操作,下面我来介绍利用js来定义…

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PHP仿百度网盘文件分享dzzoffice网盘系统源码 网盘特点 本网盘修复的核心功能 1.断点续传功能。市面上许多所谓的断点传传基本没有完美的,本源码经过修复,完美实现了断点、续传功能。 切片:大文件分成1MB大小的小文件, 服务器上传无压力,切片文件合并无压力。市面上许多切片文件合并时CPU经常占用99%,本源码CPU没有任何压力。 续传:上传中间如果人工或网络出现故障,再上传时会接着上传,不会像网上的许多所谓的续传,全是从0开始。 2.极速上传。由于采取了优化过的代码,WEB上传速度可媲美flashfxp等专业上传软件,稳定,极速。 3.强大的垃圾文件删除功能。如果大文件中途停止上传,今后再不上传的话,系统会产生若干垃圾切片文件,本系统会自动监测,如7天后会自动删除切片垃圾文件,释放服务器空间。 4.支持ssl功能,可直接用https://形式访问。 5.强大的定时任务。本系统会定时清理网盘回收站垃圾文件,而这一功能完全由系统完成,不需要由像其它系统一样必须在第三方定时设置定时任务。 三、网盘主要功能 1.支持用户管理系统。支持用户注册功能(后台可关闭),管理可为每个用户分配一定数额的存储空间,还可以限制单个上传文件大小。 2.支持管理员查看每个会员的文件上传、分享情况,可对用户文件进行删除等管理。目前,市面上的便宜网盘基本都只支持个人网盘功能,没有管理员功能,无法管理其它用户的文件。 3.支持强大的分享功能。 提取密码:输入正确的提取码方可下载文件 分享次数:超次分享次数,文件就无法下载(百度网盘没有这个功能) 分享日期:在设置的日期段内可进行下载。 4.响应式设计,完美支持手机、平板等移动终端设备。 5.可灵活设置群组权限,可只允许查看、编辑等功能。(类似于QQ群概念一样,进入群组的人可以像共享文件夹一样分享、共享、下载文件,可设置权限,如群组创建者可设置群组成员只允许查看、下载文件,但不允许其它人员上传分享文件) 6.支持压缩包在线查看功能。直接在线查看,不用下载直接在线解压。 7.支持在线创建文件夹、创建文件,删除文件等操作。 8.支持office文件在线预览功能,相当牛比。 9.支持mp4 mp3文件在线预览播放功能。 10支持极速上传文件功能。本网盘采取HTML上传技术,在WEB上传速度完全可媲美FLASHFXP等专业上传软件。 11.真正的断点续传功能,市面上许多所谓的断点续传功能都有问题。你将一个5G大文件上传到50%后,人为中断,再重新上传看看,基本全从0开始了,本网盘可接着从50%上传。 12.密码找回功能,如果忘记密码,可通过邮箱找回。 13.支持大文件体积识别功能。市面上许多上传程序,对超过2G的文件全识别为0或者几百MB,造成文件下载时出错。 14.垃圾切片文件自动删除功能。有些会员上传大文件过程中,可能由于人为或网络的问题,没有将文件上传到100%,之后再没有上传文件,造成产生了许多垃圾切片文件。本系统可智能删除垃圾切片文件,尽可能利用服务器空间。 15.自动删除回收站功能。本网盘可设置N天自动删除回收站文件,对于删除的文件会自动进入回收站,对进入回收站的文件,超过设置的天数会自动进行删除。不仅删除数据库记录,更会自动删除服务器上的物理文件。许多网盘都无法删除服务器上的文件,只是删除了数据库记录,并没有真正删除服务器文件,造成资源严重浪费

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值