login  Naam:   Wachtwoord: 
Registreer je!
 Forum

[PHP] Fotoalbum (geen output)

Offline Wim - 13/11/2005 15:22 (laatste wijziging 13/11/2005 15:23)
Avatar van WimCrew algemeen Hallo iedereen,

Ik ben bezig aan een site voor een vereniging waar ik bij zit, en nu ben ik aan een foto album bezig.

Ik had zoiets qua directory structuur (nodig om te kunnen volgen denk ik )
/
|--/includes
|--/templates
|--/txt
|--/fotos
| |
| |-- /album1 (fotos + name.txt)
| |-- /album2 (fotos + name.txt)
|
|------//losse bestanden
|--fotoalbum.php

fotalbum.php:
  1. <?php
  2. require ("includes/global.inc.php");
  3. $tpl->assignInclude ("pagecontent", "txt/fotoalbum.tpl");
  4. $tpl->prepare();
  5. $tpl->assignGlobal("pagetitle", "Fotoalbum!");
  6.  
  7.  
  8. if(!is_dir("./fotos")) {
  9. $tpl->newBlock("dir_fotos_doesnt_exist");
  10. $tpl->printToScreen();
  11. exit();
  12. }
  13.  
  14. if(isset($_REQUEST['album'])) {
  15. if(str_replace (".", "", $_REQUEST['album']) != $_REQUEST['album']) { // . in de naam van het album; kan wijzen op ../ <= vorige directory; zo kunnen ze heel de inhoud van de HD van de server zien... ===> BLOKKEN!
  16. $tpl->newBlock("cheating");
  17. $tpl->printToScreen();
  18. exit();
  19. }
  20.  
  21. if(!is_dir("./fotos/".$_REQUEST['album'])) { //geen directory, cheating?
  22. $tpl->newBlock("album_doesnt_exist");
  23. $tpl->printToScreen();
  24. exit();
  25. }
  26.  
  27. // album weergeven :-) (reacties worden per foto opgehaald uit de database)
  28. }
  29. else {
  30. $tpl->newBlock("list_albums_inleiding");
  31.  
  32. $albums = 0; // nog geen albums hé
  33.  
  34. $nopics = array("index.php", ".", ".."); // bestanden die niet gedisplay'd mogen worden; => security eh :)
  35.  
  36. $dir = opendir("./fotos");
  37.  
  38. while (($album == readdir($dir)) !== false) {
  39. if(file_exists("./fotos/".$album."/name.txt") && is_dir($album)) {
  40. $albums++;
  41. $namefile = fopen("./fotos/".$album."/name.txt", "r");
  42. $name = fread($namefile, filesize("./fotos/".$album."/name.txt"));
  43. fclose($namefile);
  44. $tpl->newBlock("album");
  45. $tpl->assign(array(
  46. "name" => $name,
  47. "folder" => $album
  48. ));
  49. }
  50. else {
  51. // dit is dus geen album!
  52. }
  53. }
  54. if($albums < 1)
  55. $tpl->newBlock("geen_albums");
  56. }
  57.  
  58. $tpl->printToScreen();
  59.  
  60. // -- EOF -- //
  61. ?>


En ja, ik maak gebruik van template power ;)

Alles gaat goed, tot hij aan de while-lus komt. Hij komt hier niet in, en de reden ken ik niet. Ik krijg geen errors ofzo (php.ini = display errors + warnings; lokaal).

Aangezien het zo simpel mogelijk moet blijven, had ik gedacht om de directory gewoon uit te lezen, en er een bestandje name.txt inzetten waar de naam van het album instaat.

Waar zit mijn fout...? (hij komt gewoon niet in de while-lus)

Greetz,
GDX^ (Wim Mariën)

0 antwoorden

Gesponsorde links
Er zijn nog geen reacties op dit bericht.
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.198s