国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > 綜合 > 正文

關(guān)于在網(wǎng)站中圖片入庫和管理!

2024-07-21 02:23:05
字體:
供稿:網(wǎng)友

本人有多年開發(fā)網(wǎng)站的經(jīng)驗,對圖片的上傳及管理一直感到十分頭痛。最早以前是用ftp上傳圖片,但每次上傳時,客戶端都要下載插件。到后來的無組件上傳,雖然解決了無客戶端,但圖片在網(wǎng)站上的管理顯得有點零亂:
  1、放圖片目錄要有可寫,可刪除的權(quán)限。
  2、不能重名,所以要解決圖片命名的方法。
  3、比如圖片是為發(fā)部新聞時上傳的,當要刪除該條新聞時,要另寫代碼對圖片進行刪除。因為權(quán)限的關(guān)系有可能,刪除不了或者刪除時頁面運行的速度受影響。
  4、還會圖片很容易被別的網(wǎng)站,盜鏈。

所以,我認為將各模塊中所上傳的圖片入庫,集中管理是有好處的!
具體操作:新建一張表,用于專門存放圖片的二進數(shù)據(jù),一個自動加一的id號。上傳圖片時,將圖片的二進制數(shù)據(jù)入庫后,然后得到該圖片的id號,在引用圖片的記錄只要記錄下該id號即可!

入庫程序(以asp為例):
demo1.asp
<%
'picbriny 為圖片二進制數(shù)據(jù)。至于如何從表單中得到圖片二進制數(shù)據(jù),可以到網(wǎng)上查找無組件上傳原理
'表名pic
'列名image 用于存放圖片的二進制數(shù)據(jù) 
'列名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、圖片放庫后就脫離了目錄,就不用理會權(quán)限問題!
2、圖片在表中都有自己的id號,不會有重名問題!
3、當引用圖片的記錄要被刪除時,只需在庫中多刪除一條記錄!
4、如要防止盜鏈只需在出庫程序:demo3.asp 里加上驗證即可!
5、方便了其它各種對圖片的管理!

目前想到這么多,當然也帶來一些問題:

對系統(tǒng)數(shù)據(jù)庫的要求提高了,上傳幾m的圖片時可能速度會受影響,當然系統(tǒng)性能好的話,強烈推薦使用這種方案。
代碼比以前直接把圖片放在目錄下,復雜了!所以如果網(wǎng)站內(nèi)圖片用的地方不是很多的話,還是不要用這個方案!



發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 固原市| 酒泉市| 侯马市| 公安县| 陇西县| 鹤庆县| 苍山县| 沽源县| 新建县| 逊克县| 乌恰县| 射洪县| 诏安县| 铜梁县| 香港 | 宁陵县| 水城县| 天镇县| 启东市| 东平县| 原阳县| 修文县| 延川县| 布拖县| 北碚区| 德兴市| 汤原县| 上杭县| 繁峙县| 大新县| 孝昌县| 太保市| 那坡县| 辉南县| 长寿区| 德昌县| 奉化市| 扬州市| 龙海市| 河西区| 山西省|