Checkbox Checked De Acordo Com O Bd
#1
Posted 02/03/2010, 16:18
Estou tentando fazer um banco de dados com ASP. Gostaria que ao exibir uma tabela com as informações retiradas do Banco de Dados do Access, uma checkbox fosse checked caso o valor do campo fosse Sim e vazia caso fosse Não, pois o tipo de dados referente ao campo é Sim/Não.
Obrigado.
#2
Posted 02/03/2010, 16:43
claro,
e essa checkbox habilitava a função inadimplencia, quando marcada ela deveria bloquear a criação de pedidos. Quando você pede para uma checkbox gravar o seu valor no bd quando ela está habilitada (checked) ela grava o valor "on" sem aspas no bd. Quando desmarcada (unchecked) ela não grava nda.
Então o que fiz foi uma consição if que segue abaixoif response.write rs("inadi") = "on" response.redirect("cod_abrecliente.asp?msg=Cadastro de pedidos bloqueados, cliente com pendências financeiras." end if
OBS: Não coloquei uma função else pois se estiver desmarcada ela grava um valor NULL então para simplificar fiz apenas assim, caso o valor seja num o codigo passa para a pagina de pedidos normalmente.
Ou seja, se você leu e entendeu, o BD irá gravar ON para SIM e NULL para NÃO, bastando então fazer um IF simples como descrito pelo colega.
Ae, com esse IF em ASP, você checa ou não o checkbox em html.
Ex.
<%if rs("booleano") = "on"%> <input type="checkbox" name="booleano" checked> <%else%> <input type="checkbox" name="booleano"> <%end if%>
Observe que mesclei HTML com ASP sem utilizar response.write. Você pode fazer da maneira que preferir.
#3
Posted 02/03/2010, 16:46
SQL = "Select Status From Tabela Where Codigo = 1" Set Rs = Server.CreateObject("ADODB.RecordSet") Rs.Open Sql, Conexao, 3, 3 IF Rs("Status") = "Sim" Then Checked = "checked = checked" End If Response.Write("<input type='checkbox' value='Sim' name='checkbox'" & Checked & ">")
#5
Posted 02/03/2010, 17:15
<% sql="SELECT * FROM andamento" tabela.open sql,conexao,3,3 SetLocale("pt-br") IF tabela("A1") = "Sim" Then A1 = "checked" End If while not tabela.eof %> <table width="20%" class="sample"> <tr><td>Contrato<td><%=tabela("Contrato")%> <tr><td>A1<td><%="<input type='checkbox' value='Sim' name='A1'" & A1 & ">"%>
<%if tabela("A1") = "Sim" THEN%> <input type="checkbox" name="A1" checked> <%else%> <input type="checkbox" name="A1"> <%end if%>
#7
Posted 02/03/2010, 17:45
<% SetLocale("pt-br") sql = "select * from andamento" tabela.open sql, conexao, 3, 3 %> <table width="20%" class="sample"> <tr> <td> Contrato <td> <td> A1 </td> </tr> <% Dim check : check = "" While Not tabela.eof If tabela("A1") = "Sim" Then check = "checked" Else check = "" End If %> <tr> <td><%=tabela("Contrato")%></td> <td><input type="checkbox" value="Sim" name="A1" <%=check%>></td> </tr> <% tabela.movenext() Wend %> </table>
Especialidade: Desenvolvimento e Banco de Dados.
Este post lhe ajudou? Agradeça:
#8
Posted 02/03/2010, 17:50
Isso que é trabalhar com o Access
Então, se você gravou algo como "Checado" e "não-checado" na sua SQL, é isso que deverá usar para testar.
Em suma, o Access deveria retornar "on" para o valor TRUE e NULL para o valor FALSE.
Poste o código que está usando para gravar seus campos no BD, isso pode ser útil.
0 user(s) are reading this topic
0 membro(s), 0 visitante(s) e 0 membros anônimo(s)