checkbox onthouden met $_POST lukt niet

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Peter van den Dungen

Peter van den Dungen

14/12/2010 16:15:22
Quote Anchor link
Ik probeer de keuze van een checkbox te laten onthouden.
Wat ik ook doe met onderstaande code, bij het opnieuwe weergeven van het formulier (na een post) is het vakje gewoon aangevinkt.
Ik wil dus graag:
- Bij het eerste keer weergeven van het formulier: checked
- Bij het opnieuw weergeven: de gemaakte keuze.

Kan iemand me op weg helpen?
Bedankt!

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php $voorbeeld = (isset($_POST['keuze_1'])) ? 'checked':''; ?>
<input
  class="checkbox_aanvraag"
  type="checkbox"  
  name="check_keuze1"  
  <?php echo (isset($_POST['verzenden'])) ? 'checked = '. $voorbeeld .' ' : 'checked'?>
 >
Gewijzigd op 14/12/2010 16:16:55 door Peter van den Dungen
 
PHP hulp

PHP hulp

12/01/2025 10:58:44
 
Kris Peeters

Kris Peeters

14/12/2010 16:34:04
Quote Anchor link
Ik geef een voorbeeld, zowel voor radio buttons, check boxes en drop down/select box
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
  // onthouden radio buttons
 $titel = (empty($_POST['titel']) ? '' : $_POST['titel']);
  echo '
  <form action="" method="post">
    <input type="radio" name="titel" value="m" '
. ($titel == 'm' ? 'checked="checked" ' : '' ).'/> Dhr. <br/>
    <input type="radio" name="titel" value="v" '
. ($titel == 'v' ? 'checked="checked" ' : '' ).'/> Mevr. <br/>
    <input type="submit" value="GO"/>
  </form>
'
;
?>


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
  // onthouden checkbox
  echo '
  <form action="" method="post">
    <input type="checkbox" name="terms" '
. (!empty($_POST['terms']) ? 'checked="checked" ' : '' ) .'/> I accept the terms ... <br/>
    <input type="checkbox" name="newsletter" '
. (!empty($_POST['newsletter']) ? 'checked="checked" ' : '' ) .'/> I want to recieve newsletters ... <br/>
    <input type="submit" value="GO"/>
  </form>
'
;
?>


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
  // onthouden select box
 $fruit = (empty($_POST['fruit']) ? '' : $_POST['fruit']);
  echo '
  <form action="" method="post">
    <select name="fruit">
      <option value="appel" '
. ($fruit == 'appel' ? 'selected="selected" ' : '' ).'>Appel</option>
      <option value="peer" '
. ($fruit == 'peer' ? 'selected="selected" ' : '' ).'>Peer</option>
      <option value="citroen" '
. ($fruit == 'citroen' ? 'selected="selected" ' : '' ).'>Citroen</option>
    </select>
    <input type="submit" value="GO"/>
  </form>
'
;
?>
 
Peter van den Dungen

Peter van den Dungen

14/12/2010 17:07:40
Quote Anchor link
Nu is de checkbox niet gechecked als er nog geen POST is.
 
Kris Peeters

Kris Peeters

15/12/2010 01:57:00
Quote Anchor link
O ja, niet goed gelezen.

In jouw geval kan je zo-iets doen

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
if ($_SERVER['REQUEST_METHOD'] != 'POST') {
  $_POST['terms'] = 'on';
}

  // onthouden checkbox
  echo '
  <form action="" method="post">
    <input type="checkbox" name="terms" '
. (!empty($_POST['terms']) ? 'checked="checked" ' : '' ) .'/> I accept the terms ... <br/>
    <input type="submit" value="GO"/>
  </form>
'
;
?>
Gewijzigd op 15/12/2010 02:01:18 door Kris Peeters
 



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.