uploadify-无刷新图片批量上传插件-.net下批量上传图片并且保存数据到数据库
|
![]() |
![]() |
![]() |
| 【性价之王】 | 【线路之王】 | 【价格之王】 | 【配置之王】 |
| 【免费之王】 | 【香港首推】 | 【梯子之王】 | 【独服之王】 |
琢磨了半天在某网站看到一句话而豁然开朗。暂时采用的变通方法如下:
1.workadd.aspx页面(作品添加页面,包含作品名称,作者,作品内容等)。
本页面中的作品内容一栏要求一次选取多张图片,批量上传。
前台部分代码:
head处代码(注意引用路径):
<link h="/uploadify/uploadify.css" type="text/css" rel="stylesheet" /> <script type="text/javascript" src="/uploadify/jquery-1.4.2.min.js"></script> <script type="text/javascript" src="/uploadify/swfobject.js"></script> <script type="text/javascript" src="/uploadify/jquery.uploadify.v2.1.4.min.js"></script>body中作品内容处代码(注意引用路径):
<div class="wrapper"> <div id="fileInput1"> </div> </div> <script type="text/javascript"> $("#fileInput1").uploadify({ 'uploader': '/uploadify/uploadify.swf', 'script': '<%=temp %>', 'cancelImg': /uploadify/cancel.png', 'fileExt': '*.jpg;*.gif;*.png', 'fileDesc': 'Image Files', 'auto': true, 'multi': true }); </script>此处的js都按照正常配置即可,注意路径要写准确了,需要注意的是‘script’:‘<%=temp%>’这里,这里是指定处理上传的文件路径的,一般为upload.ashx/upload.aspx等等。
这里这样写是要在后台给动态生成个带唯一参数的路径。
后台部分代码:
page_load:
public string temp = "upload.aspx?sn=0"; DataSet ds = new DataSet(); protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { txt_CaseTime.Text = System.DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss"); string sn = lbl_ID.Text = System.DateTime.Now.ToString("yyyyMMddhhmmss"); temp = "upload.aspx?sn=" + sn; } }此处代码是动态生成带唯一参数的路径,这个参数要在使用upload.aspx批量上传图片时用到。我图省事就直接获取系统时间生成个唯一参数。
完整信息(就是作品名称,作品信息都填完后的)提交事件:
string s_Content = null; ds = DbHelperOleDb.Query("select * from [temp] where temp_sn='"+ lbl_ID.Text + "'"); if (ds != null && ds.Tables.Count > 0) { if (ds.Tables[0].Rows.Count > 0) { for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { s_Content = ds.Tables[0].Rows[i][1].ToString() +"|"+ s_Content ; } } }这块代码要结合下面的2.upload.aspx代码解释,就是在upload.aspx页面把处理完图片批量上传,并把每一张图片作为一条记录加上统一的唯一的参数sn做为ID插入到临时temp表中之后。
本页面再按照page_load中生成的唯一参数sn去temp临时表中去读取该sn下的记录然后循环写成一个字段插入到work表中~
2.upload.aspx页面(与flash插件结合处理图片批量上传)
using System; using System.Collections; using System.Configuration; using System.Data; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Data.OleDb; using System.IO; public partial class m_admin_files_upload : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { string sn = Request.QueryString["sn"].ToString(); if (sn.Length > 14) sn = sn.Substring(0,14); try { //获取上传的文件数据 HttpPostedFile file = Request.Files["Filedata"]; string fileName = file.FileName; string fileType = Path.GetExtension(fileName).ToLower(); //由于不同浏览器取出的FileName不同(有的是文件绝对路径,有的是只有文件名),故要进行处理 if (fileName.IndexOf(' ') > -1) { fileName = fileName.Substring(fileName.LastIndexOf(' ') + 1); } else if (fileName.IndexOf('/') > -1) { fileName = fileName.Substring(fileName.LastIndexOf('/') + 1); } //上传的目录 string uploadDir = "~/uploadfile/" + System.DateTime.Now.ToString("yyyyMM") + "/"; //上传的路径 if (Directory.Exists(Server.MapPath(uploadDir)) == false) { Directory.CreateDirectory(Server.MapPath(uploadDir)); } if (Directory.Exists(Server.MapPath(uploadDir + System.DateTime.Now.ToString("dd") + "/")) == false) { Directory.CreateDirectory(Server.MapPath(uploadDir + System.DateTime.Now.ToString("dd") + "/")); } uploadDir = uploadDir + System.DateTime.Now.ToString("dd") + "/"; string uploadPath = uploadDir + MD5.strToMD5(fileName).Substring(0,8) + fileType; //保存文件 file.SaveAs(Server.MapPath(uploadPath)); //下面这句代码缺少的话,上传成功后上传队列的显示不会自动消失 DbHelperOleDb.ExecuteSql("insert into [temp](temp_sn,temp_Content) values('" + sn + "','" + uploadPath + "')"); //Response.Write("1"); } catch { //Response.Write("0"); } } }其实这个只是在官方DEMO的基础上增加了一点小功能,获取workadd.aspx中flash插件批量上传事件触发后传来的唯一参数sn,并且把每一张图片与sn都作为一条独立的记录存储到临时表temp中。这样就实现了.NET下使用uploadify无刷批量上传图片并且保存数据到数据库的功能了。
这是站长在2011年发表在博客园的一篇原创文章,后来工作忙也就不再写博客了,最近又翻出来发现这么多年过去仍然有人在求demo,而原来提供的demo下载地址已经失效了,所以就转帖到IT零五,并且重新提供DEMO下载VPS.COM.IN,如果有什么疑问你可以在文章下方留言,我每天都会看这个网站。
点击下载.net下uploadify无刷新批量上传图片并且保存数据到数据库DEMO,解压密码:it.02405.com
[css]历史优惠活动内容
猜你可能想看的VPS
- Mineserver:香港CMI大带宽云服务器38元/月起(300M不限 香港VPS[主机]
- 天上云:香港CN2弹性云服务器;1核/1G/20G/;促销月付24元起( 香港VPS[主机]
- 兼容移动和PC的loading加载和toast消息插件 全球[VPS测评]
- 又有美议员窜访台,中国驻美大使馆:“中方将对美国的挑衅采取果断的反制措施 美国VPS[主机]
- CentOS 7.x 系统安装和配置redis-7.0.4集群 全球[VPS测评]
- VPS成立BurjeelHoldings 全球[VPS测评]
- 晚点独家丨拼多多9月上线跨境电商平台,首站美国 美国VPS[主机]
- 外贸无界烟台市有多少跨境电商?烟台跨境电商开发平台,烟台跨境电商选品 全球[VPS测评]
- 1分钟快速读懂云计算 全球[VPS测评]
- 华凯易佰同比扭亏跨境电商行业回暖H2旺季将至中报追踪 全球[VPS测评]
- 跨境电商周报丨拼多多布局跨境电商平台;Shopify将推出新平台支持网红 全球[VPS测评]
- 买了一台云服务器到底能干什么? 全球[VPS测评]
- 阁天互联怎么样?香港cn2云服务器 圣何塞cn2vps仅20/月 香港VPS[主机]
- 手帕云,便宜小带宽香港CN2 VPS,集群10G防御,双向CN2直连,仅 香港VPS[主机]
- 咖啡主机:享受7、8折促销 美国vps仅需15.4元/月 香港vps仅需 美国VPS[主机]
- 速云互联:香港/美国CN2 GIA线路/BGP/10Mbps/全场八折, 美国VPS[主机]
- 易凡云:香港CN2 2核2G云服务器仅29.78元/月,357元/年 香港VPS[主机]
- 舍利云:香港美国vps云服务器/BGP线路元旦全场9折,低至36元/月 美国VPS[主机]
- RAKsmart促销活动:韩国服务器低价抢购,美国G口服务器低至$99, 韩国VPS[主机]
- 优网主机怎么样?香港云主机/美国云主机价格低至19元/月 美国VPS[主机]
- RAKsmart:E3服务器秒杀$30/月起,韩国服务器,香港/日本/美 站群服务器[IP]
- 95IDC :香港vps优惠活动,1核2G月付折后25元;香港物理机低至 香港VPS[主机]
- Hyocloud:愚人节,特惠+预售,香港BGP VPS/大带宽/大流量 香港VPS[主机]
- 香港云服务器对于建站有什么便捷的地方? 香港VPS[主机]
- Fatal error: Allowed memory size of 全球[VPS测评]
- 30个美容院抖音唯美文案,看到就直接拿去发吧 全球[VPS测评]
- 如何更改WHMCS默认后台路径让WHMCS系统更安全 全球[VPS测评]
- 腾讯云香港轻量应用服务器 优惠活动最低月付仅24元 香港VPS[主机]
- CombCloud,香港沙田CN2VPS测评,2核1G52元/月,安畅C 香港VPS[主机]
- 者也IO,香港日本美国云服务器促销,2核2G1000元/2年,7折+内存 日本VPS[主机]
转载请注明原文地址: http://140.238.13.167:12355/read-157236.html











