Problema ao marcar CHECKBOX com dados do banco PHP
Olá amigos!
Venho aqui por não estar conseguindo solucionar um problema ao recuperar dados cadastrados no banco de dados e abastecer os CHECKBOX.
O esquema é o seguinte, tenho uma tabela para cadastrar os recursos referentes a imóveis, como os imóveis podem ter vários recursos e os recursos podem existir em vários imóveis criei uma tabela de relacionamento.
O problema está em apresentar todos os dados cadastrados na tabela "recursos", sendo que os recursos que foram cadastrados no “formulário de cadastro” estejam marcados e os outros sem marcação. Esses dados devem ser apresentados no “formulário de atualização”, para caso o usuário deseje modificar os recursos referentes ao mesmo.
Estou conseguindo apresentar todos os dados da tabela “recursos”. Até consegui marcar a quantidade certa de recursos que foram cadastrados para o imóvel, mas nas opções erradas e não nas realmente cadastradas.
Ex:
Dados da tabela “recursos”:
1-Piscina
2-Varanda
3-Paisagismo
4-Garagem
5-Churrasqueira
6-Jardim de Inverso
7-Lareira
Itens cadastrados no imóvel:
1-Piscina
4-Garagem
6-Jardim de Inverso
Quando vou apresentar no “formulário de atualização” aparece:
1-Piscina - marcado
2-Varanda - marcado
3-Paisagismo - marcado
4-Garagem
5-Churrasqueira
6-Jardim de Inverso
7-Lareira
Onde eu posso estar errando? Tenho quase certeza que é na lógica, mas não tenho ideia de onde eu possa estar errando.
Código que estou utilizando:
<?php
$recursosimoveis = mysqli_query($conexao, "SELECT rel.idrecursoimovel idrecursoimovel, rec.recursoimovel recursoimovel FROM relimoveisrecursos rel, recursosimoveis rec WHERE rel.idrecursoimovel = rec.idrecursoimovel AND rel.idimovel = '".$fetchImovel->idimovel."' ORDER BY rel.idrecursoimovel ASC");
$i = 0;
while ($row = mysqli_fetch_array($recursosimoveis)) { $arrayRecursos[] = $row["idrecursoimovel"]; $i++; }
$recursos = mysqli_query($conexao, "SELECT * FROM recursosimoveis");
$i = 0;
while ($resrecursosimoveis = mysqli_fetch_array($recursos)) {
$pega_array = @$arrayRecursos[$i];
if (empty($pega_array)) { ?>
<div style="position:relative; width:33%; float:left;"><label><input type="checkbox" name="recurso[]" value="<?php echo $resrecursosimoveis["idrecursoimovel"]; ?>" /> <?php echo $resrecursosimoveis["recursoimovel"]; ?></label><br /><br /></div>
<?php } else { ?>
<div style="position:relative; width:33%; float:left;"><label><input type="checkbox" name="recurso[]" checked="checked" value="<?php echo $resrecursosimoveis["idrecursoimovel"]; ?>" /> <?php echo $resrecursosimoveis["recursoimovel"]; ?></label><br /><br /></div>
<?php }
$i++;
}
echo '<br><br><br><br><br>'; echo '<pre>'; print_r($arrayRecursos); echo '</pre>'; //exit;
?>
Desde já fico grato pela atenção.
Att,
Discussão (0)
Carregando comentários...