要是看不到文章的話,去我的QQ空間看,我的QQ號碼:362315062
圖片批量上傳管理系統asp版
本人經過兩個多月的艱苦努力,終於將該系統寫成了,中間走了很多岔路,不停的修正修改,現在將我的成果發布出來與大家共分享,由於本系統公司使用,所以不能夠貼代碼,如果誰想要了,那得等上一段時間了!大家也可以自己寫,我會將主要控制項地址貼出來。
先把給大家貼出來,讓大家先看下:
我的系統分為三大板塊:
1.首先是後台板塊
這就是後台了,看著很簡單,其實很複雜,實現了後台板塊遞迴式添加,可以無限加下去(當然是理論上的,你沒事加那多板塊幹嘛),可以對板塊進行修改,添加,刪除等等操作,然後是看後面的添加圖片。
2.下面就是添加圖片板塊了,這是整個系統的核心,批量圖片上傳,我沒見asp有這種功能,本來想自己寫一個的,思路太複雜。這個控制項是開源的,我將地址貼出來(http://www.access2008.cn/update/)
這是列表圖片添加介面,介面很生動,功能很強大,有很大的排錯功能,當然了同時的還有很大的出錯功能,使用的是一個FLASH控制項,本人建議不會asp+flash的不要修改背景代碼了,不熟悉的也不要改了,不然會有很大的麻煩,大家看到上面的連結了沒有,當然是跳轉用的(廢話),關鍵看第三個“圖片模式”,嘿嘿,由此可以得出一個結論這個介面還有一個按圖片上傳的介面(哈哈,更廢話了),現在貼出來
漂亮吧,我說的是控制項,雖然說美女也漂亮,但我們注重的是技術,這就是圖片列表模式的介面了,更加生動,更加形象,
排錯功能很強大,可以在後台自動建立檔案夾。不過就在這出了一點問題
大家可以看到,下面的編碼樣式出現了問題,我的編碼樣式是gb2312樣式的,然而控制項的編碼樣式是utf-8樣式的,所以在上傳之後就出現了這種現象,在後期的完善中會改正這個問題。
還有一個更大的問題,本控制項只能上傳,不能夠寫入資料庫,因此導致我們只是上傳了圖片了,但是卻不能夠處理資料,而任何開發就是需要對資料的處理。我在上面說過了,不會asp+flash的不要修改代碼,因為你改了也沒用,而本人,就是對flash只知道一點點的點點,不過我找到了一種折中的方法,正所謂條條大道通北京,程式員就是要有這種思維才行。好了不廢話了,我將我拐的方法給大家展示出來。
是不是很漂亮,這裡我先用asp的fso控制項將檔案夾中的圖片全讀取出來,然後直接寫入資料庫,再在此頁面中顯示出來,然後我們就可以對圖片進行處理了,這裡我大量採用了js技術,還有jquery技術,所以建議大家多學點東西吧。
這是滑鼠移動上去的效果,可以進行編輯,和刪除,點擊刪除會彈出一個提示,就不貼了,點確定後就可以刪除,取消就不刪除。
點編輯後出現編輯頁面,這是這個版塊的核心
很漂亮的一個jquery控制項,會封閉首頁,展示提示頁,這個相當於在頁面中有了一個iframe,向其中傳遞參數,這個很重要,因為後面的很多功能使用此技術都可以達到事半功倍的效果,可以在其中寫參數,點擊確定後,就會存入到資料庫中,由於資料庫中已經有了這些圖片的資訊,所以提交的屬於修改,不是插入。
還有一點要注意,那就是分類的傳遞,由於我的圖片是按照分類存的,所以分類的傳遞貫穿始終,但是這些頁面並不都是asp的還有靜態頁面,所以我使用了一個js的函數,這是代碼:
function
shides(){
function request(paras){
var url = location.href;
var
paraString = url.substring(url.indexOf("?")+1,url.length).split("&");
var paraObj = {}
for (i=0; j=paraString[i]; i++){
paraObj[j.substring(0,j.indexOf("=")).toLowerCase()] =
j.substring(j.indexOf("=")+1,j.length);
}
var returnValue =
paraObj[paras.toLowerCase()];
if(typeof(returnValue)=="undefined"){
return "";
}else{
return returnValue;
}
}
使用的時候 request("你要傳遞的參數名") 是不是跟asp 一樣,不過一定要注意,這不是asp,而是js,一定要在js 裡面寫。
我寫的批量上傳到這裡就完了,當然在開發過程中還有很多問題,我這沒有寫,因為忘了,將主要思路貼出來,有興趣的可以一同研究研究。剩下的就是美化下了,等公司可以公布的時候將代碼全部貼出來。完事了!