Ik heb een multiple select of meerdere checkboxes,
Je kunt door achter de naam van je input-veld [] te zetten aan PHP vertellen dat je graag wilt dat alle variabelen die met die naam binnen komen als array behandeld moeten worden:
Voorbeeld
<form method="get">
<input type="checkbox" id="my_check_1" name="my_check[]" value="first_check" />
<label for="my_check_1">First check</label><br />
<input type="checkbox" id="my_check_2" name="my_check[]" value="second_check" />
<label for="my_check_2">Second check</label><br />
<input type="checkbox" id="my_check_3" name="my_check[]" value="third_check" />
<label for="my_check_3">Third check</label><br />
<select name="my_select[]" multiple="multiple">
<option value="first_option">First option</option>
<option value="second_option">Second option</option>
<option value="third_option">Third option</option>
</select>
<input type="submit" />
</form>
Het gevolg van een dergelijk formulier is dat in dit geval de $_GET array binnen PHP op zijn beurt weer arrays bevat waarin aangegeven staat welke opties 'aangevinkt' zijn:
Uitvoer
2
3
4
5
6
7
8
9
10
11
12
13
(
[my_check] => Array
(
[0] => first_check
[1] => second_check
)
[my_select] => Array
(
[0] => second_option
[1] => third_option
)
)
Eveneens kun je de indices van de array op zichzelf ook namen/nummering geven. Als je dat doet kun je eenvoudig de 'value' van checkboxes achterwege laten:
2
3
4
5
6
<label for="my_check_1">First check</label><br />
<input type="checkbox" id="my_check_2" name="my_check[second]" />
<label for="my_check_2">Second check</label><br />
<input type="checkbox" id="my_check_3" name="my_check[third]" />
<label for="my_check_3">Third check</label><br />
Uitvoer:
2
3
4
5
6
7
8
9
10
11
12
Met een beetje creatief gebruik van in_array () en/of foreach constructies is het op die manier heel eenvoudig te achterhalen welke opties aangevinkt zijn.
Inhoudsopgave
- HELP! Mijn POST en GET forms werken niet (meer)
- ... is not a valid MySQL resource index
- Mijn sessie-variabelen worden niet opgeslagen
- Mijn file-upload form werkt niet.
- Ik heb een multiple select of meerdere checkboxes,
- Escape problemen met PHP i.c.m. databases
- multiviews
- Mod_rewrite
- Hoe werkt dat GROUP BY nu eigenlijk?
- Bij een javascript-submit of drukken op enter word
- Spaties van een <input ... value=...> worden niet
- Help! die aggregate functies
- wordt nog toegevoegt
- Ik kan de fout echt niet vinden!