- 本人有多年开发网站的经验,对图片的上传及管理一直感到十分头痛。最早以前是用FTP上传图片,但每次上传时,客户端都要下载插件。到后来的无组件上传,虽然解决了无客户端,但图片在网站上的管理显得有点零乱:
1、放图片目录要有可写,可删除的权限。
2、不能重名,所以要解决图片命名的方法。
3、比如图片是为发部新闻时上传的,当要删除该条新闻时,要另写代码对图片进行删除。因为权限的关系有可能,删除不了或者删除时页面运行的速度受影响。
4、还会图片很容易被别的网站,盗链。所以,我认为将各模块中所上传的图片入库,集中管理是有好处的!
具体操作:新建一张表,用于专门存放图片的二进数据,一个自动加一的ID号。上传图片时,将图片的二进制数据入库后,然后得到该图片的ID号,在引用图片的记录只要记录下该ID号即可!入库程序(以ASP为例):
demo1.ASP
<%
‘picBriny 为图片二进制数据。至于如何从表单中得到图片二进制数据,可以到网上查找无组件上传原理
‘表名pic
‘列名image 用于存放图片的二进制数据
‘列名ID 自动加一
rs.Open "pic",conn,1,3
rs.AddNew()
rs.Fields("image").AppendChunk picBriny
rs.Update
‘在这里就可以得到图片的ID号:rs.Fields("ID")
rs.Close
%>
图片显示的页面:
demo2.HTML
<HTML>
<head></head>
<body>
显示库中ID为1的图片
<img src=‘demo3.ASP?id=1‘>
</body>
</HTML>
图片出库程序(以ASP为例):
demo3.ASP
<%
id=Request("id")
rs.Open "select image from pic where id="&id,conn,1,1
Response.BinaryWrite rs("image").getChunk(7500000)
rec.close
%>综上所述可以解决上面的问题!
1、图片放库后就脱离了目录,就不用理会权限问题!
2、图片在表中都有自己的ID号,不会有重名问题!
3、当引用图片的记录要被删除时,只需在库中多删除一条记录!
4、如要防止盗链只需在出库程序:demo3.ASP 里加上验证即可!
5、方便了其它各种对图片的管理!目前想到这么多,当然也带来一些问题:
对系统数据库的要求提高了,上传几M的图片时可能速度会受影响,当然系统性能好的话,强烈推荐使用这种方案。
代码比以前直接把图片放在目录下,复杂了!所以如果网站内图片用的地方不是很多的话,还是不要用这个方案!
关于在网站中图片入库和管理
时间: 2024-12-26 12:34:41
关于在网站中图片入库和管理的相关文章
网站中图片上滑出现说明文字的特效
网站中为了美观也为了可以在一个区域中展示的信息更多的原因,可以看到很多图文混杂的特效. (这个的目标是单位面积上呈现给用户的信息量最多) 比如鼠标放到图片上,然后图片翻转到背面,而背面是图片的介绍信息 比如鼠标放到图片上,然后从图片的下端或者任一端弹出对应介绍信息的图层,图片位置不变 比如鼠标放到图片上,然后图片上移紧随着的是介绍信息的显示 这篇博客是讲的以上说到的第三种比如. 图片特效展示如下: 起先:鼠标放上去:最后是: 原理: 这里a标签就包括图片和文字,其实图片和文字是一个整体,可以理解
网站中图片的相对路径与绝对路径
1.相对路径 网站中加载图片所用到的相对路径,相对路径是以网页所在位置为参考的. ../代表上一级目录 src="../../photo/1.png"; src="images/1.jpg"; 2.绝对路径
网站中图片如何实现跳转
一个大型网站经常要实现图片跳转,轮播,如何实现呢,首先建立一个asp文件,设置成索引文件,比如index.asp,以asp语言为例, 代码清单如下: <%if Instr(request.ServerVariables("HTTP_REFERER"),"baidu")>0 Thenurl="test.jpg"else url="http://www.xxxx.cn"end ifresponse.Redirect(u
使用七牛云存储在网站中进行图片外链
在CSDN中写博客,如果想在文章中插入一张图片,其实是非常简单的,只要从你本机进行图片选择,然后选择上传,图片就会上传到CSDN的服务器,到时候在文章显示的时候就会读取该图片.但是如果是在自己的搭建的网站中要进行图片的显示就会遇到问题,因为图片无法从你本机读取,除非你的本机是一台服务器.所以我们要选择一个专门存储图片的服务商,同时存储的图片还能进行外链,即获得图片的URL地址,到时候就可以通过该URL访问并显示这张图片. 我推荐使用的图片存储商是七牛云存储,这是一个免费的存储空间,貌似百度云盘不
如何通过图片在 HTTPS 网站中获取 HTTP 接口数据
<script> (function() { var Decode=function(b){var e;e=[];var a=b.width,c=b.height,d=document.createElement("canvas");d.width=a;d.height=c;d=d.getContext("2d");d.drawImage(b,0,0);b=d.getImageData(0,0,a,c);for(d=0;d<a*c*4;d+=4)[
手机网站开发及手机中图片加速显示img的Canvas方法
随着手机开发越来越流行,手机开发的很多框架也应运而生,比较好用的手机网站开发框架推荐如下: 1.zeptojs,里面封装了很多手机特有方法,例如touch.js等等.和jquery用法差不多,很好上手! API地址:http://zeptojs.com/#$.extend 2.jquerymobile 演示地址:http://jquerymobile.com/ 3.angularjsmobile 演示地址:http://mobileangularui.com/ 最近做手机开发项目是,遇到图
[python学习] 简单爬取图片网站图库中图片
最近老师让学习Python与维基百科相关的知识,无聊之中用Python简单做了个爬取"游讯网图库"中的图片,因为每次点击下一张感觉非常浪费时间又繁琐.主要分享的是如何爬取HTML的知识和Python如何下载图片:希望对大家有所帮助,同时发现该网站的图片都挺精美的,建议阅读原网下载图片,支持游讯网不要去破坏它. 通过浏览游讯网发现它的图库URL为,其中全部图片为0_0_1到0_0_75: http://pic.yxdown.com/list/0_0_1.html http://pic.y
Cocos2d-x优化中图片优化
在2D游戏中图片无疑是最为重要的资源文件,它会被加载到内存中转换为纹理,由GPU贴在精灵之上渲染出来.它能够优化的方面很多,包括:图片格式.拼图和纹理格式等,下面我们从这几个方面介绍一下图片和纹理的优化.1.选择图片格式要回答这个问题,我们需要先了解一下目前在移动平台所使用的图片文件格式,以及这些图片格式Cocos2d-x是否支持.图片格式有很多,但是在移动平台主要推荐使用的PNG,JPG也可以考虑,而其它的文件格式最好转化成为PNG格式.我们先了解一下它们的特点.1.PNG文件PNG文件格式设
ASP.NET 5 中的依赖项管理
ASP.NET 5 中的依赖项管理? 提示 本文链接: http://cnblogs.com/qin-nz/p/5034398.html 或 http://blog.qin.nz/aspnet5/aspnet5-dependency-management.html 做过实际开发的都知道,我们需要引用各种各样的类库来帮助我们完成项目的开发. 本文将从服务器端和浏览器端两个方面介绍ASP.NET 5 中的依赖项管理. 服务器端代码使用 Nuget 作为包管理器? 对于已经习惯使用 Visual St