PHP error object not found

做~自己de王妃 提交于 2019-12-02 21:36:39

问题


I have created a small PHP file which displays the name of text files in a directory as first.txt, second.txt, third.txt. On clicking on any of the files I get the error "object not found".

This does not work:

localhost/Applications/XAMPP/xamppfiles/htdocs/Learning/ListingFiles/first.txt

But this works:

file:///Applications/XAMPP/xamppfiles/htdocs/Learning/ListingFiles/first.txt

Can you help me to understand what is wrong?

Here is my code:

<?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>';
        }
    }
}
?>

Following is some updates of log file

  • [Thu Jul 18 01:06:57 2013] [error] [client ::1] File does not exist: /Applications/XAMPP/xamppfiles/htdocs/xampp/xamppfiles
  • [Thu Jul 18 01:15:14 2013] [error] [client ::1] File does not exist: /Applications/XAMPP/xamppfiles/htdocs/Applications, referer: localhost/learning/ListingFiles/file.php
  • [Thu Jul 18 01:15:43 2013] [error] [client ::1] File does not exist: /Applications/XAMPP/xamppfiles/htdocs/Applications, referer: localhost/learning/ListingFiles/file.php
  • [Thu Jul 18 01:17:13 2013] [error] [client ::1] File does not exist: /Applications/XAMPP/xamppfiles/htdocs/Applications, referer: localhost/learning/ListingFiles/file.php
  • [Thu Jul 18 01:39:04 2013] [error] [client ::1] File does not exist: /Applications/XAMPP/xamppfiles/htdocs/learning/ListingFiles/function.opendir, referer: localhost/learning/ListingFiles/file.php

回答1:


Try using

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

as your main path with the files in it.

This full path or "../learning" should get you to the right directory to your files.

When creating a link you'll want to use "/learning/" + filename to give the path to the file.

Thanks, MyStream




回答2:


Your link doesn't point correctly. When using xampp, the link should be relative to your htdocs folder, not your entire path:

/Learning/ListingFiles/first.txt

Note, that this would be the same link path you would use if your website were on the net using a domain.

It works when you use file:: because that explicitly states that the path is a file on your computer.



来源:https://stackoverflow.com/questions/17710389/php-error-object-not-found

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!