检查上传图片是否合法的函数,木马改后缀名、图片加恶意代码均逃不过
今天试了下AspJpeg组件,发现用AspJpeg组件去处理不正常的图片文件的时候就会出错,呵呵,这个正好可以让我们用来检查图片的合法性,偶给封装成函数了~
代码如下:
'-------------------------------------------
'函数名:chkimg
'作 用:检查图片文件是否合法
'参 数:img,图片路径
'返回值:布尔类型
'条 件:服务器必须支持AspJpeg
'-------------------------------------------
Function chkimg(img)
on error resume Next
chkimg=True
if isnull(img) then chkimg=false:exit function
Set chkJpeg = Server.CreateObject("Persits.Jpeg")
chkPath = Server.mappath(img)
chkJpeg.Open chkPath
If Err Then
chkimg=False
End If
If err.number<>0 Then err.clear
Set chkjpeg=Nothing
End Function
因为AspJpeg只能处理已经在服务器上的文件,所以实际运用的过程中我们可以这样做:先将图片上传到一个临时文件夹,然后检查图片的合法性,如果合法,复制图片到图片保存目录,删除临时文件并返回上传成功信息,如果非法,直接删除临时文件并返回错误警告。
相关推荐
-
检查上传图片是否合法的函数,木马改后缀名、图片加恶意代码均逃不过
今天试了下AspJpeg组件,发现用AspJpeg组件去处理不正常的图片文件的时候就会出错,呵呵,这个正好可以让我们用来检查图片的合法性,偶给封装成函数了- 复制代码 代码如下: '------------------------------------------- '函数名:chkimg '作 用:检查图片文件是否合法 '参 数:img,图片路径 '返回值:布尔类型 '条 件:服务器必须支持AspJpeg '------------------------------------------
-
使用PHP接受文件并获得其后缀名的方法
HTML的form表单 用html的表单模拟一个文件上传的post请求,代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="
-
C#遍历文件夹获取指定后缀名文件
本文实例为大家分享了C#遍历文件夹获取指定后缀名文件的具体代码,供大家参考,具体内容如下 问题描述: 项目需要,要进行某文件夹下所有shp数据的读取 解决方法: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.
-
php 获取文件后缀名,并判断是否合法的函数
核心代码 /** * 获取文件后缀名,并判断是否合法 * * @param string $file_name * @param array $allow_type * @return blob */ function get_file_suffix($file_name, $allow_type = array()) { $file_suffix = strtolower(array_pop(explode('.', $file_name))); if (empty($allow_type))
-
PHP自带方法验证邮箱、URL、IP是否合法的函数
以前用PHP验证邮箱.URL.IP是否合法都是通过自己写正则来实现,但是有时候脑子发昏,可能会写出一个不是完全正确的正则,导致验证出错,今天发现原来PHP本身自带了验证邮箱.URL.IP是否合法的函数. 主要使用的是filter_var函数. 语法 filter_var(variable, filter, options) 参数 描述 variable 必需.规定要过滤的变量. filter 可选.规定要使用的过滤器的 ID. options 规定包含标志/选项的数组.检查每个过滤器可能的标志和
-
PHP 检查扩展库或函数是否可用的代码
本文介绍的函数其实是PHP手册上本来就有的,但是由于这些函数独立性较强,查找不易,所以单独介绍一下,方便查阅. 1. 获取所有可用的模块 - get_loaded_extensions 该函数返回所有已经加载的(可用的)模块. 用法: 复制代码 代码如下: print_r(get_loaded_extensions()); 2. 获取指定模块的可用函数 - get_extension_funcs 该函数返回指定模块所有可用的函数.传入的参数(模块名称)必须是小写 用法: 复制代码 代码如下: p
-
详解Python相关文件常见的后缀名
常见的 Python 文件后缀有:py.pyc .pyo. pyi.pyw. pyd. pyx 等. 本文只介绍相对常见的一些后缀名,至于一些特别冷门的文件格式,例如一些文章提到的pyz.pywz.rpy.pyde.pyp. pyt等,并没有进行研究.因为这些扩展名资料很少,网上搜到的文章似乎都是同一个出处,只是简单提了一句,说了等于没说. py 最常见的 Python 源代码文件. 实际上如果用 python + 文件 的方式运行代码,只要文件内容相同,后缀名是不重要的,也就是说下面的运行结果
-
php 图片加水印与上传图片加水印php类
一个正规的网站,在需要上传图片时,往往都会需要在图片上增加自己网站的LOGO水印.那么如何实现这一步骤呢?首先让我们来了解PHP图片加水印的原理. 通过判断文件类型建立图形,然后把其复制到原建立的图形上,填充并建立rectangle,以备写入imagestring()或是在原已经定好的图像程序当中判断水印类型:一是字符串,另是增加一个图形对象在上面.以下是PHP图片加水印的转载! 参数说明: $max_file_size : 上传文件大小限制, 单位BYTE $destination_folde
-
php 文件上传后缀名与文件类型对照表(几乎涵盖所有文件)
网上有很多php文件上传的类,文件上传处理是php的一个特色(至少手册上是将此作为php特点来展示的,个人认为php在数组方面的优异功能更有特色),学php的人都知道文件上传怎么做,但很多人在编程中却可能忽视了一些细节问题,那就是文件的类型(MIME).在表单将文件提交给php做处理之前,浏览器会先解析识别一边是什么类型的文件,之后进入php处理环节,php又会去识别解析此文件的原始类型(并不是说你改成什么后缀就是什么文件).在这个过程中会有一些浏览器兼容,更准确来说是文件类型解析标识不一致的问
-
js判断上传文件后缀名是否合法
本文实例介绍了js判断上传文件后缀名是否合法的详细代码,分享给大家供大家参考,具体内容如下 效果图: 选择文件 选择1.jpg文件 上传成功合法 除图片文件格式以外,其他都是不合法的操作. 具体代码: <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>判断文件上传是否合法</tit
随机推荐
- 使用php+apc实现上传进度条且在IE7下不显示的问题解决方法
- Ajax异步(请求)提交类 支持跨域
- 当成精神病时怎样证明自己是正常人呢
- uploader秒传图片到服务器完整代码
- 进程监控实现代码[vbs+bat]
- apache+mysql+php+ssl服务器之完全安装攻略
- c语言中return与exit的区别浅析
- Bootstrap 折叠(Collapse)插件用法实例详解
- Express使用html模板的详细代码
- 迪菲-赫尔曼密钥交换(Diffie–Hellman)算法原理和PHP实现版
- Lua table中安全移除元素的方法
- Android通过json向MySQL中读写数据的方法详解【写入篇】
- Android实现粒子爆炸效果的方法
- Android中ListView用法实例分析
- android 实现圆角图片解决方案
- python基于socket实现网络广播的方法
- 基于Java中最常用的集合类框架之HashMap(详解)
- 基于百度地图api清除指定覆盖物(Overlay)的方法
- Python PyQt4实现QQ抽屉效果
- python 处理数字,把大于上限的数字置零实现方法