Moin!
Das Problem dürfte darin bestehen, dass du die beiden Directory-Einträge "." und ".." nicht rausfilterst.
Warum prüfst du dann mit
if (!is_dir($datei)){
ob der Verzeichniseintrag _kein_ Directory ist? Warum prüfst du nicht einfach mit
if (is_file($datei)){
das hatten wir vorher und da kam bloß eine weiße seite.
Dann ist der Dateiname in $datei falsch. Typischer Fehler wäre, dass das Verzeichnis fehlt. Schon mal is_file($verzeichnis."/".$datei) probiert?
Lies auch die Anmerkungen zu is_file() bei php.net und versuchs vielleicht auch mit file_exists().
Ansonsten: Dein Code ist dermaßen mieserabel zu lesen, dass es absolut keine Freude ist. Schon mal was von "Einrücken" gehört? Schon mal was von "Schleifen und IF-Konstrukte _immer_ klammern, auch wenn technisch nicht notwendig!" gehört? Man kriegt dafür zwar nicht mehr Geld, und Arbeit macht es auch - es erleichtert aber die Übersicht über das Skript ganz enorm und verhindert Fehler. Halte dich mal daran und präsentiere bitte nicht wieder so eine Bleiwüste.
mach mal halblang.
Hast du das Problem oder ich? Wenn ich halblang machen soll, dann mache ich lieber gar nicht - das spart mir meine Zeit und löst dein Problem nicht. Du hast die Wahl!
- Sven Rautenberg