Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Webprogrammeren & scripting

[php] niet random maar opvolgend image

Ener Nestraa
2 antwoorden
  • Ik maak met veel plezier gebruik van dit Automatic Image Rotation script. Zo krijgt de bezoeker als hij van pagina naar pagina klikt at random telkens een andere afbeelding te zien.

    Wat ik nu wil is een script dat dat de afbeeldingen niet at random toont, maar volgens een oplopende (alfa-)numerieke volgorde (bijvoorbeeld eerst 1.jpg, dan 2.jpg, vervolgens 3.jpg, etc.).

    Met zoeken (hotscripts, google) kom ik niet echt verder. Ik vind volop galleries, crop & resize en andere scripts, maar niets wat hier op lijkt. Iemand een idee welke zoektermen ik het best kan gebruiken? (Eigenlijk, bedenk ik me nu, zoek ik dus een soort slideshow die niet met een klik op de afbeeling maar met een pagina-refresh naar de volgende afbeelding moet gaan).

    En heeft anders iemand een idee of een paar hints welke richting ik op moet met het Automatic Image Rotation script om mijn wens te bewerkstelligen? Hoewel ik niet zo heel veel kennis van php heb, vraag ik hierbij niet om een pasklare oplossing, maar meer een zetje in de rug: hoe moet ik denken, welke stappen moet ik zetten?

    Alvast bedankt!
  • Ik snap wel wat je wilt bereiken, maar niet hoe. Wil je het zelf programmeren of wil je ergens een script vandaan halen?

    Maar goed, in het eerste geval kan ik je wel op weg helpen. Je kunt eens de source van het script bekijken dat je gebruikt, en kijken hoe het werkt. Het script leest de directory uit, en pakt alle plaatjes, en gooit die in een array. Hij telt hoeveel het er uiteindelijk zijn en daar trekt hij dan random een nummertje uit. Zoiets ongeveer…

    Je wilt het nu niet willekeurig, maar laten oplopen. Er is dus maar een klein verschil: je moet wederom de dir uitlezen, pak alle plaatjes en zet die in een array, en laat vervolgens de eerste in de array zien (index 0). Het enige extra 'probleem' wat je nu hebt, is dat je moet onthouden welk plaatje op dat moment getoond wordt. Het lijkt mij het eenvoudigst om dat in een sessie variabele op te slaan.

    Zodra het script opnieuw wordt aangeroepen (bij een page refresh dus) kijkt het script of de sessie-variabele reeds gezet is; indien ja, dan tel je daar eentje bij op, en dat is dan gelijk aan de index van de array die je wil laten zien.

    Het enige wat je dan nog hoeft te doen is te kijken of je teller niet over het aantal elementen van die index uit komt; is dat wel het geval, dan zet je die index weer op nul, et voila, de eerste foto zal weer verschijnen…

    Laat maar horen of je er zo uitkomt. Op de php.net site staat hier bij example 479 hoe je heel eenvoudig een directory kunt uitlezen (en dat wordt vrijwel letterlijk ook in jouw Automatic Image Rotation script gebruikt).

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.