码迷,mamicode.com
首页 > 其他好文 > 详细

图片处理

时间:2018-08-01 14:12:09      阅读:137      评论:0      收藏:0      [点我收藏+]

标签:ted   png   upload   span   result   cto   user   multi   onclick   

* MVC图片

见博客https://blog.csdn.net/shan1774965666/article/details/51302087

  注:数据中可以存储图片,但是需要注意不能直接存储图片,而是转换成二进制或者Base64等的“文本”来存储,在用的时候,可以再转换回来。
               在网站开发中,一般将图片存储在文件系统中,而不是数据系统中,数据库系统中只记录图片在文件系统中的路径而已。

  缺点:如果数据库中只存文件路径,那么定时删除的只是路径,图片还在系统中保存

       如果是转成二进制存储,存入和读取比较麻烦,浪费资源。

 实现思路大概分为两步:

1. 通过上传接口,将图片上传到服务器,返回文件路径给客户端;

2. 点击保存上传,将文件路径保存到数据库,如果是多张图片,路径用逗号分隔。

1.  上传保存

技术分享图片
<div class="panel-body">
    <form action="/db/Uploading" method="post" enctype="multipart/form-data">
        <input type="file" name="file1"/>
        <input type="submit"value="submit"/>
    </form>
</div>
html
技术分享图片
   [HttpPost]
        public ActionResult Uploading()
        {
            if (Request.Files.Count > 0)
            {
                //得到选择上传的图片
                HttpPostedFileBase f = Request.Files["file1"];
                if (f != null && f.ContentLength > 0)
                {
                    //文件大小
                    if (f.ContentLength > 5242880)
                        return Content("<script>alert(‘错误提示:文件大小超出指定范围!‘);</script>");

                    string fileName = f.FileName;

                    //文件扩展名
                    string ext = fileName.Substring(fileName.LastIndexOf(.)).ToLower();
                    if (ext == ".jpg" || ext == ".png")
                    {
                        //与 Web 服务器上的指定虚拟路径相对应的物理文件路径
                        string path = Server.MapPath("~/img");
                        if (!Directory.Exists(path))
                            Directory.CreateDirectory(path);

                        //重新构建文件名
                        fileName = DateTime.Now.ToFileTime().ToString() + Guid.NewGuid().ToString("N") + ext;

                        //保存文件到项目
                        var picPath = Path.Combine(path, fileName);
                        f.SaveAs(picPath);
                    }
                    else
                        return Content("<script>alert(‘错误提示:上传的文件格式不正确!‘);</script>");
                }
                else
                    return Content("<script>alert(‘错误提示:上传的文件是空文件!‘);</script>");
              
                //将图片保存到本地
                f.SaveAs(@"C:\Users\17612\Desktop\"+ f.FileName);
            }
            return Json(1);
        }
后台代码

 

图片处理

标签:ted   png   upload   span   result   cto   user   multi   onclick   

原文地址:https://www.cnblogs.com/SmileSunday/p/9400383.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!