uploadify插件上传图片怎么预览,路径怎么保存到数据库

luchaoyi2011 2014-10-24 01:06:16
详细的说一下,我有一个内容添加的页,图片用uploadify上传,但是这里有个问题,上传的图片在本地的文件夹里已经有了,而visualstudio项目下的文件夹里却没有,这合理吗?然后就是上传成功后怎样能够预览图片。然后我要将上传图片的路径保存到我数据库内容表的一个字段中,然后能在另一个内容修改页中预览然后修改,怎么弄。新手提问,越详细越好,多多包涵。
        $(function () {
$("#uploadify").uploadify({
//指定swf文件
'swf': 'uploadify/uploadify.swf',
//后台处理的页面
'uploader': 'UploadHandler.ashx',
//按钮显示的文字
'buttonText': '上传图片',
//显示的高度和宽度,默认 height 30;width 120
//'height': 15,
//'width': 80,
//上传文件的类型 默认为所有文件 'All Files' ; '*.*'
//在浏览窗口底部的文件类型下拉菜单中显示的文本
'fileTypeDesc': 'Image Files',
//允许上传的文件后缀
'fileTypeExts': '*.gif; *.jpg; *.png',
//发送给后台的其他参数通过formData指定
//'formData': { 'someKey': 'someValue', 'someOtherKey': 1 },
//上传文件页面中,你想要用来作为文件队列的元素的id, 默认为false 自动生成, 不带#
//'queueID': 'fileQueue',
//选择文件后自动上传
'auto':false,
//设置为true将允许多文件上传
'multi': true,
'onSelectError': function (file, errorCode, errorMsg) {
switch (errorCode) {
case -100:
alert("上传的文件数量已经超出系统限制的" + $('#file_upload').uploadify('settings', 'queueSizeLimit') + "个文件!");
break;
case -110:
alert("文件 [" + file.name + "] 大小超出系统限制的" + $('#file_upload').uploadify('settings', 'fileSizeLimit') + "大小!");
break;
case -120:
alert("文件 [" + file.name + "] 大小异常!");
break;
case -130:
alert("文件 [" + file.name + "] 类型不正确!");
break;
}
},
//检测FLASH失败调用
'onFallback': function () {
alert("您未安装FLASH控件,无法上传图片!请安装FLASH控件后再试。");
},
//上传到服务器,服务器返回相应信息到data里
'onUploadSuccess': function (file, data, response) {
//alert(data);
}
});
});

后台处理程序
        public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
//接收上传后的文件
HttpPostedFile file = context.Request.Files["Filedata"];
//其他参数
//string somekey = context.Request["someKey"];
//string other = context.Request["someOtherKey"];
//获取文件的保存路径
string uploadPath =
HttpContext.Current.Server.MapPath("images" + "\\");
//判断上传的文件是否为空
if (file != null)
{
if (!Directory.Exists(uploadPath))
{
Directory.CreateDirectory(uploadPath);
}
//保存文件
file.SaveAs(uploadPath + file.FileName);
context.Response.Write("1");


}
else
{
context.Response.Write("0");
}




}




public bool IsReusable
{
get
{
return false;
}
}
...全文
407 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaozai_1965067409 2014-10-25
  • 打赏
  • 举报
回复
上传图片保存到指定路径文件夹并显示图片示例 //保存上传图片并显示 protected void btnUp_Click(object sender, EventArgs e) { if (fupImg.PostedFile.FileName.ToString() == "") { Response.Write(sdobj.MessageBoxPage("请选择要上传的图片!")); } else { Name = txtName.Text; //定义上传路径(在当前目录下的uploadfile文件下) string uploadpath = this.Server.MapPath("imgHead");// //取得文件名 string tmpfilename = fupImg.FileName; // //文件名 //filename = tmpfilename.Substring(tmpfilename.LastIndexOf("\\") + 1); string filename = tmpfilename.Replace(tmpfilename.Substring(0, tmpfilename.LastIndexOf(".")), Name); //调用生成缩略图程序,生成缩略图及生成写字的图片 this.toImage(fupImg.PostedFile.InputStream, uploadpath, filename); //求取后缀名 imgpath = "imgHead/" + filename; //string suffix = filename.Substring(filename.LastIndexOf(".")); //显示图片 this.ImageHead.ImageUrl = imgpath; } } 生成缩略图 private void toImage(Stream myStream, string uploadPath, string picName) { //取得后缀名 string suffix = picName.Substring(picName.LastIndexOf(".")); //缩略图的保存路径 string fileXltPath = uploadPath + "\\" + picName.Replace(suffix, suffix); //创建一个图像对象取得上传图片对象 System.Drawing.Image myImage = System.Drawing.Image.FromStream(myStream, false); //对绘制前的图片产生一个缩略图(原图片一半大小) System.Drawing.Image thumbImage = myImage.GetThumbnailImage(80, 80, null, System.IntPtr.Zero); //保存缩略图 thumbImage.Save(fileXltPath, this.getImageFormat(suffix)); //关闭缩略图对象 thumbImage.Dispose(); }//codego.net/tags/1/1/ //能够上传的图片文件格式类型 private System.Drawing.Imaging.ImageFormat getImageFormat(string suffix) { System.Drawing.Imaging.ImageFormat myFormat; switch (suffix.ToLower()) { case ".bmp": myFormat = System.Drawing.Imaging.ImageFormat.Bmp; break; case ".emf": myFormat = System.Drawing.Imaging.ImageFormat.Emf; break; case ".exif": myFormat = System.Drawing.Imaging.ImageFormat.Exif; break; case ".gif": myFormat = System.Drawing.Imaging.ImageFormat.Gif; break; case ".icon": myFormat = System.Drawing.Imaging.ImageFormat.Icon; break; case ".jpeg": case ".jpg": myFormat = System.Drawing.Imaging.ImageFormat.Jpeg; break; case ".png": myFormat = System.Drawing.Imaging.ImageFormat.Png; break; case ".tiff": myFormat = System.Drawing.Imaging.ImageFormat.Tiff; break; case ".wmf": myFormat = System.Drawing.Imaging.ImageFormat.Wmf; break; default: myFormat = System.Drawing.Imaging.ImageFormat.MemoryBmp; break; } return (myFormat); } //显示用户的详细信息 protected void bindUserInfo() { //编写SQL语句查询当前登录用户的详细信息 string sqlSel = "select * from tb_HuenLian where UserName='" + Session["UserName"].ToString() + "'"; //调用公共类中的getRow方法并接收返回的SqlDataReader对象 SqlDataReader sdr = operateData.getRow(sqlSel); //读取一条数据 sdr.Read(); txtName.Text = sdr["UserName"].ToString(); imgpath = sdr["Images"].ToString(); //显示用户的图片 ImageHead.ImageUrl = imgpath; //显示用户的留言 sdr.Close(); } //获取用户修改后的详细信息并保存到数据库中 protected void btnAmend_Click(object sender, EventArgs e) { //获取当前用户名 string UserName = Session["UserName"].ToString(); //编写SQL语句更新用户的详细信息 string sqlUp = "insert into tb_HuenLian(UserName,imgpath)values('" + Images + '" , '" + imgpath + "')"; if (operateData.execSql(sqlUp)) { this.Page.ClientScript.RegisterStartupScript(this.GetType(), "", "alert('修改成功!');", true); //调用自定义方法重新显示用户信息 bindUserInfo(); } else { this.Page.ClientScript.RegisterStartupScript(this.GetType(), "", "alert('修改成功!');", true); } }
luchaoyi2011 2014-10-24
  • 打赏
  • 举报
回复
引用 1 楼 insus 的回复:
try it: http://zzk.cnblogs.com/s?w=blog%3Ainsus%20uploadify
我的是web,你都是mvc,看不懂。。。
insus 2014-10-24
  • 打赏
  • 举报
回复

62,050

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧