Indietro

Termine: Costruzione checkbox dinamico basato su Array

Le opzioni del checkbox si creano dinamicamente a partire da un array, es;
$ck_tipopagamento=array ("1"=>"Bonifico", "2"=>"Carta di Credito", "3"=>"Contanti");

Il dato viene memorizzato in un unico campo del database con valori numerici separati da virgola, ad esempio:
1;3;6


<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Costruzione checkbox dinamico basato su Array</title>
</head>

<body>
<?php
	//ELABORAZIONE VALORE PRIMA DI INSERIRLO NEL DATABASE
	//Compongo la stringa $tipopagamento da inserire nel database in un unico campo
	
	//Lunghezza array, numero scelte checkbox
	$lunghezza=count($_POST['ck_tipopagamento']); 
	for ($indice= 0; $indice <= $lunghezza; ++$indice) 
	{
		$tipopagamento.= $_POST['ck_tipoazienda'][$indice].";";	
	} 	
?>

<?php
	//INPUT contenuto del campo del database tipopagamento (valori separati da ;) 
	$pagamenti="1;3"; // $modificare[tipoazienda] valore di test es. 1; 3;
	
	$ck_tipopagamento=array ("1"=>"Bonifico", "2"=>"Carta di Credito", "3"=>"Contanti");
	
	
	//Ricreo array
	$ck_settati = explode(';', $pagamenti);
	
	//Ciclo sull'array ck_tipopagamento
	//Se valore settato nel database check attivato
	foreach ($ck_tipopagamento as $k => $v)
	{          
		//I valori vengono inseriti in un array dinamico ck_tipopagamento[]
?> 
<input type="checkbox" name="ck_tipopagamento[]" value="<?php echo $v; ?>" <?php if (in_array($k, $ck_settati)) {echo "checked";} ?>/>
<?php echo $v; ?>          
<?php
	}
?> 

</body>
</html>

Alessandro Piffero

Sviluppo applicazioni Web
Partita IVA: IT01557500038

CONTATTI

Via del Lauro, 10
28821 Cannero Riviera (VB) ITALY
alex@piffero.it
PEC: piffero@pec.it
348 8734510
Modulo contatto