login  Naam:   Wachtwoord: 
Registreer je!
 Forum

bannerrotator

Offline betterdays - 09/08/2010 15:29
Avatar van betterdaysLid Hopelijk kan iemand mij hier helpen.

Ik heb een bannerrotator op 1 van men sites staan. Alles goed en wel als er 3 banners instaan. Het probleem vormt zich om 1 of andere bizarre reden enkel als ik 4 of 5 banners wil laten roteren. Ik heb al veel zitten zoeken, maar staar me denk ik wat blind op sommige dingen.

Hier vind je de code terug: http://www.plaatscode.be/139802/

Bedankt alvast!

5 antwoorden

Gesponsorde links
Offline Martijn - 09/08/2010 15:38
Avatar van Martijn Crew PHP wat is er dat er gebeurd en heb je een voorbeeld?
Offline Button - 09/08/2010 15:43 (laatste wijziging 09/08/2010 15:44)
Avatar van Button PHP ver gevorderde Je bent toch zeker dat je session bestaat? Want je switch-clause wordt altijd uitgevoerd op je $bannernummer & de kans groot is dat er niets gebeurd omdat $bannernummer de waarde false heeft omdat $bannernummer eigenlijk niet bestaat (lees: nergens geïnitialiseerd)!
Offline betterdays - 09/08/2010 15:44 (laatste wijziging 09/08/2010 16:22)
Avatar van betterdays Lid Kijk even op deze pagina: http://linkjerijk.nl/stats.php
Hij toont enkel banner 2 en 4.
Echt raar.

Kijk hier voor een werkend voorbeeld met 3 banners: http://gpt-info.be/GPT%20sites/GPT-overzicht.php

En de sessie bestaat hoor. Hij wordt toch gestart en gedefinieerd dus zou moeten werken.
Ik snap gewoon niet waarom hij werkt met 3 banners en niet met 5???
Offline MiST - 09/08/2010 20:04
Avatar van MiST Lid Als ge die nu eens gewoon in een array zet, kan uw grootte gewoon dynamisch verlopen. De opbouw is als ik goed gekeken heb toch steeds dezelfde.

  1. $banners = array(
  2. 'url' => 'link hier',
  3. 'image'=> 'link hier'
  4. ),
  5. 'url' => 'link hier',
  6. 'image'=> 'link hier'
  7. ),
  8. ...
  9. )


Daarna zou ik gwn met de modulo bewerking werken. (a % b operator = rest bij deling van a door b). Als je dan elke keer +1 doet, komt die automatisch weer bij nul als je voor b = count($banners) neemt. (Z_m vormt een cyclische groep voor de optelling, sorry, ben Toegepaste Discrete Algebra aan het leren...)

Checken of uw sessie bestaat is altijd ook een goed plan.

Een andere strategie is om gewoon elke keer een random integer te kiezen. Als je maar genoeg van pagina wisselt, krijg je ze allemaal even veel keer te zien (wet van de grote getallen)...
Offline betterdays - 09/08/2010 20:37
Avatar van betterdays Lid @ mist: bedankt voor je oplossing, maar daar heb ik echt te weinig verstand van en tijd om dit zelf in elkaar te boksen. Heb dan maar voorlopig geopteerd voor een random banner uit te kiezen. Wel niet zo leuk, want er gaan maar 5 banners in het script staan en de kans is dus groot dat je 2 keer dezelfde banner ziet.

Zou toch nog graag weten waarom het oorspronkelijke script flipte bij 5 banners en perfect werkte bij 3 banners. Dus als iemand toch iets vindt ben ik hem zeer dankbaar!
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.175s