Gaurav_soni
Gaurav_soni

Reputation: 6114

PHP error object not found

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

Upvotes: 0

Views: 5013

Answers (2)

MyStream
MyStream

Reputation: 2553

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

Upvotes: 1

Lochemage
Lochemage

Reputation: 3974

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.

Upvotes: 5

Related Questions