Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

RF programação

Checkbox e select

Recommended Posts

Oi gente, tô precisando de uma ajuda e não sei como fazer. :wacko:

 

Eu preciso fazer um select que busque somente os campos que estiver marcado pelo checkbox.

Obs: o código está funcionando sem o checkbox.

 

# meu select:

sqlstmt = "SELECT * FROM Tabela1 WHERE CLIENTE like '%"+Palavra+"%' and on='"&checkbox&"' or PRODUTO like '%"+Palavra+"%' and on='"&checkbox&"' and DATA between #" +  dteInicial + "# and #" + dteFinal + "# ORDER BY CLIENTE ASC"

# o checkbox

<input type="checkbox" name="checkbox" value="ON" checked>CLIENTE<p>
<input type="checkbox" name="checkbox" value="ON" checked>PRODUTO<p>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você tem que informar no checkbox um código para identificar o cliente ou o produto.

 

Na página que mostra o resultado da busca, faça:

check = Request.Form("checkbox")
If (check = 1) Then
	 buscarPor = "CLIENTE like '%"+Palavra+"%' and"
Else
	 buscarPor = "PRODUTO like '%"+Palavra+"%' and"
End If

sqlstmt = "SELECT * FROM Tabela1 WHERE " & buscarPor & " DATA between #" +  dteInicial + "# and #" + dteFinal + "# ORDER BY CLIENTE ASC"

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dê uma olhada no código, preciso por mais um campo:

 

<%
Session.LCID = 1046
Palavra = request.form("Palavra")
If Request.Form("Palavra")<>"" Then
	  dim dteInicial 
	  dteInicial = Request.Form("txtDataInicial")
	  dteInicial = Year(dteInicial) & "/" & Month(dteInicial) & "/" & Day(dteInicial)

	  dim dteFinal 
	  dteFinal = Request.Form("txtDataFinal")
	  dteFinal = Year(dteFinal) & "/" & Month(dteFinal) & "/" & Day(dteFinal)

DSNtemp="DRIVER={Microsoft Access Driver (*.mdb)}; "
DSNtemp=dsntemp & "DBQ=" & server.mappath("dados/db.mdb")

check = Request.Form("checkbox")
If (check = 1) Then
	 buscarPor = "CLIENTE like '%"+Palavra+"%' and"
Else
	 buscarPor = "PRODUTO like '%"+Palavra+"%' and"
Else
	 buscarPor = "OBSERVACAO like '%"+Palavra+"%' and"
End If

sqlstmt = "SELECT * FROM tabela WHERE " & buscarPor & " DATA between #" +  dteInicial + "# and #" + dteFinal + "# ORDER BY CLIENTE ASC"

Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open sqlstmt, DSNtemp, 3, 3
totalrecs = rs.recordcount
if rs.eof then 
%>
Nenhum registro encontrado!
 
<% else
Do While not rs.eof
%>
<% ID= rs("ID") %>

<% =DATA %>
<% DATA=rs("DATA")%><BR>

<% =rs("PRODUTO") %>
<% PRODUTO=rs("PRODUTO")%><BR>

<% =rs("CLIENTE") %>
<% CLIENTE=rs("CLIENTE")%><BR>

<% =rs("OBSERVACAO") %>
<% OBSERVACAO=rs("OBSERVACAO")%><BR>

<%
rs.movenext
loop
end if
Else
	 Response.Write "Data inválida"
end if
%>

e na busca:

 

 

<form action="resultado.asp" method="post">
Palavra chave:
<input type="text" name="Palavra" value="" /><br />

<input type="checkbox" name="CLIENTE" value="1" checked>CLIENTE<p>
<input type="checkbox" name="PRODUTO" value="1" checked>PRODUTO<p>
<input type="checkbox" name="OBSERVACAO" value="1" checked>OBSERVACAO

<BR>
Data Inicial:
<input type="text" name="txtDataInicial" value="01/01/2008" size="20" />
<br />
Data Final:
<input type="text" name="txtDataFinal" value="01/01/2009" size="20" />
<br />

<input type="submit" value="Buscar" />
</form>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Que isso... você quer que eu programe pra você?

 

É só acrescentar um ElseIf ...

 

E outra coisa... se colocar valor 1 para todos... sempre vai entrar no primeiro IF... cada checkbox tem que ter um valor único.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado hargon, estou aprendendo asp...

desculpa qualquer coisa!

Tranquilim.. tipo é só tentar o entendimento um pouco. Ajudar não é problema, o problema é entregar o código pronto.

 

Qualquer dúvida poste aí. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.