我创建了一个小PHP文件,它将目录中文本文件的名称显示为first.txt
、second.txt
、third.txt
。在点击任何文件时,我会得到错误"找不到对象"。
这不起作用:
localhost/Applications/XAMPP/xamppfiles/htdocs/Learning/ListingFiles/first.txt
但这是有效的:
file:///Applications/XAMPP/xamppfiles/htdocs/Learning/ListingFiles/first.txt
你能帮我理解出了什么问题吗?
这是我的代码:
<?php
$directory = '/Applications/XAMPP/xamppfiles/htdocs/Learning/ListingFiles';
if ($handle = opendir($directory.'/')){
echo 'Looking inside'.$directory.'<br>';
while ($file = readdir($handle)){
if ($file != '.'&&$file != '..'){
echo '<a href="'.$directory.'/'.$file.'">'.$file.'</a><br>';
}
}
}
?>
以下是日志文件的一些更新
- [2013年7月18日星期四01:06:57][错误][客户端::1]文件不存在:/Applications/XAMPP/examplepfiles/htdocs/examplep/examplepfiles
- 〔2013年7月18日星期四01:15:14〕〔错误〕〔客户端::1〕文件不存在:/Applications/XAMPP/examplepfiles/htdocs/Applications,referr:localhost/learning/ListingFiles/File.php
- 〔2013年7月18日星期四01:15:43〕〔错误〕〔客户端::1〕文件不存在:/Applications/XAMPP/examplepfiles/htdocs/Applications,referr:localhost/learning/ListingFiles/File.php
- 〔2013年7月18日星期四01:17:13〕〔错误〕〔客户端::1〕文件不存在:/Applications/XAMPP/examplepfiles/htdocs/Applications,referr:localhost/learning/ListingFiles/File.php
- 〔2013年7月18日星期四01:39:04〕〔错误〕〔客户端::1〕文件不存在:/Applications/XAMPP/examplefiles/htdocs/learning/ListingFiles/function.opendir,referr:localhost/learning/ListingFiles/File.php
您的链接指向不正确。使用examplep时,链接应该是相对于htdocs文件夹的,而不是整个路径:
/Learning/ListingFiles/first.txt
请注意,如果您的网站在使用域的网络上,这将是您使用的相同链接路径。
当您使用file::时,它会起作用,因为它明确表示路径是计算机上的一个文件。
尝试使用
$dir = "/Applications/XAMPP/xamppfiles/htdocs/learning/";
作为文件的主路径。
这个完整路径或"../learning"应该能让你找到正确的文件目录。
创建链接时,您需要使用"/elearning/"+filename来提供文件的路径。
谢谢,MyStream