PHP: Trabalhando o resultado obtido de uma consulta sql (checkbox)
Continuando a nossa batalha de códigos… vamos a mais um post.
A tabela abaixo (produtos) possui um campo chamado “ativo” e através desse campo será definido se o input type=’checkbox’ ficará marcado ou não.
O campo “ativo” receberá os valores 0 = não (ex: não exibir no site de vendas) e 1 = sim (exibir no site de vendas).
Veja como ficará a nossa tabela:
CREATE TABLE IF NOT EXISTS `produtos` ( `codigo` int(3) unsigned zerofill NOT NULL AUTO_INCREMENT, `descricao` varchar(50) COLLATE utf8_unicode_ci NOT NULL, `ativo` int(1) NOT NULL DEFAULT '0', PRIMARY KEY (`codigo`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci ; INSERT INTO `produtos` (`codigo`, `descricao`, `ativo`) VALUES (001, 'Produto1', 0), (002, 'Produto2', 1), (003, 'Produto3', 0), (004, 'Produto4', 1); |
Vamos ao código PHP:
<?php // variaveis para acesso ao banco de dados $servidor = 'localhost'; $username = 'root'; $password = ''; $database = 'lc'; // validando a conexao $conexao = mysql_connect($servidor, $username, $password) or die("Erro ao conectar ao banco de dados"); $db = mysql_select_db($database) or die("Erro ao selecionar banco de dados"); // efetuando um select na tabela Produtos $select = mysql_query("SELECT codigo, descricao, ativo FROM produtos"); // exibindo o resultado echo "<strong>Produtos</strong>:"; echo "<br />"; while ($rows = mysql_fetch_array($select)) { // recebendo o valor do campo ativo $check = $rows['ativo']; // se valor for igual a 1 é selecionado if ($check == 1) { $checked = "checked"; } else { // senão, fica em branco $checked = ""; } echo "<strong>Código</strong>: " . $rows['codigo']; echo " - "; echo "<strong>Descrição</strong>: " . $rows['descricao']; echo " - "; echo "<strong>Ativo</strong> <input type='checkbox' $checked /> "; echo "<br />"; } ?> |
Resultado:
Otimo post, porem nao funcionou no codigo que utilizei, o checkbox esta exibindo todos os campos marcados.
Olá Priscila,
por favor, compartilha o código para que eu possa te ajudar.
O código acima foi testado e funciona perfeitamente.
Quase isso!!
Tenho um formulario com box vindo do banco de dados.
Como faço um INSERT com os box’s selecionados?
segue link com resposta.