Marcelo Menezes Posted May 3, 2012 Report Share Posted May 3, 2012 (edited) Pessoal, boa tarde!Estou com um problema em relação a checkbox, consigo inserí-los no BD serializando como mostro abaixo:$dprojeto = array(); //Cria o Arrayfor($x=1; $x<=12; $x++){ //INÍCIO DO LOOP QUE VERIFICA QUAIS CHECKBOX ESTÃO MARCADOSif(isset($_POST["dprojeto$x"])) { //SE ALGUM ESTIVER MARCADO INSERE SEU VALOR NA ARRAY$dprojeto[] = $_POST["dprojeto$x"];}}$s_dprojeto = serialize ($dprojeto);Os valores do Array estão indo pro BD tranquilamente, quando tento resgatá-los para uma edição por exemplo como mostro abaixo:*** Toda a conexão do BD é feita antes e está OK!$id =$_GET["id"];$sql = "SELECT * FROM os_des WHERE id={$id}";$retorno= mysql_query($sql);// ler o retorno do banco de dados$linha = mysql_fetch_array($retorno); // ler o retorno do banco$s_dprojeto =$linha["dprojeto"];$dprojeto = unserialize($s_dprojeto);// AQUI EU DESERIALIZO A STRING, RECUPERANDO O ARRAY CATEGORIA->VALOR.A questão é :ninja: : Como faço para mostrar os checkbox "checados" com os valores que vem do banco? Edited May 3, 2012 by Marcelo Menezes Quote Link to comment Share on other sites More sharing options...
0 Renato Penna Posted May 3, 2012 Report Share Posted May 3, 2012 (edited) $dprojeto = array(); $i=0; foreach($_POST["dprojeto"] as $vet) { $dprojeto[$i] = $vet; $i++; } $dprojeto = sort($dprojeto); $id =$_GET["id"]; $sql = "SELECT * FROM os_des WHERE id={$id}"; $retorno= mysql_query($sql);// ler o retorno do banco de dados $linha = mysql_fetch_array($retorno); // ler o retorno do banco $linha = sort($linha); for($i=0;$i<count($dprojeto);$i++) { if($dprojeto[$i]==$linha[$i]) { echo $dprojeto[$i].'='.$linha[$i]; } } Edited May 3, 2012 by Renato Penna Quote Link to comment Share on other sites More sharing options...
0 JaguA Posted May 3, 2012 Report Share Posted May 3, 2012 Crie uma condição antes de imprimir os resultadoscompare o value do check box com o valor do check box c for = ele vai mostrar o Check box como checked c não ele mostra sem o checked Quote Link to comment Share on other sites More sharing options...
0 Marcelo Menezes Posted May 3, 2012 Author Report Share Posted May 3, 2012 Crie uma condição antes de imprimir os resultadoscompare o value do check box com o valor do check box c for = ele vai mostrar o Check box como checked c não ele mostra sem o checkedO problema é que tenho que imprimir em uma tabela, os checkbox estão em uma tabela.<td width="145"valign="top"><p><input type="checkbox" name="dprojeto1" checked=<?php echo $projeto;?> id="dprojeto1"/>Arquitetônico</p></td><td width="127" valign="top"><p><input type="checkbox" name="dprojeto2" checked=<?php echo $projeto1;?> id="dprojeto2" />Ambientação</p></td><td width="185" valign="top"><p><input type="checkbox" name="dprojeto3" checked=<?php echo $projeto2;?> id="dprojeto3" />Climatização</p></td <td valign="top"><p><input type="checkbox" name="dprojeto4" checked=<?php echo $projeto3;?> id="dprojeto4" />Elétrico</p></td><td valign="top"><p><input type="checkbox" name="dprojeto5" checked=<?php echo $projeto5;?> id="dprojeto5" />Estrutural</p></td><td valign="top"><p><input type="checkbox" name="dprojeto6" checked=<?php echo $projeto6;?> id="dprojeto6" />Hidráulico</p></td> Quote Link to comment Share on other sites More sharing options...
0 JaguA Posted May 3, 2012 Report Share Posted May 3, 2012 crie um loop onde voc vai imprimindo os checkbox e vai fazendo a condição quando um for igual ao o outro ele acrescent o checked se não continua imprimindo os check box normalmente.se você não consegui mais tarde depois do trampo vou bolar algo e posto aqui. Quote Link to comment Share on other sites More sharing options...
Question
Marcelo Menezes
Pessoal, boa tarde!
Estou com um problema em relação a checkbox, consigo inserí-los no BD serializando como mostro abaixo:
$dprojeto = array(); //Cria o Array
for($x=1; $x<=12; $x++){ //INÍCIO DO LOOP QUE VERIFICA QUAIS CHECKBOX ESTÃO MARCADOS
if(isset($_POST["dprojeto$x"])) { //SE ALGUM ESTIVER MARCADO INSERE SEU VALOR NA ARRAY
$dprojeto[] = $_POST["dprojeto$x"];}}
$s_dprojeto = serialize ($dprojeto);
Os valores do Array estão indo pro BD tranquilamente, quando tento resgatá-los para uma edição por exemplo como mostro abaixo:
*** Toda a conexão do BD é feita antes e está OK!
$id =$_GET["id"];
$sql = "SELECT * FROM os_des WHERE id={$id}";
$retorno= mysql_query($sql);// ler o retorno do banco de dados
$linha = mysql_fetch_array($retorno); // ler o retorno do banco
$s_dprojeto =$linha["dprojeto"];
$dprojeto = unserialize($s_dprojeto);// AQUI EU DESERIALIZO A STRING, RECUPERANDO O ARRAY CATEGORIA->VALOR.
A questão é :ninja: : Como faço para mostrar os checkbox "checados" com os valores que vem do banco?
Edited by Marcelo MenezesLink to comment
Share on other sites
4 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.