Problem mit is_dir! Liefert false obwohl Verzeichnis vorhanden
H@nnib@ll
- php
0 ralf0 Sönke Tesch
Hallo Forumler,
mal wieder hat sich bei mir der Fehlerteufel eingeschlichen und ich waere fuer eure Hilfe dankbar!
Ich versuche mit is_dir() festzustellen ob ein Verzeichnis mit dem Namen albums02 existiert:
$verz1 = opendir("I:/usenet/".$list[$selection]."/albums");
if ((is_dir("album02"))!==false){
echo " <a href='usenet/".$list[$selection]."/gallery/album02' target='main'>2</a>";
}
echo "<br><br>";
clearstatcache();
Doch aus irgendeinem Grund, der mir nicht bekannt ist, wird wohl offensichtlich false zurueckgeliefert und der Link nicht an den Browser geschickt! Saemtliche Versuche meinerseits den Fehler zu finden sind fehlgeschlagen aber vielleicht faellt euch ja auf worn es liegen koennte!
Gruss
H@nnib@ll
Hi
$verz1 = opendir("I:/usenet/".$list[$selection]."/albums");
if ((is_dir("album02"))!==false){
echo " <a href='usenet/".$list[$selection]."/gallery/album02' target='main'>2</a>";
}
echo "<br><br>";
clearstatcache();
Probiers doch mal so:
if (is_dir($verz1)!= false){
gruss
ralf
Hi
$verz1 = opendir("I:/usenet/".$list[$selection]."/albums");
if ((is_dir("album02"))!==false){
echo " <a href='usenet/".$list[$selection]."/gallery/album02' target='main'>2</a>";
}
echo "<br><br>";
clearstatcache();
Probiers doch mal so:
if (is_dir($verz1)!= false){
gruss
ralf
Hi Ralf,
das funktioniert genau so wenig! Leider!
Gruss
H@nnib@ll
Ich versuche mit is_dir() festzustellen ob ein Verzeichnis mit dem Namen albums02 existiert:
$verz1 = opendir("I:/usenet/".$list[$selection]."/albums");
if ((is_dir("album02"))!==false){
echo " <a href='usenet/".$list[$selection]."/gallery/album02' target='main'>2</a>";
}
Soweit ich das erkenne, kann das nichts werden. Zumindest deutet die echo-Zeile darauf hin, daß sich Dein Verzeichnis album02 nicht in dem Verzeichnis befindet, indem das Skript liegt (und in dem is_dir() sucht), sondern von dort aus in "usenet/xyz/gallery/".
Dein is_dir() müsste dementsprechend:
if (is_dir("usenet/xyz/gallery/album02"))
lauten.
Weiterhin nicht ganz klar in diesem Zusammenhang ist mir der Sinn der erste Zeile mit dem opendir(). Vielleicht möchtest Du ja chdir() haben?
Gruß,
soenk.e
Soweit ich das erkenne, kann das nichts werden. Zumindest deutet die echo-Zeile darauf hin, daß sich Dein Verzeichnis album02 nicht in dem Verzeichnis befindet, indem das Skript liegt (und in dem is_dir() sucht), sondern von dort aus in "usenet/xyz/gallery/".
Dein is_dir() müsste dementsprechend:
if (is_dir("usenet/xyz/gallery/album02"))
lauten.
Das hat so schon seinen Sinn! Wenn in dem Verzeichnis albums das verzeichnis albums02 ist soll er den Link anzeigen!
Weiterhin nicht ganz klar in diesem Zusammenhang ist mir der Sinn der erste Zeile mit dem opendir(). Vielleicht möchtest Du ja chdir() haben?
Das habe ich geaendert hat aber bei dem eigentlichen Problem auch nicht geholfen! und chdir war wirklich das was ich wollte!
Gruss
H@nnib@ll
Soweit ich das erkenne, kann das nichts werden. Zumindest deutet die echo-Zeile darauf hin, daß sich Dein Verzeichnis album02 nicht in dem Verzeichnis befindet, indem das Skript liegt (und in dem is_dir() sucht), sondern von dort aus in "usenet/xyz/gallery/".
Dein is_dir() müsste dementsprechend:
if (is_dir("usenet/xyz/gallery/album02"))
lauten.
Das hat so schon seinen Sinn! Wenn in dem Verzeichnis albums das verzeichnis albums02 ist soll er den Link anzeigen!
Also, Du hast folgende Verzeichnisstruktur:
Laufwerk I
+--index.php (sprich: Deine nicht funktionierende Skript-Datei)
|
+--usenet
+--($list[$selection])
+--albums
| +--album02
|
+--gallery
+--album02
Weiterhin nicht ganz klar in diesem Zusammenhang ist mir der Sinn der erste Zeile mit dem opendir(). Vielleicht möchtest Du ja chdir() haben?
Das habe ich geaendert hat aber bei dem eigentlichen Problem auch nicht geholfen! und chdir war wirklich das was ich wollte!
if (! chdir("usenet/".$list[$selection]."/albums"))
{
echo "Fehler: chdir";
}
else
{
if (is_dir("album02"))
{
echo "<a href="usenet/".$list[$selection]."/gallery/album0" target="main">2</a>\n";
};
};
Falls das nicht will, probier's mal mit einem absoluten Pfaden:
chdir("I:/usenet/". $list[$selection] ."/albums")
oder chdir ganz rausnehmen und gleich
is_dir("I:/usenet/". $list[$selection] ."/albums/album02")
benutzen. Falls das alles nicht will, überprüf' vorsichtshalber nochmal Deine Verzeichnisse. Stimmen alle Pfade und Groß-/Kleinschreibung (auch wenn's Windows ist, man weiß ja nie..)? Weiterhin solltest Du schauen, ob Du anderweitig auf album02 zugreifen kannst (z.B. mit opendir()) oder ob Du überhaupt an "/usenet/".$list[$selection] rankommst. Vielleicht ist da ja auch der Wurm drin? Lass Dir mal mit echo anzeigen, was "I:/usenet/". $list[$selection] ."/albums/album02" tatsächlich ergibt (wenn ich's mir recht überlege, solltest Du das zuerst machen:).
Ansonsten: Wie gesagt, der Code ist korrekt, Du musst da also irgendwo einen Ablauffehler drin haben.
Gruß,
soenk.e