[php] filetype error

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • xiD
  • Registratie: Oktober 2003
  • Laatst online: 17:48
Goede middag mense,

Ik was net bezig met mn cms en had iets nodig dat je een pagina uit een pulldown menu kan selecteren, na even zoeken had ik wat gevonden op php.net

code:
1
2
3
4
5
6
7
8
9
<?php 
$handle=opendir('.'); 
while (false!==($file = readdir($handle))) { 
    if ($file != "." && $file != "..") { 
        echo "$file\n"; 
    } 
}
closedir($handle); 
?>


Als ik m wat zou editten was het eigelijk wel goed dus ik edit t naar :
(zodat ik geen directory's meer in met menu(tje) zou krijgen)

code:
1
2
3
4
5
6
7
8
9
10
11
<select name="file">
<? $handle=opendir('../'); 
while (false!==($file = readdir($handle))) { 
$type = filetype($file);
if ($file != "." && $file != ".." && $type != "dir") { 
        echo "<option>" . $file . "</option>"; 
        } 
}
closedir($handle); 
?>
</select>


Maar ik kreeg nog steeds de directory's te zien :S

Naja dan maar even appart zetten en kijken wat t is d8 ik
dus ik zet ff boven aan mn pagina dezelfde code zonder <select> en <option>

Kreeg ik de volgende error(s) :

Warning: filetype(): Lstat failed for (null) (errno=2 - No such file or directory) in /usr/local/apache/htdocs/admin/cms.file.add.php on line 11
test.txt
Warning: filetype(): Lstat failed for (null) (errno=2 - No such file or directory) in /usr/local/apache/htdocs/admin/cms.file.add.php on line 11
index.html
Warning: filetype(): Lstat failed for (null) (errno=2 - No such file or directory) in /usr/local/apache/htdocs/admin/cms.file.add.php on line 11
bla2.txt
Warning: filetype(): Lstat failed for (null) (errno=2 - No such file or directory) in /usr/local/apache/htdocs/admin/cms.file.add.php on line 11

Ik ging ff rond zoeke op google kon weining vinde behalve pagina's die de zelfde error hadden :S

En nog iets op bugs.php.net, maar dat was niet helemaal dezelfde bug..
weet iemand wat hier aan de hand is of is t wel gewoon een bug ?

thx x1dje

67890


Acties:
  • 0 Henk 'm!

Verwijderd

Waarschijnlijk kun je beter is_dir gebruiken.

Omdat er een note staat bij filetype:
Returns FALSE if an error occurs. filetype() will also produce an E_NOTICE message if the stat call fails or if the file type is unknown.

[ Voor 66% gewijzigd door Verwijderd op 14-12-2003 14:24 . Reden: Toevoeging ]


Acties:
  • 0 Henk 'm!

  • xiD
  • Registratie: Oktober 2003
  • Laatst online: 17:48
ok ff teste -

code:
1
2
3
4
5
6
7
8
9
$handle=opendir('../'); 
while (false!==($file = readdir($handle))) { 
if ($file != "." && $file != "..") { 
  if(!is_dir($file)) { 
        echo $file ;  
        }
   } 
}
closedir($handle);


Doet t niet - hij laat gewoon de dirs zien

67890


Acties:
  • 0 Henk 'm!

  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

Dit is toch standaard debugwerk?
Doe eens dit:
PHP:
1
2
3
4
5
$handle = opendir('../'); 

while (false!==($file = readdir($handle))) if (!is_dir('../'.$file)) echo $file ;

closedir($handle);

[ Voor 58% gewijzigd door Spider.007 op 14-12-2003 14:55 ]

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


Acties:
  • 0 Henk 'm!

  • xiD
  • Registratie: Oktober 2003
  • Laatst online: 17:48
o mijn godje (*schaam*)

hij werkt thx

[ Voor 29% gewijzigd door xiD op 14-12-2003 14:43 ]

67890


Acties:
  • 0 Henk 'm!

Verwijderd

"." en ".." zijn ook dirs trouwens dus daar hoef je niet speciaal op te testen :)
Pagina: 1