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

首頁 > 學院 > 開發(fā)設(shè)計 > 正文

如何使用ASP建立虛擬的FTP服務(wù)器

2019-11-18 19:30:26
字體:
供稿:網(wǎng)友

  在asp中采用組件無組件上傳技術(shù),均可以實現(xiàn)文件的上傳功能。由此我們可以采用ASP的無組件上傳技術(shù),在我們自己的網(wǎng)站上建立一個虛擬的FTP服務(wù)器,象真正的FTP服務(wù)器一樣,為多個用戶提供遠程文件的管理,同時各個用戶只能操作自己的文件。

  當文件上傳的時候,ASP可以采用fso數(shù)據(jù)庫方式來保存文件數(shù)據(jù)(有些服務(wù)器并沒有提供FSO功能)。這里我采用數(shù)據(jù)庫來保存用戶所上傳的文件,采用數(shù)據(jù)庫的優(yōu)點我就不說了,總之很多。還有一個原因就是IIS限制了文件上傳的大小(大概最大200KB吧),使用數(shù)據(jù)庫方式可以采用續(xù)傳技術(shù)突破這個限制,可以上傳很大的文件,很大很大,無限大,……。

*****************
(哈哈,廢話講了一大堆,下面先講講實現(xiàn)的原理和方法,然后再講使用軟件實現(xiàn)的方法)
*****************

● 第一步:在服務(wù)器上建立一個數(shù)據(jù)庫(access、SQL-SERVER、MySQL均可以),簡單一點就ACCESS吧。數(shù)據(jù)庫內(nèi)建立兩個表:
  上傳用戶管理用:admin(ID, Name, PassWord, Type)
  保存上傳文件數(shù)據(jù):files(ID, ParentID, FileName, FileLength, FileType, FileData, UpDate, UserID)。
  如果FileLength=0,則表示其為文件夾,并且為每個用戶建立一個根文件夾。

● 第二步:建立用戶登陸頁面,并使用session將用戶的ID保存起來,用于限制其對文件的操作。
  Session("Name") = list("SName")
  Session("UID") = list("ID")

● 第三步:建立用戶主頁面(顯示用戶上傳過的文件)
  strSQL = "SELECT * FROM files WHERE ParentID=" & userRootID ' userRootId 為用戶根文件夾的ID
  strSQL = strSQL & " AND UserID=" & SESSION("UID")
  strSQL = strSQL & " ORDER BY FileName"

● 第四步:上傳文件頁面
  list.AddNew
  list("ParentID") = userRootID
  list("FileName") = Form("Name")
  list("FileLength") = Form("Length")
  list("FileType") = Form("Type")
  list("FileData").AppendChunk MidB(sdata,Form("Start"),Form("Length"))
  list("UserID") = Session("UID")
  list("UpDate") = Now()
  list.Update

● 第五步:文件管理操作(使用文件的ID對文件進行表識,并且對用戶的操作進行限制)
  刪除:"DELETE * FROM files WHERE ID=" & iID & " AND UserID=" & Session("UID")
  下載:"SELECT * FROM files WHERE ID=" & iID & " AND UserID=" & Session("UID")

Set conn = Server.CreateObject("ADODB.Connection")
conn.Open myConnStr
Set list = conn.Execute("SELECT * FROM files WHERE ID=" & iID & " AND UserID=" & Session("UID"))
If NOT list.EOF Then
If list("FileLength") > 0 Then
  Response.AddHeader "Content-disposition", "inline; filename=" & list("FileName")
  Response.ContentType = list("FileType")
  Response.Binarywrite(list("FileData").GetChunk(list("FileLength")))
End If
End If

● 再完成一些其他的輔助操作頁面即可。當然由于瀏覽器的限制,文件上傳的續(xù)傳技術(shù)不能直接使用,只能通過客戶端軟件來實現(xiàn)。網(wǎng)絡(luò)上有個軟件叫“上傳文件管理器”(包含ASP源代碼),實現(xiàn)了上面的功能。下面我們將討論如何利用這個軟件來建立我們自己的虛擬FTP服務(wù)器。

軟件下載地址:http://www.blue999.com/webfiles/uploadfiles_setup.exe

***************
(很復(fù)雜吧,簡單點,下面看一下使用“上傳文件管理器”實現(xiàn)虛擬FTP服務(wù)器的方法)
***************

● 1、下載軟件安裝后,將隨軟件提供的ASP文件使用FTP軟件上傳到網(wǎng)站上(如上傳到 webfiles 下)

● 2、執(zhí)行客戶端軟件,并將服務(wù)器路徑設(shè)置成上傳的文件夾,超級管理員的用戶名和密碼均為 admin

● 3、進行用戶管理,添加、刪除、修改、啟用/禁用、限制用戶上傳文件的大小

● 4、OK, 虛擬FTP服務(wù)器建立完畢,所有用戶均通過該軟件(在客戶端)對自己的文件進行管理。軟件的操作方式與資源管理器類似。

● 5、該軟件還提供了一些應(yīng)用實例的ASP源碼,大家自己去看好啦。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 大城县| 麦盖提县| 平陆县| 斗六市| 苍南县| 容城县| 合川市| 海晏县| 弥渡县| 政和县| 镇宁| 桐乡市| 南昌市| 余干县| 平南县| 吴忠市| 乐至县| 新河县| 侯马市| 社会| 大关县| 永仁县| 河间市| 松潘县| 麟游县| 武隆县| 东城区| 东台市| 阳山县| 靖远县| 鹤峰县| 锦屏县| 鄂温| 承德市| 府谷县| 营山县| 正阳县| 阿坝| 凤城市| 即墨市| 龙山县|