0

我创建了一个小的 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/xamppfiles/htdocs/xampp/xamppfiles
  • [Thu Jul 18 01:15:14 2013] [error] [client ::1] 文件不存在:/Applications/XAMPP/xamppfiles/htdocs/Applications,引用:localhost/learning/ListingFiles/file.php
  • [2013 年 7 月 18 日星期四 01:15:43] [错误] [客户端 ::1] 文件不存在:/Applications/XAMPP/xamppfiles/htdocs/Applications,引用者:localhost/learning/ListingFiles/file.php
  • [Thu Jul 18 01:17:13 2013] [error] [client ::1] 文件不存在:/Applications/XAMPP/xamppfiles/htdocs/Applications,引用:localhost/learning/ListingFiles/file.php
  • [2013 年 7 月 18 日星期四 01:39:04] [错误] [客户端 ::1] 文件不存在:/Applications/XAMPP/xamppfiles/htdocs/learning/ListingFiles/function.opendir,引用者:localhost/learning/ListingFiles/文件.php
4

2 回答 2

5

您的链接指向不正确。使用 xampp 时,链接应该相对于您的 htdocs 文件夹,而不是您的整个路径:

/Learning/ListingFiles/first.txt

请注意,如果您的网站在使用域的网络上,这将与您使用的链接路径相同。

它在您使用 file:: 时起作用,因为它明确指出该路径是您计算机上的文件。

于 2013-07-17T21:21:41.460 回答
1

尝试使用

$dir = "/Applications/XAMPP/xamppfiles/htdocs/learning/";

作为您的主要路径,其中包含文件。

这个完整路径或“../learning”应该让您进入文件的正确目录。

创建链接时,您需要使用“/learning/”+ 文件名来提供文件的路径。

谢谢,我的流

于 2013-07-17T22:34:25.510 回答