前段代码如下

$("#file_upload").uploadify({
'auto': true,
'swf': '/template/js/cutImg/uploadify/uploadify.swf',
'uploader': '/template/js/cutImg/upload.ashx',
'multi': false, //是否能选择多个文件
'queueID': 'fileQueue', //显示上传文件队列的元素id,可以简单用一个div来显示
'cancelImage': '/template/js/cutImg/uploadify/uploadify-cancel.png', //[必须设置]取消图片的路径
'buttonText': '', //上传按钮的文字
'buttonImage': '/template/images/people.png', //上传按钮的背景图片
'width': 100, //上传按钮的高和宽
'height': 30,
'removeCompleted': true, //表示在上传完成后是否删除队列中的对应元素。默认是True,即上传完成后就看不到上传文件进度条了
"removeTimeout": "0", //表示上传完成后多久删除队列中的进度条,默认为3
"fileSizeLimit": "4096KB", //上传文件大小限制,默认单位是KB
"fileTypeExts": "*.jpg;*.gif;*.png", //指定允许上传的文件类型。默认*.*
"formData": { "folder_name": "UserHead" },
"onSelect": function () { //选择文件后触发
//禁用Uploadify
//$("#file_upload").uploadify("disable", true);
},
'overrideEvents': ['onSelectError', 'onDialogClose'], //屏蔽内部错误提示
'onFallback': function () { //检测FLASH失败调用
FunMsg("您未安装FLASH控件,无法上传!请安装FLASH控件后再试。");
},
"onSelectError": function (file, errorCode, errorMsg) {
//选择文件出错时触发,返回file,erroCode,errorMsg三个参数 var settings = this.settings;
if (errorCode == -110) {
FunMsg("文件最大限制" + settings.fileSizeLimit);
}
if (errorCode == -130) {
FunMsg("图片格式只支持:*.jpg;*.gif;*.png");
}
},
"onUploadStart": function (file) { //动态设置参数的值
//$("#file_upload").uploadify("settings", "formData", {"id":"1"});
},
"onUploadError": function (file, errorCode, erorMsg, errorString) { },
"onUploadSuccess": function (file, data, response) {
//上传成功触发,data是用来接受从后台返回来的数值
}
});

后台代码如下

        public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
context.Response.Charset = "utf-8"; HttpPostedFile file = context.Request.Files["Filedata"]; if (file != null)
{
//上传图片的扩展名
string fileExtension = Path.GetExtension(file.FileName);//上传文件的后缀
//判断文件格式
if (!CheckValidExt(fileExtension))
{
context.Response.Write("错误提示:文件格式不正确!" + fileExtension);
return;
}
//使用时间+随机数重命名文件
string strDateTime = DateTime.Now.ToString("yyMMddhhmmssfff");//取得时间字符串
Random ran = new Random();
string strRan = Convert.ToString(ran.Next(100, 999));//生成三位随机数
string saveName = strDateTime + strRan + fileExtension; string path = "/UploadFile/";
string uploadPath = HttpContext.Current.Server.MapPath(path);
//判断是否有该文件夹,没有就创建
if (!Directory.Exists(uploadPath))
{
Directory.CreateDirectory(uploadPath);
}
file.SaveAs(uploadPath + saveName);
//下面这句代码缺少的话,上传成功后上队列的显示不会自动消失,并返回修改后的文件名称
context.Response.Write(path+saveName);
}
else
{
context.Response.Write("0");
}
} ///
/// 检测扩展名的有效性 +bool CheckValidExt(string sExt)
///
/// 文件名扩展名
/// 如果扩展名有效,返回true,否则返回false.
public bool CheckValidExt(string strExt)
{
string AllowExt = "7z|aiff|asf|avi|bmp|csv|doc|docx|fla|flv|gif|gz|gzip|jpeg|jpg|mid|mov|mp3|mp4|mpc|mpeg|mpg|ods|odt|pdf|png|ppt|pptx|pxd|qt|ram|rar|rm|rmi|rmvb|rtf|sdc|sitd|swf|sxc|sxw|tar|tgz|tif|tiff|txt|vsd|wav|wma|wmv|xls|xlsx|xml|zip";//支持的文件格式
bool flag = false;
string[] arrExt = AllowExt.Split('|');
foreach (string filetype in arrExt)
{
if (filetype.ToLower() == strExt.ToLower().Replace(".", ""))
{
flag = true;
break;
}
}
return flag;
}

asp.net+uploadify实现图片上传图片的更多相关文章

  1. asp.net core 通过ajax上传图片及wangEditor图片上传

    asp.net core 通过ajax上传图片 .net core前端代码,因为是通过ajax调用,首先要保证ajax能调用后台代码,具体参见上一篇.net core 使用ajax调用后台代码. 前端 ...

  2. [Asp.net]Uploadify上传大文件,Http error 404 解决方案

    引言 之前使用Uploadify做了一个上传图片并预览的功能,今天在项目中,要使用该插件上传大文件.之前弄过上传图片的demo,就使用该demo进行测试.可以查看我的这篇文章:[Asp.net]Upl ...

  3. Uploadify 控件上传图片 + 预览

    jquery的Uploadify控件上传图片和预览使用介绍. 在简单的servlet系统中和在SSH框架中,后台处理不同的,在三大框架中图片预览时费了不少力气,所以下面将两种情况都介绍一下. 1,前台 ...

  4. ASP.NET -- WebForm -- 给图片添加水印标记

    ASP.NET -- WebForm: 给图片添加水印标记 ASP.NET:使用 WebForm(C#) 制作一个简单的为图片添加水印的页面. 1. Test2.aspx文件 <%@ Page ...

  5. [Asp.net]Uploadify上传大文件,Http error 404 解决方案 - wolfy

    引言 之前使用Uploadify做了一个上传图片并预览的功能,今天在项目中,要使用该插件上传大文件.之前弄过上传图片的demo,就使用该demo进行测试.可以查看我的这篇文章: [Asp.net]Up ...

  6. int.TryParse非预期执行引发的思考 ASP.NET -- WebForm -- 给图片添加水印标记 Windows -- 使用批处理文件.bat删除旧文件

    int.TryParse非预期执行引发的思考   问题出现 这天在写一个页面,想谨慎些就用了int.TryParse,结果出问题了. 代码如下: Copy int id = 1000; //Reque ...

  7. ASP.NET输出PNG图片时出现GDI+一般性错误的解决方法

    偶原来的用ASP.NET生成验证码图片时用的是JPG格式,今天想把它改成PNG格式的,结果就出现GDI+一般性错误,查了N久资料,才发现解决的办法,对分享此解决办法的网友深表感谢 Response.C ...

  8. ASP.NET\MVC 解决C#上传图片质量下降,图片模糊,水印有杂点的问题

    对图片处理这一块不是很懂,自己写不出来,这些年一直没有停止找一个上传图片质量不下降,加水印不会导致模糊和水印周边产生杂点的代码. 网上基本上99.9%的代码处理图片质量都是下面这两句: //设置质量 ...

  9. asp.net 百度编辑器 UEditor 上传图片 图片上传配置 编辑器配置 网络连接错误,请检查配置后重试

    1.配置ueditor/editor_config.js文件,将 //图片上传配置区 ,imageUrl:URL+"net/imageUp.ashx" //图片上传提交地址 ,im ...

随机推荐

  1. 这个写法会出什么问题: @property (copy) NSMutableArray *array;

    因为copy策略拷贝出来的是一个不可变对象,然而却把它当成可变对象使用,很容易造成程序奔溃 //如:-[__NSArrayI removeObjectAtIndex:]: unrecognized s ...

  2. thinkphp3.1.3验证码优化

    现状 thinkphp3.1.3版本中的验证码字符分布不均匀,在自定义宽高时很明显. 调用代码: Image::buildImageVerify(6, 5, 'png', 150, 50); 生成的验 ...

  3. CentOS搭建pptpd服务笔记

    pptpd.rpm 包下载.http://poptop.sourceforge.net/yum/stable/packages/ 参考资料:http://www.oschina.net/questio ...

  4. protobuf-net与FlatBuffers

    protobuf-net Protobuf是google开源的一个项目,用户数据序列化反序列化,google声称google的数据通信都是用该序列化方法.它比xml格式要少的多,甚至比二进制数据格式也 ...

  5. Python——数据类型初步:Numbers

    本篇内容 今天主要简介了几种数字的数据类型和一些稍微比较常用的方法. • int • bytes • float • bool • complex • long Python里面的使用变量的时候并不需 ...

  6. Linux 文本对比 diff 命令详解(整理)

    diff 命令详解 1.概述 windows系统下面就有不错的文本对比工具可以使用,例如常用的Beyond Compare,WinMerge都是图形界面的比较工具而且使用非常方便,如果你仅仅是在win ...

  7. HDU 4758 Walk Through Squares( AC自动机 + 状态压缩DP )

    题意:给你两个串A,B, 问一个串长为M+N且包含A和B且恰好包含M个R的字符串有多少种组合方式,所有字符串中均只含有字符L和R. dp[i][j][k][S]表示串长为i,有j个R,在自动机中的状态 ...

  8. nyoj 题目61 传纸条

    传纸条(一) 时间限制:2000 ms  |  内存限制:65535 KB 难度:5   描述 小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题.一次素质拓展活动中,班上同学安排做成一个m行 ...

  9. BZOJ3456 城市规划 【分治NTT】

    题目链接 BZOJ3456 题解 据说这题是多项式求逆 我太弱不会QAQ,只能\(O(nlog^2n)\)分治\(NTT\) 设\(f[i]\)表示\(i\)个节点的简单无向连通图的数量 考虑转移,直 ...

  10. BZOJ2599 [IOI2011]Race 【点分治】

    题目 给一棵树,每条边有权.求一条简单路径,权值和等于K,且边的数量最小.N <= 200000, K <= 1000000 输入格式 第一行 两个整数 n, k 第二..n行 每行三个整 ...