Tellen in dropdownmenu

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Roel H

Roel H

22/02/2014 10:26:26
Quote Anchor link
Hallo allemaal,

Deze dropdown menu telt van 2004 af naar 1970, dat werkt prima!

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<select name="jaarvan">
    <?
    echo '<option value="">Vanaf</option>';
    for($jaarvan = date('Y'); $jaarvan >= 1970; $jaarvan--){

        echo "<option value=" . $jaarvan . ">". $jaarvan. "</option>";
    }

        ?>
</select>


Echter ik wil graag een dropdown menu die tel vanaf 100 en er dan bijvoorbeeld telkens 100 of 200 bijop telt tot 10000.
Hoe is dit te realiseren?

Groet,
Roel
 
PHP hulp

PHP hulp

24/04/2024 14:06:52
 
Wouter J

Wouter J

22/02/2014 10:42:22
Quote Anchor link
Allereerst even een belangrijke tip: gebruik <?php als open tag en niet <?. Die 2e versie heeft namelijk problemen met XML en is zeg maar deprecated.

Dan je vraag. Een for loop bestaat uit 3 onderdelen: for (start; condition; step)

In start definieer je de start situatie. In jouw geval wil je hier dus een variabele op 100 zetten, je start waarde. Dus: $j = 1000

Bij condition bepaal je wanneer de loop mag doorgaan. Zodra er false uit deze conditie komt zal de for loop stoppen. In jouw geval wil je het door laten gaan totdat $j groter is dan 10000, dus: $j <= 10000

Bij step definieer je de stap welke genomen moet worden. Nu staat hier $jaarvan-- dat betekend telkens 1 eraf ($j-- is de shortcut voor $j -= 1, wat weer $j = $j - 1 betekend). Jij wilt dat er telkens 100 bijkomt (ik begrijp je "of 200" hier even niet), dus dat vullen we hier dan in: $j += 100

Het totaal plaatje:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
for ($j = 0; $j <= 10000; $j += 100) {
     // ... doe iets met $j
}
?>
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.