2011-08-08 103 views
2

enter image description here獲取服務器上的文件的客戶端上傳路徑

後,我想知道所選文件的真實路徑。就像我上傳的圖像。我想知道F:\ ubuntu \ Ubuntu.ico

這是我的代碼:

<pre> 
<?php 
print_r($_FILES); 
?> 
</pre> 

<form method="post" action="" enctype="multipart/form-data"> 
    <input type="file" name="fupload" id="fupload" /> 
    <input type="submit" value="Upload" /> 
</form> 

Output: 

Array 
(
    [fupload] => Array 
     (
      [name] => Ubuntu.ico 
      [type] => image/x-icon 
      [tmp_name] => D:\xampp\tmp\php89.tmp 
      [error] => 0 
      [size] => 1150 
     ) 

) 
+2

我認爲這不可能(由於隱私/安全原因)來獲取客戶端計算機的真實路徑。 – Veger

+0

您可以在下面創建一個附加文本字段,並要求用戶輸入文件的實際路徑。 – hakre

+0

您知道用戶在哪裏保留他們正在上傳的文件副本的用例是什麼? – Quentin

回答

4

你無法知道客戶端系統上的完整路徑。大多數瀏覽器根本不會將這些信息暴露給網頁。提供該信息可以揭示關於客戶端系統的信息(例如,用戶名,已安裝的軟件包)以及知道該路徑的服務器的用例非常少見。

+0

編號瀏覽器阻止DOM中的信息(與提交表單時不會將其發送到服務器的原因完全相同)。 – Quentin

0

是否有相關文件?因爲如果省略了enctype(使用默認值)並執行print_r($ _ POST),則會得到全名,因爲type = file被管理爲type = input

+0

至少,這是多年以前 –

+0

對不起,很多人在這裏說,依賴於瀏覽器,我想,我不記得,我用IE3選擇內部網上的共享文件,所以沒有必要上傳文件,只是爲了指向它。 @Quentin,fyi –

相關問題