Tenho um conjunto de campos que pode ser adicionado quantas vezes quiser, entao coloquei os campos todos arrays, o problema ta sendo o checkbox, pois quando ele nao é marcado, nao acrescenta uma posição no array igual aos outros campos, dai quando vou cadastrar acaba indo errado para o banco, pensei talvez em deixar um valor pre-definido, q mudasse quando fosse marcado, mas nao to conseguindo fazer isso.
$nome = array_filter($_POST['nome']);
$cpf = array_filter($_POST['cpf']);
$celular = array_filter($_POST['celular']);
foreach ($_POST['check'] as $k => $value) {
if(isset($value)){
$check[$k]="true";
}else{
$check[$k]="false";
}
}
$quantidades = array_map(null, $nome, $cpf,$celular,$check);
foreach($quantidades as $i => $quantidade) {
list($nome, $cpf,$celular,$check) = $quantidade;
$sql1="insert into tb_teste (cd_familia,cpf,celular,nome,checkbox)values ('$cd_familia','$cpf','$celular','$nome','$check')";
<form class="" action="conexao.php" method="post">
<div id="origem">
<input type="text" name="nome[]" placeholder="nome" value="">
<input type="text" name="cpf[]" placeholder="cpf" value="">
<input type="text" name="celular[]" placeholder="celular" value="">
<input type="checkbox" name="check[]" value="" checked>
</div>
<div id="destino">
</div>
<input type="button" name="adicionar" onclick="adiciona_campo()" value="+" style="position:absolute; left:49.5%; top:74%; width:2.3%; height:4%; font-size:130%; padding:0;">
<input type="submit" name="exec" value="enviar">
</form>
<form class="" action="zerar.php" method="post">
<input type="submit" name="zerar" value="zerar sessao">
</form>