Ik heb een CSS-popupje met een korte vragenlijst voor mijn bezoekers die nu iedere keer opkomt als aan bepaalde voorwaarden (reeds ingevuld, minder 2 weken geleden al getoond, etc) wel of niet voldaan wordt. Ten behoeve van gebruikersvriendelijkheid en omdat voor een representatieve vragenlijst een populatie van 1 op 20 voldoende is, wil ik het popupje slechts 1x tonen per 20x dat aan de eerdere voorwaarden voldaan is.
Ik zit nu een beetje te denken over wat een efficiente én eerlijke methode is. Met mt_rand(1,20); kan je natuurlijk een eind komen, maar is dat nu echt eerlijk? Een korte proef:
Ik zou willen dat hier alle getallen 5x voorkomen. Dit is absoluut niet het geval, de ene keer zijn het er misschien 1 of 2, de andere keer 8 of 9. Nu is het een drukke site (rond de 1000 unieke bezoekers per dag) dus dat vlakt de boel behoorlijk uit, maar is mt_rand() nu een eerlijke selectiemethode? Uit de documentatie krijg ik het niet helder naar boven. Er wordt verwezen naar Mersenne Twister maar nog steeds is het me niet helemaal duidelijk.
Ik kan natuurlijk in de database steeds een auto_increment cijfer wegschrijven en als dat cijfer deelbaar door 20 is, de vragenlijst tonen (en anders dus niet), maar dat lijkt me overdreven.
Ik zit nu een beetje te denken over wat een efficiente én eerlijke methode is. Met mt_rand(1,20); kan je natuurlijk een eind komen, maar is dat nu echt eerlijk? Een korte proef:
PHP:
1
2
3
| for($i = 0; $i < 100; $i++){ echo mt_rand(1, 20)."<br>"; } |
Ik zou willen dat hier alle getallen 5x voorkomen. Dit is absoluut niet het geval, de ene keer zijn het er misschien 1 of 2, de andere keer 8 of 9. Nu is het een drukke site (rond de 1000 unieke bezoekers per dag) dus dat vlakt de boel behoorlijk uit, maar is mt_rand() nu een eerlijke selectiemethode? Uit de documentatie krijg ik het niet helder naar boven. Er wordt verwezen naar Mersenne Twister maar nog steeds is het me niet helemaal duidelijk.
Ik kan natuurlijk in de database steeds een auto_increment cijfer wegschrijven en als dat cijfer deelbaar door 20 is, de vragenlijst tonen (en anders dus niet), maar dat lijkt me overdreven.
Tjolk is lekker. overal en altijd.