2012-01-09 80 views
2

背景:我和我的兩位同事都在我們的計算機上有一個名爲C:\ Synkade filer的文件夾。因此,任何存在的文件,我們都可以訪問。如何打開位於本地c盤的pdf文件

現在我已經創建了一個保存路徑對本地文件夾的文件的小MySQL數據庫,比如C:\ Synkade文件管理器\ pdffiles \ file1.pdf

PHP腳本我做了沒有將新文件上傳到 * C:\ Synkade filer \ pdffiles *並將路徑信息保存到MySQL中的問題。 這個想法是,當我點擊一個小的PDF圖標時,PHP腳本將從MySQL獲取路徑信息並在瀏覽器(firefox)上打開該文件。 說在MySQL的路徑信息是:C:// Synkade濾波器/ pdffiles/file1.pdf 的檢索碼是:

<a href="' . $row['fup']. '"><img src="./images/pdf_icon.gif" width="16" height="16" border="0" alt="PDF file" /></a>

,其中$行[ 'FUP']是來自MySQL的行信息。

問題是這不起作用。是否因爲該文件位於本地驅動器(C :)上?

之前你問:爲什麼不上傳我的網絡服務器上的文件?答案是我寧願不要。 PDF文件確實有我們三個人只能看到的敏感信息。所以感覺更好,PDF文件只能在我們自己的電腦上訪問。關鍵還在於,如果其他人試圖打開PDF文件,它很容易找不到它,因爲它不會存在於他/她的設備上。

所以我的問題是:有沒有辦法讓本地驅動器的文件訪問工作。這是一個腳本問題還是這是一個計算機配置問題?

我需要說這是我的第一個PHP-MySQL數據庫,所以我的知識是有限的。我很感激我能得到的任何幫助。

回答

3

使用file:///在文件路徑的前面。

http://www.w3schools.com/html/html_url.asp

例如:

<a href="file:///' . $row['fup']. '"><img src="./images/pdf_icon.gif" width="16" height="16" border="0" alt="PDF file" /></a> 
+0

您好馬蒂厄迪穆蘭! 說MySQL保存的路徑信息是:** C:// Synkade filer/pdffiles/file1.pdf **。 然後,當我將鼠標移到pdf圖標上時,您的建議將生成:** file:/// C:// Synkade filer/pdffiles/file1.pdf **。但是當我點擊它時什麼都沒有發生。沒有錯誤信息,沒有任何東西! 這是別的我失蹤了嗎?事先感謝! – user1138626 2012-01-09 21:12:21

+0

爲什麼你有C://,它應該是c:/ – 2012-01-09 21:24:42

+1

路徑名中的空格會讓你難過。請看我上面關於「urlencode()」的建議。是的,它應該是「file:/// C:/xyz/myfile.pdf」,而不是「C://」。這是另一個好鏈接:http://stackoverflow.com/questions/2678551/when-to-encode-space-to-plus-and-when-to-20 – paulsm4 2012-01-09 21:28:26