![]() ![]() ![]() ![]() |
|||||
|
|||||
樓主 KKMAN ![]()
![]() |
看了網路上很多文章過後,擷取以下程式碼。 但為了配合使用者,在讀取file部分需要使用到fileupload的元件。 可是,卻無法取得client端的完整路徑, 不知道各位大大是否有何種方法可以取得此路徑!!?? 已經試過"FileUpload1.PostedFile.FileName"這個方式。 不過,經過測試,只有IE6才有支援,其餘瀏覽器皆已只顯示"filename"。 不知各位大大有甚麼好的解決方式。請指教! 此為aspx檔。 此為VB檔 目前卡住的點在於,file無法抓取完整路徑。
== 簽名檔 ==
取之於網路、用之於網路。 回答你的問題,也是我自己變強的一條路。 但若回答錯了還請見諒指教。 |
1樓 |
為什麼你需要 "使用者所上傳的檔案...的所在目錄"
本篇文章回覆於2010-08-16 20:10
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
2樓 |
基於安全性都會封鎖.
除非自己寫ActiveX, 不然要想其他方式替換.
本篇文章回覆於2010-08-17 09:15
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
3樓 |
我自己測試:
Response.Write(FileUpload1.FileName) → 只取得檔名 Response.Write(FileUpload1.PostedFile.FileName) → 取得完整的路徑和檔名 瀏覽器 IE8
本篇文章回覆於2010-08-17 10:26
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
4樓
作者回應
KKMAN ![]() |
回小羊:因為我上傳至FTP的檔案需要檔案路徑。
回雲大:ActiveX是怎麼運作的呀!?
本篇文章回覆於2010-08-17 10:28
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
5樓
不錯的參考
小羊窒息 ![]() ![]() |
我的疑問是...
如果我今天上傳的檔案有... C:\windows\system32\xxx.dll D:\myBook\myShop\myMove\ABC.txt Z:\abc\123.zip 那, 你真的要把檔案放在 C:\windows\system32\ 嗎? 如果你沒有 Z: 呢? 如果使用者是用Linux平台選擇檔案... 路徑會變成 \etc\dev\xxxxxxx 那你要存在哪裡?
本篇文章回覆於2010-08-17 12:06
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
6樓
不錯的參考
hunterpo ![]() ![]() |
我也想不透為什麼需要 Client 端的完整檔案路徑...,這對 FTP Server 端根本就無關緊要不是嗎?...
一般 FTP Server 的管理策略可能是依照登入者分別上傳到各自的資料夾,又或者依檔案類型分開存放, 對應 Client 端的完整檔案路徑來存放的作法實在未曾看過...
本篇文章回覆於2010-08-17 16:21
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
7樓
作者回應
KKMAN ![]() |
感謝各位大大的回應。
說實話,小弟目前也有點對於需要client端路徑產生疑惑。 會如此問的原因是,小弟在測試過後會於client端的完整路徑會成功。 所以,在此發問。 也請各位指教指教。 function Upload程式碼皆相同。故不再重覆。 所以,小弟好奇是否是無法抓取到fileupload在client端的完整路徑。 不知道,以上的回覆是否可以讓各位大大更加理解我想訴說的問題點。
本篇文章回覆於2010-08-17 17:12
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
8樓
作者回應
KKMAN ![]() |
忘記說明我的程式期望的功能。
1.User上傳檔案時,我除了將檔案上傳以外,同時將檔案存放路徑儲存在資料庫;並且加一組識別碼給這個檔案也存放在資料庫。 2.User要下載檔案時,直接給對方識別碼,在我得到識別碼號,與資料庫做比對,取出檔案路徑並且供使用者下載。 不知這功能導向,對於我目前的做法對否。 有點像7-11 I-bone線上檔案上傳後取得取件碼,在至7-11的i-bone輸入取件碼即可得到檔案的做法。
本篇文章回覆於2010-08-17 17:19
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
9樓
最有價值解答
小羊窒息 ![]() ![]() |
你的問題是發生在...使用者上傳檔案時, 你並沒有儲存在Server的硬碟中..
例如: 我上傳了 D:\abc.zip 這時你必須先把 abc.zip儲存在Server的C:\temp\abc.zip 也就是說, file = "C:\temp\abc.zip" 然後再把執行 Upload(file, "ftp://ms.ntcb.edu.tw/www/", "s9056021", "9115") 這樣才能上傳到FTP
本篇文章回覆於2010-08-17 19:39
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
10樓
不錯的參考
天叢雲 ![]() ![]() |
你的流程改為三步驟:
1.先上傳到主機的目錄下. 2.利用主機的Server.MapPath取得主機的完整路徑,再用Upload由主機傳至ftp. 3.刪除主機的檔案.
本篇文章回覆於2010-08-18 09:58
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
11樓
不錯的參考
Alex ![]() |
你的主機存放位置可以設定在web.config裡呀.
Client端的路徑你應不需要知道呀. 大約作法參考: 1.設定主機的存放目錄在web.config.比如 2.在要upload時,必須要加上 path (這是主機的存放目錄) & file 這樣你才可以上傳成功到主機上 3.識別碼是由你自己產生的,並且在資料庫有對應的資料,比如 識別碼=123 路徑=c:\webroot\files 檔名=123.jpg 這樣子對應到123時就可以取出檔案來下載了.
本篇文章回覆於2010-08-18 14:37
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
12樓 |
FileUpload.PostedFile.FileName;//完整路徑
FileUpload.FileName;//檔案名稱 應該只有這兩個分別
本篇文章回覆於2012-03-30 15:38
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
回覆 |
如要回應,請先登入. |