web00132Medlem sedan maj 2001822 inlägg
Får detta felmeddelande på denna kod:
$dir = ($_GET[dir]) ? $_GET[dir] : "andrabilder";
$kat = opendir($dir);
while ($fil = readdir($kat)) { // Denna rad genererar felmeddelandet
if (!($fil == "." || $fil == "..")) {
$vFil = explode("_",$fil);
if ($vFil[1] == "small") {
echo "<li><a href='index.php?dir=$dir&img=$fil'><img src='$dir/$fil' alt=''></a></li>";
}
closedir($kat);
}
}
Det är rätt katalog och så, annars skulle felmeddelandet se annorlunda ut. Och det finns en bild i katalogen som heter test.jpg. Vad är egentligen fel?
fiddlerMedlem sedan juli 20022 464 inlägg
Kan det möjligen saknas ett / i början på $dir?
web00132Medlem sedan maj 2001822 inlägg
Tack för svar!
Nej det är det som är grejen, då får jag ett annat felmeddelande:
"Warning: opendir(/andrabilder) [function.opendir]: failed to open dir: No such file or directory"
Och jag står i rätt katalog och så tycker jag, verkar vara något annat. Någon som har någon annan idé?
aasahMedlem sedan mars 20033 451 inlägg
Vad vill du göra egentligen?
web00132 skrev:
Och det finns en bild i katalogen som heter test.jpg.
$dir = ($_GET[dir]) ? $_GET[dir] : "andrabilder";
$kat = opendir($dir);
while ($fil = readdir($kat)) { // Denna rad genererar felmeddelandet
if (!($fil == "." || $fil == "..")) {
$vFil = explode("_",$fil); //<--- ***
if ($vFil[1] == "small") {
echo "<li><a href='index.php?dir=$dir&img=$fil'><img src='$dir/$fil' alt=''></a></li>";
}
closedir($kat);
}
}
Jag tror att problemet uppstår vid ***. Du försöker dela upp strängen "test.jpg" i delen före '_' och delen efter '_'. Eftersom du saknar ett '_' så returnerar explode en array med 'test.jpg'. (Enligt min tolkning av definitionen explode() ) Rimligen ligger då denna sträng i $vFil[0]. $vFil[1] innehåller då ingenting.
web00132Medlem sedan maj 2001822 inlägg
Tack för svaren hörni! Men det verkar berott på något så töntigt som att denna rad hade hamnat fel:
closedir($kat);
Den ska nog ligga sist...