hallo ik kom niet uit dit probleem met scandir

als ik invul scandir('.') dan geeft ie braaf alle mappen uit die dir weer
maar als ik bijv een map in vul dus scandir('portfolio') dan doet ie niks meer

zo ziet mijn code eruit


<?php
$banned_folders = array('.', '..');
	$rtn = array();
	foreach(scandir(".") as $item)
	{
		if (!is_dir($item) || in_array($item, $banned_folders)) 
		{
		continue;
		}
		$rtn[] = $item;
	}
	foreach($rtn as $value)
	{
		echo "<li><a href='#'>$value</a></li>";
	}
?>


alvast bedankt
Dan zal waarschijnlijk het pad naar je map niet kloppen. Probeer ook error reporting aan te zetten.
midas

Probeer ook error reporting aan te zetten.


dit heb ik nu ingeschakeld
hij geeft aan dat de dir niet bestaat maar die bestaat wel
volgens mijn ftp programma

WTF
En zo?
scandir('./portfolio/')
werkt ook niet zelfs geen error en dat was bij de vorige wel
Bij mij werkt scandir ook niet goed.
Misschien hier of hier iets aan?
oke bedankt to zover SanThe

ik heb het script aangepast het is nu


<?php
ini_set('display_errors', 'On');
error_reporting(E_ALL);

function showfiles($map = "./", $return = array())
{
    if(@$dir = opendir($map))
    {
        while (false !== ($file = readdir($dir)))
        {
            if ($file != "." && $file != "..")
            {
                if(is_dir($map . $file))
                {
                    // Bij een gevonden submap roept de functie zichzelf
                    // aan om ook die mapinhoud mee te nemen.
                    $return = showfiles($file . "/", $return);
                }
                else
                {
                    $return[] = $file;
                }
            }
        }
    }
    @closedir($dir);
    return $return;
}

// Functie aanroepen met de mapnaam en aan het eind een / (slash).
$dirinhoud = showfiles('./portfolio');

foreach($dirinhoud as $file)
{

    	echo "<li><a href='#'>$file</a></li>";
}
?>


dit werkt wel maar nu zie ik ook alle files uit de map portfolio en dat wil ik niet. dus dacht ik dan haal ik dit stukje code weg:


<?php
else
                {
                    $return[] = $file;
                }
?>


maar dan werkt het hele script niet meer dus ik vat m niet

alvast bedankt
Wat wil je dan dan? Alleen uit de huidige map en niet een map dieper gaan?
nee ik wil graag dat ik de mappen ziet maar de files niet
SanThe schreef op 13.05.2009 22:53
Bij mij werkt scandir ook niet goed.
Misschien hier of hier iets aan?

Dan moet je de tweede link hebben.

Reageren