public
Created

Handling multiple checkboxes in an easy way

  • Download Gist
multi_checkbox.php
PHP
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
<?php
$mPost = array(
'action' => 'send',
'user' => 'Horst',
'a' => 'On',
'c' => 'On',
'foo' => 'bar',
'baz' => '',
);
 
$defaults = array(
'a' => '',
'b' => '',
'c' => '',
);
 
$data = array_merge( $defaults, $mPost );
 
$bin = '';
 
foreach( $defaults as $key => $val ){
$bin .= sprintf( '%b', !!$data[$key] );
//$bin .= ! empty( $data[$key] ) ? '1' : '0';
}
 
$dec = bindec( $bin );
 
var_dump( $bin );
var_dump( $dec );
 
switch( $bin ){
case '000':
//nichts ausgewaehlt
break;
case '100':
// nur checkbox 'a' wurde ausgewählt
break;
case '101':
// checkbox 'a' wurde ausgewaehlt, checkbox 'b' jedoch NICHT
break;
default:
// alle anderen Faelle
break;
}

Please sign in to comment on this gist.

Something went wrong with that request. Please try again.