login  Naam:   Wachtwoord: 
Registreer je!
 Forum

archief weergeven

Offline compudoc - 26/02/2007 09:35 (laatste wijziging 26/02/2007 10:06)
Avatar van compudocPHP beginner als je in de url bijvoorbeeld dit hebt staan: ?pagina=fotoweek&jaar=2007&week=09 dan wordt de foto van die week weergeven

maar nou wil ik dat als er geen jaar en week in de url staat dat ALLES in tekstlinks wordt weergeven met een link naar de foto, ik dacht eest zelf aan een DB maar dat zorgt voor allemaal extra werk dat alle plaatjeslinks enzo eerst in de database moeten enzo (dus geen DB)

bestaat er in PHP een functie ofzo die dit kan doen?

scriptje wat ik al heb (is niet veel)
  1. <?php
  2. if(isset($_GET['jaar']) and (isset($_GET['week']))) {
  3. $file_week = 'fotoweek/'.$_GET['jaar'].'/'.$_GET['week'].'.jpg';
  4.  
  5. if(file_exists($file_week)) {
  6. // bestand bestaat => weergeven
  7. echo '<img src="fotoweek/'.$_GET['jaar'].'/'.$_GET['week'].'.jpg" width="600" height="450">';
  8. } else {
  9. // bestand bestaat niet => foutmelding
  10. echo ('De foto die je wou weergeven bestaat niet.<br>Waarschijnlijk heb je niet de goede week/jaar opgegegeven.
  11. <br><br>Is het bovenstaande niet op jouw van toepassing gelieve een bericht te sturen naar de webmaster');
  12. }
  13. } else {
  14. // hier het archief
  15. }
  16. ?>

6 antwoorden

Gesponsorde links
Offline Rik - 26/02/2007 10:50
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
Je kan een scriptje maken dat de hele map "fotoweek" uitleest.

  1. function list_files_($directory, &$files = array())
  2. {
  3. if (is_dir($directory)) {
  4. $dir = dir($directory);
  5. while (($file = $dir->read()) !== false) {
  6. if ($file != '.' && $file != '..') {
  7. if (is_dir($directory . $file)) {
  8. list_files($directory . $file . '/', $files);
  9. } else {
  10. $files[] = $directory . $file;
  11. }
  12. }
  13. }
  14. $dir->close();
  15. return $files;
  16. } else {
  17. return false;
  18. }
  19. }
  20. print_r('fotoweek/');
Zou een array moeten geven met alle bestanden die erin staan.
Offline compudoc - 26/02/2007 10:54 (laatste wijziging 26/02/2007 11:22)
Avatar van compudoc PHP beginner Hoe moet ik het dan aanroepen, want wat ik hier net had staan bleek niet echt te werken.

iemand?
Offline Rik - 26/02/2007 11:27 (laatste wijziging 26/02/2007 11:29)
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
In m'n vorige post ben ik vergeten die functie aan te roepen. 

Zoiets?
  1. <?php
  2. $files = list_files('fotoweek/');
  3.  
  4. foreach ($files as $file) {
  5. $parts = explode('/', $file);
  6. $year = $parts[1];
  7. $week = substr($parts[2], 0, -4);
  8. echo '<a href="index.php?jaar=' . $year . '&week='. $week .'" >week ' . $week . ' ' . $year . '</a>';
  9. }
  10. ?>


Edit:
Vet, ik ben php ver gevorderde! 
Offline compudoc - 26/02/2007 11:32
Avatar van compudoc PHP beginner krijg de volgende foutmelding:
Citaat:
Call to undefined function list_files()


wat moet ik doen om deze weg te krijgen?
Offline Rik - 26/02/2007 11:36
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
Ik ben slordig bezeg vandaag...

Je moet de functie uit m'n eerste post gebruiken, maar je moet er nog ff list_files van maken ipv list_files_.
Offline compudoc - 26/02/2007 11:41
Avatar van compudoc PHP beginner heel erg bedankt Boukefalos
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.226s