form met checkboxes uitlezen
Ik heb een formulier gemaakt waarin ik uitsluitend gebruik maak van checkboxes die ik doorstuur naar een andere PHP page waarin ik de waardes uitlees. Echter wordt alleen de checkboxes die aangevinkt zijn doorgestuurd. Ik zou willen weten welke checkboxes er niet aangevinkt zijn en ook deze info willen doorsturen. Is dit mogelijk?
Hoe worden die checkboxes aangevinkt? Handmatig of automatisch door script?
handmatig. De gebruiker checkt er een aantal aan en die worden door gegeven. Ik wil echter ook doorgegeven krijgen welke er niet aangevinkt zijn...
Een checkbox wordt alleen meegestuurd als ie is aangevinkt.
Maar je weet toch zelf welke checkboxen er in het formulier staan.
Degene die je niet meekrijgt zijn dus niet aangevinkt.
Maar je weet toch zelf welke checkboxen er in het formulier staan.
Degene die je niet meekrijgt zijn dus niet aangevinkt.
Het aantal checkboxes worden vanuit een db uitgelezen en in een form gezet en indien aangevinkt doorgestuurd. Iedere checkbox heeft een uniek id.. die zou ik in ieder geval meegestuurd willen hebben..met 't form
Stuur eventueel alle id's mee in een hidden.
bv zo:
bv zo:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$alle_id = json_decode($_POST['ids']);
echo 'checkbox: ' . print_r($_POST['item'], 1) . '<br>';
echo "alle id's: " . print_r($alle_id, 1) . '<br>';
}
$ids = array(
15, 23, 41, 57, 98
);
$form = '';
foreach($ids as $id) {
$form .= '<input name="item[]" type="checkbox" value="' . $id . '">';
}
$form = '<form method="post">
' . $form . '
<input type="hidden" name="ids" value="' . json_encode($ids) . '">
<input type="submit" value="GO">
</form>';
echo $form;
?>
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$alle_id = json_decode($_POST['ids']);
echo 'checkbox: ' . print_r($_POST['item'], 1) . '<br>';
echo "alle id's: " . print_r($alle_id, 1) . '<br>';
}
$ids = array(
15, 23, 41, 57, 98
);
$form = '';
foreach($ids as $id) {
$form .= '<input name="item[]" type="checkbox" value="' . $id . '">';
}
$form = '<form method="post">
' . $form . '
<input type="hidden" name="ids" value="' . json_encode($ids) . '">
<input type="submit" value="GO">
</form>';
echo $form;
?>
Als je net zoals Kris een array maakt van de ckeckboxen (met name="item[]"), gaat dat vrij simpel:
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
Gewijzigd op 03/12/2013 10:50:22 door Ger van Steenderen
Ik heb 't idd opgelost met een hidden statement welke ik meestuur. Maar doordat de hidden input overschreven wordt (indien de checkbox wordt aangevinkt) krijg ik bij de formulierafhandeling alle checkboxes binnen, maar met een waarde 0 of waarde 1.
Dank allen voor de hulp:-)
Code (php)
1
2
2
echo "<input type='hidden' name='$comp_id' value='0' />";
echo "<input type='checkbox' name='$comp_id' value='1' />;
echo "<input type='checkbox' name='$comp_id' value='1' />;
Dank allen voor de hulp:-)




