login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Random image (Opgelost)

Offline elecomte - 03/03/2007 13:39
Avatar van elecomteGrafische interesse Hallo, ik ben bezig met een site voor jeugdbeweging, en ik had graag een random plaatje geplaatst in mijn menu. Ik heb wat zitten prutsen en het werkt, maar ik heb geen extentie controle.

Dit is het script:
  1. <?
  2. $rand[1] = "<h3>Verkenning van de ijzermonding</h3>";
  3. $rand[2] = "<h3>Stafkaarten zoektocht</h3>";
  4. $rand[3] = "<h3>Start activiteit 2006</h3>";
  5. $rand[4] = "<h3>Bezoek aan reservaat de Demerbroeken</h3>";
  6. $rand[5] = "<h3>Technopolis</h3>";
  7.  
  8.  
  9. $random_nummer = rand(1, count($rand));
  10. floor($random_nummer);
  11. echo $rand[$random_nummer];
  12. ?> <p> <?
  13. if($random_nummer == 1) {
  14. $dir = "image/06-30-12 Nieuwpoort/";
  15. }
  16. if($random_nummer == 2 ) {
  17. $dir = "image/06-24-09 stafkaartenzoektocht/";
  18. }
  19. if($random_nummer == 3 ) {
  20. $dir = "image/06-20-09 startactiviteit stekkertjes/";
  21. }
  22. if($random_nummer == 4 ) {
  23. $dir = "image/06-15-10 Demerbroeken/";
  24. }
  25. if($random_nummer == 5 ) {
  26. $dir = "image/06-12-11 technopolis/";
  27. }
  28.  
  29. $teller=-1;
  30. if ($handle = opendir($dir)) {
  31. while (false !== ($file = readdir($handle))) {
  32. if ($file != "." && $file != "..") {
  33. $teller++;
  34. $img[$teller] = $file;
  35. }
  36. }
  37.  
  38. closedir($handle);
  39. }
  40. $random = rand(0, count($img));
  41. echo "<a href=\"image/index.php\" target=\"blank\"><img src=\"$dir$img[$random]\" width=60% height=60% border=0></a>";
  42. ?>


Ik weet dat er een script staat op sitemasters, maar dit werkt met functies, en zover ben ik nog niet gevordert.
Weet iemand hoe ik eenvoudige extentie controle aan dit script kan toeveogen? Met andere woorden dat hij enkel kiest uit bestanden in die mappen die jpg, jpeg of gif noemen. (enkel jpg, kan ik ook meeleven)

2 antwoorden

Gesponsorde links
Offline phpfreak - 03/03/2007 14:14 (laatste wijziging 03/03/2007 14:35)
Avatar van phpfreak PHP beginner dit zou veel korter kunnen, bijvoorbeeld, die dir in array steken daarboven:

  1. $rand[1] = array("<h3>Verkenning van de ijzermonding</h3>","image/06-30-12 Nieuwpoort/");

en eronder met een for lus werken, voor per $rand de dir enzo te bepalen

want als je nu een afbeelding bijvoegt, dan moet je nog zon hele if erbij doen enzo, nu moet je slechts een $rand toevoegen

en voor die extentie controle:
  1. <?
  2. $extenties=array("gif","jpg");
  3. if (array_search(substr($pad,strlen($pad)-3,strlen($pad)),$extenties)){
  4. //correcte extentie
  5. }else{
  6. //incorrecte extentie
  7. }
  8. ?>


edit: werkt niet bij jpeg, want dat is 4 letters lang..
Offline elecomte - 03/03/2007 14:50
Avatar van elecomte Grafische interesse kan iemand mijn scriptje zodanig aanpassen dat het enkel kiest tussen documenten in de aangegeven map die als extentie jpg hebben?
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.208s