项目结构 以及插件需要的文件如图所示

前端代码:

 <!DOCTYPE html>
<html>
<head>
<title>SWFUpload</title>
<link href="~/Content/Scripts/tools/swfupload/css/default.css" rel="stylesheet" />
<script src="~/Content/Scripts/tools/jquery-1.11.3.min.js"></script>
<script src="~/Content/Scripts/tools/json2.js"></script>
<script src="~/Content/Scripts/tools/swfupload/fileprogress.js"></script>
<script src="~/Content/Scripts/tools/swfupload/handlers.js"></script>
<script src="~/Content/Scripts/tools/swfupload/swfupload.js"></script>
<script src="~/Content/Scripts/tools/swfupload/swfupload.queue.js"></script>
<script type="text/javascript">
var swfu;
window.onload = function () {
var settings = {
upload_url: "/UpLoad/UpLoading", // 上传地址
flash_url: "/Content/Scripts/tools/swfupload/swfupload.swf", // 上传图片flash
preserve_relative_urls: false,
file_post_name: "fileName", // 上传文件参数名
file_size_limit: "100 MB", // 文件大小
file_types: "*.jpg;*.png;*.gif;*.bmp;*.doc;*.docx", // 文件格式
file_types_description: "All Files",
file_upload_limit: "5",
file_queue_limit: "0",
custom_settings: {
progressTarget: "fsUploadProgress",
cancelButtonId: "btnCancel"
},
debug: true,
// Button settings
button_image_url: "/Content/Scripts/tools/swfupload/images/TestImageNoText_65x29.png", // Relative to the Flash file
button_width: "65",
button_height: "29",
button_placeholder_id: "spanButtonPlaceHolder",
button_text: '<span class="theFont">浏览</span>',
button_text_style: ".theFont { font-size: 16; }",
button_text_left_padding: 12,
button_text_top_padding: 3, // The event handler functions are defined in handlers.js
file_queued_handler: fileQueued,
file_queue_error_handler: fileQueueError,
file_dialog_complete_handler: fileDialogComplete,
upload_start_handler: uploadStart,
upload_progress_handler: uploadProgress,
upload_error_handler: uploadError,
upload_success_handler: uploadSuccess,
upload_complete_handler: uploadComplete,
queue_complete_handler: queueComplete // Queue plugin event
}; swfu = new SWFUpload(settings);
};
</script>
</head>
<body>
<div id="content">
<p>点击“浏览”按钮,选择您要上传的文档文件后,系统将自动上传并在完成后提示您。</p>
<p>请勿上传包含中文文件名的文件!</p>
<div class="fieldset flash" id="fsUploadProgress">
<span class="legend">快速上传</span>
</div>
<div id="divStatus">0 个文件已上传</div>
<div>
<span id="spanButtonPlaceHolder"></span>
<input id="btnCancel" type="button" value="取消所有上传" onclick="swfu.cancelQueue();" disabled="disabled" style="margin-left: 2px; font-size: 8pt; height: 29px;"/>
<input id="btnPase" type="button" value="暂停上传" onclick="swfu.stopQueue();" style="margin-left: 2px; font-size: 8pt; height: 29px;"/>
<input id="btnGoon" type="button" value="继续上传" onclick="swfu.startUpload();" style="margin-left: 2px; font-size: 8pt; height: 29px;"/>
</div>
</div>
</body>
</html>

后端代码:

 using System;
using System.Web;
using System.Web.Mvc; namespace Notify.Controller.SwfupLoad
{
/// <summary>
/// 上传图片控制器
/// </summary>
public class UpLoadController : System.Web.Mvc.Controller
{
/// <summary>
/// 上传图片首页
/// </summary>
/// <returns>视图</returns>
public ActionResult Index()
{
return View();
} /// <summary>
/// 上传图片处理
/// </summary>
/// <param name="fileName">图片流</param>
/// <returns>结果</returns>
public ActionResult UpLoading(HttpPostedFileBase fileName)
{
if (fileName != null)
{
//创建图片新的名称
string nameImg = DateTime.Now.ToString("yyyyMMddHHmmssfff");
//获得上传图片的路径
string strPath = fileName.FileName;
//获得上传图片的类型(后缀名)
string type = strPath.Substring(strPath.LastIndexOf(".", StringComparison.Ordinal) + ).ToLower();
if (ValidateImg(type))
{
//拼写数据库保存的相对路径字符串
//拼写上传图片的路径
var uppath = Server.MapPath("~/Content/Images/UpImgs/");
uppath += nameImg + "." + type;
//上传图片
fileName.SaveAs(uppath);
}
}
return Content("OK");
} /// <summary>
/// 验证上传图片类型
/// </summary>
/// <param name="imgName">图片</param>
/// <returns>结果</returns>
public bool ValidateImg(string imgName)
{
string[] imgType = { "gif", "jpg", "png", "bmp" }; int i = ;
bool blean = false; //判断是否为Image类型文件
while (i < imgType.Length)
{
if (imgName.Equals(imgType[i]))
{
blean = true;
break;
}
if (i == (imgType.Length - ))
{
break;
}
i++;
}
return blean;
}
}
}

使用svn下载

项目地址:http://code.taobao.org/svn/Notify/

swfupload上传图片的更多相关文章

  1. swfUpload 上传图片

    前端: <script src="~/Scripts/swfupload/swfupload.js"></script> <script src=&q ...

  2. 用SWFUpload上传图片小例子

    在开发项目中,经常会用到上传图片,接下来我就用一种简单的方式给大家分享一下使用SWFUpload的方式上传图片. 1.在网站根目录下新建一个SWFUpload文件夹,把下载的组建放在SWFUpload ...

  3. SWFUpload多图上传、C#后端跨域传文件带参数

    前几天工作中用到了SWFUpload上传图片,涉及到跨域,因为前端无法实现跨域,所以只能把文件传到后端进行跨域请求,整理分享下. 效果图 前端 html部分 <!DOCTYPE html> ...

  4. PHP之:多图上传

    撰写日期:2016-6-30 15:17:35 Thursday 参考 http://a3147972.blog.51cto.com/2366547/1381136 (08-05ThinkPHP+sw ...

  5. [Asp.net]Uploadify所有配置说明,常见bug问题分析

    引言 之前写过一篇使用swfupload上传图片的文章:周末大放送网站图片上传,水印,预览,截图,这里分析一下,当时使用uploadify上传,无法获取上传后,图片路径的问题.当时没有测试没有成功,一 ...

  6. Uploadify所有配置说明,常见bug问题分析

    引言 之前写过一篇使用swfupload上传图片的文章:周末大放送网站图片上传,水印,预览,截图,这里分析一下,当时使用uploadify上传,无法获取上传后,图片路径的问题.当时没有测试没有成功,一 ...

  7. 使用SWFUpload无刷新上传图片

    使用SWFUpload组件无刷新上传图片 在做项目时,需要用到一个图片的无刷新上传,之前听说过SWFUpload,于是想要通过SWFUpload来进行图片的无刷新上传,由于我的项目属于是ASP.NET ...

  8. swfupload在chrome中点击上传图片按钮无反应的解决办法

    chrome 22.0.XXXXX dev版上传图片按钮点击无反应原因:是GOOGLE的内建Flash PPAPI外挂所导致的. 问题原因: 由于Google浏览器(Chrome),在最新测试版22. ...

  9. ckeditor添加自定义按钮整合swfupload实现批量上传图片

    ckeditor添加自定义按钮整合swfupload实现批量上传图片给ckeditor添加自定义按钮,由于ckeditor只能上传一张图片,如果要上传多张图片就要结合ckfinder,而ckfinde ...

随机推荐

  1. multer中间件

    1.Multer是node.js的一个中间件,用于处理multipart/form-data类型的表单数据,它主要用于上传文件.(Multer不会处理任何非multipart/form-data类型的 ...

  2. C++中static_cast和dynamic_cast强制类型转换

    在C++标准中,提供了关于类型层次转换中的两个关键字static_cast和dynamic_cast. 一.static_cast关键字(编译时类型检查) 用法:static_cast < ty ...

  3. 小程序 canvas实现图片预览,图片保存

    wxml 代码: <view class="result-page"> <canvas bindtap="previewImage" canv ...

  4. spring是如何控制事务

    1.spring的核心是ioc和aop,其中ioc是将控制权交由spring容器进行管理,aop是面向切面编程,内部实现使用的是动态代理,二动态代理内部实现用的是反射.spring的事务是通过aop来 ...

  5. What is probabilistic programming? | 中文翻译

    What is probabilistic programming? | 中文翻译 Probabilistic languages can free developers from the compl ...

  6. 接口自动化(unittest)

    一.用例 TestCase 也就是测试用例 TestSuite 多个测试用例集合在一起,就是TestSuite TestLoader是用来加载TestCase到TestSuite中的 TestRunn ...

  7. python元组与购物车程序

    #Author:zww ''' 程序:购物车程序 需求: 1.启动程序后,让用户输入工资,然后打印呢商品列表 2.允许用户根据商品编号购买商品 3.用户选择商品后,检测余额是否足够,够就直接扣款,不够 ...

  8. Codeforces 839C Journey - 树形动态规划 - 数学期望

    There are n cities and n - 1 roads in the Seven Kingdoms, each road connects two cities and we can r ...

  9. bzoj 3993 星际战争 - 二分答案 - 最大流

    3333年,在银河系的某星球上,X军团和Y军团正在激烈地作战.在战斗的某一阶段,Y军团一共派遣了N个巨型机器人进攻X军团的阵地,其中第i个巨型机器人的装甲值为Ai.当一个巨型机器人的装甲值减少到0或者 ...

  10. VC++ 使用CreateProcess创建新进程

    https://www.cnblogs.com/fancing/p/6477918.html #include <windows.h> #include <tchar.h> # ...