USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Dicas

  ASP - Active Server Page    (Miscelâneas)

Título da Dica:  Procura numa Base de Dados simples
Postada em 27/10/2003 por ^HEAVY-METAL^            
Bem, acho quase todos os programadores utilizam procuras na BD, por isso existe muitas maneiras de fazer o mesmo.
Aqui esta uma maneira simples de o fazer.

ficheiro : Search_simples.asp

<% Response.buffer=true%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Procura BD</title>
</head>
<body>

<%' Aqui esta o form (pus as duas partes do script numa só, porque isso faz o programa mais rapido)

' Aqui vimos se o form jà foi submitido ou não
if request("nome")="" And request("ultimo_nome")="" then %>
    <form method="POST" action="search_simples.asp"><BR>
    <BR>
    <div align="center">Nome<center><p><input type="text" name="nome"   size="10"><br>Password
   <div align="center"><center><p><input type="text" name="ultimo_nome" size="10"><br>
   <input type="submit"></p>
   </center></div>
   </form>
<%
' Caso jà tido submitdo vamos fazer a procura
else
' ligação DSN-less a BD
   dim rs, cs
   sub openrs (q)
      ' muda o path da BD "d:\WWWROOT\tutor..."
       cs = "DBQ=info.mdb;DefaultDir=d:\WWWROOT\tutorials\DBsearch\;Driver={Microsoft Access Driver (*.mdb)};"
      Set rs = Server.CreateObject("ADODB.Recordset")
      rs.open q, cs, 3, 3, 1
   end sub
    ' aqui fazemos o request das vàriaveis
   nome=request("nome")
   ultimo_nome=Request("ultimo_nome")
   ' aqui vimos se o campo nome foi submetido
    if nome>"" then
       sql="select * from dados where nome Like'%"&nome&"%'"
    end if
     ' aqui vimos se o campo ultimo foi submetido
    if ultimo_nome>"" then
     ' aqui vimos se foi so o campo ultimo_nome ou os dois para construir o SQL
           if nome>""then
           sql=sql & " AND ultimo_nome like '%"& ultimo_nome &"%'"
        else
            sql="select * from dados where ultimo_nome  Like'%"&ultimo_nome&"%'"
       end if
    end if
   ' aqui escrevemos o o sql para ver se ha errors
   Response.write sql & "<BR>"
   ' aqui vamos abrir a BD no sitio do nosso criterio
   openrs sql
   if not rs.eof then
      do while not rs.eof
       Response.write rs("nome") & " " & rs("ultimo_nome") &"<BR>"
        rs.movenext
       loop
   else
      Response.write "Nao foi encontrado nada, tente de novo"
   end if
rs.close
set rs=Nothing
end if

' o Sinal de % e o wildcard, isto faz que se encontra tudo basta, por uma letra
' ex. na Bd exsiste "joao" se eu nao tiver % a frente ou atras a procura tem de ser exacta
' mas se tiver o Sinal % atras pores  "j" e vai me dar o resultado joao
' Se tiver dos dois lados, ate posso por so uma letra "a" e vai me dar tudo que tiver um "a"
%>
</body>
</html>


T+,
 


CyberWEB Network Ltda.    © Copyright 2000-2024   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página