2012-01-09 46 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