Ir para conteúdo
Fórum Script Brasil
  • 0

Buscar Em Várias Tabelas


mkboy

Pergunta

Tenho duas tabelas no meu banco de dados.

tb_clientes (cliente_id, b_nome, b_endereco, b_bairro, b_cidade, b_estado, b_cep, b_cnpj, b_ie, b_telefone, b_fax, b_email, b_responsavel)

tb_dominios (id, b_dominio, b_orgao, b_registro, b_plano, b_renovar, b_valor, b_cliente)

E quero fazer um sistema de busca que eu possa entrar com a palavra chave e selecionar em qual campo eu quero fazer a busca, sendo que os campos estao distribuidos em duas tabelas, a tb_clientes e a tb_dominios

O formulario que montei de busca ficou assim:

user posted image

Com o código desta forma:(tirei uns campos, tabela e formatacao para ficar mais legivel)

<form action="busca.asp?tipo=cliente&cod=resultado" method="post"> 

Buscar: <input name="c_busca" type="text" id="c_busca" class="formgg">

<input type="submit" value="Buscar" name="B1" class="botao">

 

<input name="ck_razao" type="checkbox" id="ck_razao" value="ck_razao" checked >

<input name="ck_endereco" type="checkbox" id="ck_endereco" value="ck_endereco">

<input name="ck_bairro" type="checkbox" id="ck_bairro" value="ck_bairro">

</form>

Agora eu não sei o que fazer na action!

Como eu faço para achar uma palavra nestas tabelas de acordo com a palavra chave e o campo selecionado no check.

Como façO!?

Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0

NO action, você manda pra uma pagina ASP.

Dentro da pagina ASP, você testa o conteudo digitado, e a opção escolhida.

Aí, você faz os IFs necessários, para executar a busca na tabela selecionada.

Simples, né?

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0

É, eu achava que era simples, mas na hora de aplicar, apanhei, hehe!

ohmy.gif

Veja, se é assim!

<%

c_busca = Trim(replace(Request.form("c_busca"),"'","''"))

ck_razao = reques

t.Form("ck_razao")

ck_endereco = request.Form("ck_endereco")

ck_bairro = request.Form("ck_bairro")

ck_cidade = request.Form("ck_cidade")

ck_estado = request.Form("ck_estado")

ck_telefone = request.Form("ck_telefone")

ck_celular = request.Form("ck_celular")

ck_fax = request.Form("ck_fax")

ck_email = request.Form("ck_email")

ck_cnpj = request.Form("ck_cnpj")

ck_ie = request.Form("ck_ie")

ck_contato = request.Form("ck_contato")

ck_orgao = request.Form("ck_orgao")

ck_dominio = request.Form("ck_dominio")

ck_registro = request.Form("ck_registro")

ck_vencimento = request.Form("ck_vencimento")

%>

<% if ck_razao <> "" then %>

<%

strSql = "SELECT * FROM tb_clientes WHERE b_nome LIKE '%"&c_busca&"%' AND categoria='"&ck_razao&"' "

buscando.Open strSQL,DB,3,1

%>

<%end if %>

<% if ck_endereco <> "" then %>

<%

strSql = "SELECT * FROM tb_clientes WHERE b_endereco LIKE '%"&c_busca&"%' AND categoria='"&ck_endereco&"' "

buscando.Open strSQL,DB,3,1

%>

<%end if %>

..... asssim com todos os outros campos

<% if ck_dominio <> "" then %>

<%

strSql = "SELECT * FROM tb_dominios WHERE b_dominio LIKE '%"&c_busca&"%' AND categoria='"&ck_dominio&"' "

buscando.Open strSQL,DB,3,1

%>

<%end if %>

É assim que eu faço?

Esse select num fui eu quem fez, e não to entendendo essa linha:

buscando.Open strSQL,DB,3,1

Link para o comentário
Compartilhar em outros sites

  • 0

Hmm

na verdade, eu não faço desse modo aí!

<% if ck_razao <> "" then

strSql = "SELECT * FROM tb_clientes WHERE b_nome LIKE '%"&c_busca&"%' AND categoria='"&ck_razao&"' "

set rs = conexao.execute(strSql)

%>

Eu mechi na linha em azul..

Eu executo meus SQL assim..

Aí, depende da sua conexao.. pois, o CONEXAO.execute.. é o objeto de conexao com o banco

Ate mais

Link para o comentário
Compartilhar em outros sites

  • 0
Guest - mkboy -

Eu fiz o codigo abaixo e executei com uma palavra no campo e o campo razao social selecionado, vou postar o codigo e o erro:

                    <% if Request("cod") = "resultado" then %>

<%

c_busca = Trim(replace(Request.form("c_busca"),"'","''"))

ck_razao = Request.form("ck_razao")

ck_endereco = Request.form("ck_endereco")

ck_bairro = Request.form("ck_bairro")

ck_cidade = Request.form("ck_cidade")

ck_estado = Request.form("ck_estado")

ck_telefone = Request.form("ck_telefone")

ck_celular = Request.form("ck_celular")

ck_fax = Request.form("ck_fax ")

ck_email = Request.form("ck_email")

ck_cnpj = Request.form("ck_cnpj")

ck_ie = Request.form("ck_ie")

ck_contato = Request.form("ck_contato")

ck_orgao = Request.form("ck_orgao")

ck_dominio = Request.form("ck_dominio")

ck_registro = Request.form("ck_registro")

ck_vencimento = Request.form("ck_vencimento")

%><br>

<% if Request.form("c_busca") = "" then

response.write"<img src=""imagens/duvida.jpg"" >&nbsp;&nbsp;&nbsp; <font color=""#999900"" size=""2"" face=""Verdana"">O campo busca está vazio, tente novamente.</font>"

end if %>

<br>

<% if ck_razao <> "" then %>

<%

Sql1 = "SELECT * FROM tb_clientes WHERE b_nome LIKE '%"&c_busca&"%' AND categoria='"&ck_razao&"' "

set rs1 = conexao.execute(Sql1)

%>

<BR><BR>Razão Social: <%=rs("b_nome")%>

<%end if %>

<% end if %>

Deu este erro:

Tipo de erro:

Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)

[Microsoft][Driver ODBC para Microsoft Access] Parâmetros insuficientes. Eram esperados 1.

/galery/intranet/busca.asp, line 79

Onde a linha 79 é a seguinte

77. <%

78. Sql1 = "SELECT * FROM tb_clientes WHERE b_nome LIKE '%"&c_busca&"%' AND categoria='"&ck_razao&"' "

79. set rs1 = conexao.execute(Sql1)

80. %>

Link para o comentário
Compartilhar em outros sites

  • 0

Sim, bom..

1- Poste sua conexao, pra ver se está ok.

2- Dá um response.write no SQL1 (e comenta a linha do set rs1 = conexa.... E coloca RESPONSE.END logo apos o response.write, para parar a execução do codigo.

3- Esse erro, de parametros insuficientes, é que alguma das suas variaves, que fazem a comparação com o WHERE, estão vazias.

4- Veja se essas variaveis estão com valor. (Isso você vai ver quando mostrar na tela o SQL1)

ate mais

Link para o comentário
Compartilhar em outros sites

  • 0
Guest - mkboy -

Valeu dark

Consegui!!!! Achei que não conseguiria fazer um, mas com muita força de vontade e amigos como você eu consegui!

Legal mesmo!!!!]

VALEU

biggrin.gif

Link para o comentário
Compartilhar em outros sites

  • 0

porque você não posta logado?

como resolveu o problema?

abraços

Link para o comentário
Compartilhar em outros sites

  • 0

Okay

Vou fechar o Tópico aqui então!

Se alguém tiver mais alguma duvida sobre esse assunto, me envie uma PM, que eu reabro o tópico!

Abraços

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...