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来定义…
php限制文件类型,限制上传文件类型程序代码_PHP教程相关推荐
- Confluence wiki上传文件时报“不能上传文件至Confluence中,服务器可能已失效”
Confluence wiki 上传文件时报"不能上传文件至Confluence中,服务器可能已失效"的解决方法. 一. 后台管理修改配置 首先用管理员登陆Confluence后台 ...
- vue+elementui 同时有上传文件和批量上传文件功能,上传文件或批量上传文件后必须刷新才能再次上传文件
报错描述: 使用element-ui的上传文件组件写一个批量上传和上传文件,但是发现每次上传文件后或者批量上传文件后,不能再次上传文件或者批量上传文件.只有进入页面第一次点击上传文件或者批量上传文件才 ...
- linux上传文件命令ftp put,Linux ftp 命令行中下载文件get与上传文件put的命令应用详解...
介绍:从本地以用户anok登录的机器192.168.0.16上通过ftp远程登录到192.168.0.6的ftp服务器上,登录用户名是peo.以下为使用该连接做的实验. 查看远程ftp服务器上用户pe ...
- linux get与put,科技常识:Linux ftp 命令行中下载文件get与上传文件put的命令应用详解...
今天小编跟大家讲解下有关Linux ftp 命令行中下载文件get与上传文件put的命令应用详解 ,相信小伙伴们对这个话题应该也很关注吧,小编也收集到了有关Linux ftp 命令行中下载文件get与 ...
- linux上传文件put,详解Linux ftp 命令行中下载文件get与上传文件put的操作方法
尽管现在有许多好的FTP应用程序,但服务器命令行ftp命令的应用程序仍然很多,下面就让电脑乐园小编带你一起来学习详解Linux ftp 命令行中下载文件get与上传文件put的操作方法. 介绍:从本地 ...
- 淘宝商品详情采集上架京东店铺(无货源商品数据采集接口,京东商品详情接口,淘宝商品详情接口,整店商品采集上传接口)接口代码对接教程
淘宝商品详情采集上架京东店铺(无货源商品数据采集接口,京东商品详情接口,淘宝商品详情接口,整店商品采集上传接口)接口代码对接教程如下: 1.公共参数 名称 类型 必须 描述(接口代码教程wx19970 ...
- php禁止上传,PHP禁止某些类型的上传文件_PHP教程
为了防止某些人将 exe 之类的可执行文件上传到服务器,我们可以编写程序判断上传文件的类型,然后不符合类型的文件将会拒绝上传. 下面是实现这一功能的 PHP 程序: function ($file_n ...
- python 调用Multipart类型接口上传文件和下载文件
业务场景:工作日常会遇到在网站管理后台中需要上传文件去进行批量导入数据的接口,或者导出数据文件到本地的接口:下面记录上传文件和导出文件的操作方法: 导入数据 import requestsurl = ...
- android显示服务器端文件夹,Android上传文件到服务端并显示进度条
最近在做上传文件的服务,简单看了网上的教程.结合实践共享出代码. 由于网上的大多数没有服务端的代码,这可不行呀,没服务端怎么调试呢. Ok,先上代码. Android 上传比较简单,主要用到的是 Ht ...
最新文章
- ROP简单 ret2syscall
- python 文件格式转换_python实现txt文件格式转换为arff格式
- JavaScript 图片切割效果(带拖放、缩放效果)
- 最新型号设备信息对照表_高利洁中央空调风管清洗设备:K11三维度清扫除尘一体机器人...
- extjs简单分页grid的总结
- asm扩容流程_AIX之ASM存储扩容
- BZOJ 2560(子集DP+容斥原理)
- python手机能学吗_学习大数据是否可以不学习Python?
- linux安装redis和mysql
- 基于用户点击行为的数字图书搜索系统研究与实现 - 中国优秀硕士学位论文全文数据库...
- visual svn server安装失败
- fences 桌面整理,超赞,强烈推荐
- 3D检测入门知识梳理
- mysql实现周月表_Mysql,Mybatis做时间过滤报表:日周月统计
- node: rimraf : 无法加载文件 C:\Users\goodDream\AppData\Roaming\npm\rimraf.ps1,因为在
- OCO-2卫星数据批量化下载教程
- 技术晨读_2014_9_1
- Win10家庭版中文用户名改英文用户名方法(亲测管用)
- 计算机设置了密码后不能打印了,为什么电脑设置了开机密码后就不能打印了
- SAP S4 HANA 本地化报表配置(科目余额表/资产负债表/利润表/会计凭证明细表)