login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Random Image

Offline milco - 02/02/2011 18:48
Avatar van milcoLid hee iedereen...

Ik was op zoek naar een goed werkend script die plaatjes uit één of meerdere mappen haalt, en dat hij ze showt op de pagina..

Nu ben ik al de hele tijd aan het googlen geweest maar kan er niet echt iets werkend's vinden.

Weet iemand misschien hier een goede script voor??

het liefste dat de afbeelding na een x aantal seconden vernieuwd zonder dat de pagina in zijn geheel refreshed, Maar als dat niet mogelijk is dan maar zonder...

Wie weet iets, en kan mij de goede richting in sturen...

alvast hartelijk bedankt

22 antwoorden

Gesponsorde links
Offline WouterJ - 02/02/2011 18:56
Avatar van WouterJ HTML gevorderde Als je in google zoekt op Javascript random image krijg je 10000de werkende scriptjes...
Offline Emonk - 02/02/2011 18:56
Avatar van Emonk Lid Wat ik zou proberen is een aparte pagina waarin je een random plaatje laat zien en met een Ajax request maken dat die wordt herladen.

random_image.php
  1. <?php
  2. $pad = 'standaard bestandspad';
  3. $dirs = array('img1','img2','img3','img4'); // toevoeging aan bestandspad
  4. foreach ($dirs as $dir) {
  5. if($handle = opendir($pad.$dir)) {
  6. while(($read = readdir($handle)) != false) {
  7. if ($read!="."&&$read!=".."){
  8. echo '<img src="'.$pad.$dir.$read.'" alt="'.$read.'">';
  9. }
  10. }
  11. closedir($handle);
  12. }
  13. }


index.php
  1. function updateImage() {
  2. var xmlhttp;
  3. if (window.XMLHttpRequest) {
  4. xmlhttp=new XMLHttpRequest();
  5. }
  6. else {
  7. xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  8. }
  9. xmlhttp.onreadystatechange=function() {
  10. if (xmlhttp.readyState==4 && xmlhttp.status==200) {
  11. document.getElementById("update").innerHTML=xmlhttp.responseText;
  12. }
  13. }
  14. xmlhttp.open("GET","random_image.php",true);
  15. xmlhttp.send();
  16. window.setTimeout("updateImage()",10000); // elke 10s herladen
  17. return;
  18. }
Offline milco - 02/02/2011 18:57 (laatste wijziging 02/02/2011 19:05)
Avatar van milco Lid ik zocht juist op PHP Random image uit map

Edit: Hier moet ik voor elke afbeelding een verwijzing maken

Ik zocht eigenlijk iets die 1 map opent en er daar willekeurig 1 uithaalt
Offline Emonk - 02/02/2011 19:09
Avatar van Emonk Lid Nee, je maakt per map een verwijzing. Daarom heet de array $dirs, naar directories 
Maar uhm, dit zou iedere afbeelding in die map laten zien  , dus vandaar een nieuwe code:


  1. <?php
  2. $pad = 'standaard bestandspad';
  3. $dirs = array('img1','img2','img3','img4'); // toevoeging aan bestandspad
  4. $q = 0;
  5. foreach ($dirs as $dir) {
  6. if($handle = opendir($pad.$dir)) {
  7. while(($read = readdir($handle)) != false) {
  8. if ($read!="."&&$read!=".."){
  9. $q++;
  10. $image[] = $dir.$read;
  11. }
  12. }
  13. closedir($handle);
  14. }
  15. }
  16. echo '<img src="'.$pad.$image[rand(0,$q+1)].'">';
Offline milco - 02/02/2011 19:12
Avatar van milco Lid en waarvoor dient regel 3
Citaat:
$dirs = array('img1','img2','img3','img4'); // toevoeging aan bestandspad


maar de pad is straks /cards/ wat moet ik dan veranderen en met regel 3 doen??
Offline Emonk - 02/02/2011 19:16
Avatar van Emonk Lid Dat zijn alle mappen waar je in gaat kijken. Je pad is /var/www/vhosts/etc... en dan zet je in $dirs welke mappen je wilt openen vanaf het pad.
Offline milco - 02/02/2011 19:19
Avatar van milco Lid dus als ik t goed begrijp is
$pad = 'standaard bestandspad'; // Website.nl/

En:
$dirs = array('cards');

toch??
Offline Emonk - 02/02/2011 19:21
Avatar van Emonk Lid Ja, als website.nl je standaard bestandspad is. Meestal is dat echter iets als /var/www/vhosts/domein.nl/httpdocs/, maar dat kun je opvragen bij je host.
Offline milco - 02/02/2011 19:23
Avatar van milco Lid en dan moet ik gewoon de 2e post van jou als random_image.php opslaan en dan die code van index.php op mijn homepage op de plek waar ik m wil hebben...
Offline Emonk - 02/02/2011 19:24
Avatar van Emonk Lid jup
Offline milco - 02/02/2011 19:27
Avatar van milco Lid en ik heb een standaard html page die moet ik nu denk ik .php noemen toch??

Zo ja hoe moet ik de script er dan nu inzetten

tussen welke tag's of gewoon zo??
Offline Emonk - 02/02/2011 19:29
Avatar van Emonk Lid de pagina die ik random_image.php noemde moet PHP zijn, de Ajax request moet tussen <script type="text/javascript"> en </script> en kan gewoon in een HTML pagina
Offline milco - 02/02/2011 19:29 (laatste wijziging 02/02/2011 19:39)
Avatar van milco Lid oke dan hoef ik ook niet de hele site te veranderen 

Thnx

ik laat hier wel weten of t lukt

Edit: Nee
Niet gelukt

http://madeleinskaarten.x10.bz/TEST/POINT/
de image_rotator.php staat in diezelde map als de index...
TEST/POINT/

en de map met kaarten staat 1 map verder namelijk TEST/POINT/CARDS/

Doe ik iets fout??

Edit2: In mn ERROR_LOG staat ook niets dat er een fout is
Offline Emonk - 02/02/2011 19:43
Avatar van Emonk Lid http://madelein...otator.php:
"Beste bezoeker, Deze webpagina is op dit moment nog niet bereikbaar, Kijk of u wel het juiste adres hebt ingevuld, http://www.madeleinskaarten.nl Is de pagina juist stuur dan even een mailtje naar madeleinskaarten@live.nl en wij zullen het zo snel mogelijk verhelpen ______________________________________________________________________________ Madeleinskaarten.nl madeleinskaarten@live.nl"

en waar wil je de plaatjes plaatsen op http://madeleinskaarten.x10.bz/TEST/POINT/?

Je moet trouwens wel een div met id update hebben, daar ga ik vanuit in mn JS code...
Offline milco - 02/02/2011 20:09
Avatar van milco Lid ìk wil de plaatje's hebben in http://madeleinskaarten.x10.bz/TEST/POINT/CARDS/


en hoe maak ik een div met een id update??
Offline vinTage - 02/02/2011 20:28
Avatar van vinTage Nieuw lid <div id="update"></div>

pure skillz 
Offline milco - 02/02/2011 20:45
Avatar van milco Lid dus gewoon de div update noemen...

en wat moet er dan in mn css staan...
Offline WouterJ - 02/02/2011 22:30
Avatar van WouterJ HTML gevorderde ?? Wat jij wilt. Voor de 1000de keer, verdiep je eens in HTML en CSS en ga dan pas aan het werk. Niet iets willen terwijl je het niet kan. Want een site die samenhangt van copy/past codes is totaal niet goed. Je moet je code begrijpen.
Offline Emonk - 03/02/2011 16:44
Avatar van Emonk Lid Wat geen zin heeft (weet ik uit ervaring) is kantenklare codes kopiëren en die eventueel een beetje aanpassen. Schrijf zelf iets!
Offline milco - 03/02/2011 16:46
Avatar van milco Lid Ja dat weet ik
Maar het gaat mij er niet om om dit later nog veel te gebruiken maar ik wil graag dat er mooie en handige dingen ook op de site staan

het is meer een beetje als ontspanning bedoeld 
Niet dat ik er nog mijn hele tijd in stop
Offline FrankL - 03/02/2011 19:20
Avatar van FrankL Lid Veel tijd kost het niet om w3schools.com door te lezen hoor^^
Offline milco - 03/02/2011 21:59
Avatar van milco Lid nee dat weet ik 

Maar mijn engels is niet 100% begrijp er steeds meer van maar alles echt goed snappen doe ik nog niet

Maar dit is gewoon een kleine hobby van mij...
Binnenkort moet ik ook iets doen voor school een sector werkstuk ofzoo

Maak wel iets simpels met een mIRC script of iets anders... ( Bij mij op school snappen ze er toch niets van ( TL ) )
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.205s