PHP scandir werkt niet goed
Code (php)
In dezelfde folder als fotos.php staat ook een map die heet "wittehuis" met daarin een paar bestanden.
Alleen zodra ik dit bestand aan roep dan krijg ik deze melding:
Warning: scandir(wittehuis): failed to open dir: No such file or directory in /var/www/website/public_html/includes/fotos.php on line 42 Warning: scandir(): (errno 2): No such file or directory in /var/www/website/public_html/includes/fotos.php on line 42 Warning: Invalid argument supplied for foreach() in /var/www/website/public_html/includes/fotos.php on line 43
Wie kan mij vertellen waarom hij in mijn file loopt te zoeken ipv in die folder?
Gebruik eens '/wittehuis'
Gewijzigd op 17/07/2014 23:55:50 door - Ariën -
Thanks voor de snelle reactie maar dit had ik ook al geprobeerd en werkt helaas niet.
Zou moeten werken. Heb je een overzicht van je mappenstructuur anders?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$dir = __DIR__ . '/wittehuis';
if( file_exists($dir) )
{
echo 'Dir bestaat :>!';
$objScan = scandir($dir);
}
else
{
echo $dir . ' bestaat niet :<';
}
?>
$dir = __DIR__ . '/wittehuis';
if( file_exists($dir) )
{
echo 'Dir bestaat :>!';
$objScan = scandir($dir);
}
else
{
echo $dir . ' bestaat niet :<';
}
?>
Gewijzigd op 18/07/2014 00:57:18 door Tim S
file_exists? waarom niet gewoon is_dir? kijk overigens ook eens naar de directory iterator, werkt beter dan zowel scandir als glob (minder memory, veel minder memory)
Ik heb bovenaan het script geplaatst wat Tim S zei en nu werkt het goed!
Bedankt voor de moeite allen.
Toevoeging op 22/07/2014 21:07:33:
Momenteel is dit mijn scriptje om foto's uit een folder uit te lezen en ze te weergeven:
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?php
$dir = "/fotos/het-witte-huis/";
if( file_exists(__DIR__ . $dir) )
{
$allFiles = scandir(__DIR__ . $dir);
$files = array_diff($allFiles, array('.', '..'));
foreach ($files as $value) {
?>
$dir = "/fotos/het-witte-huis/";
if( file_exists(__DIR__ . $dir) )
{
$allFiles = scandir(__DIR__ . $dir);
$files = array_diff($allFiles, array('.', '..'));
foreach ($files as $value) {
?>
<figure class="left marg_right1"><a href="" class="lightbox-image" data-type="prettyPhoto[group2]"><span></span><img src="" height="128" alt="Het Witte Huis" style="border:5px solid white"></a></figure>