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

Busca Em Banco De Dados Usando Listbox Como ?


Guest {_carnificina_}

Pergunta

Guest {_carnificina_}

Ola pessoal já venho acompanhando o forum há algum tempo sempre lendo as materias.

estou com uma pequena duvida será que alguém poderia me ajudar. a duvida é a seguinte.

tenho um banco de dados access e fiz uma pagina de busca. até ai beleza.

ele faz a busca na coluna musica sendo que tem nove colunas.

o comando fica assin.

SELECT *

FROM ultra

WHERE Musica LIKE '%Varmusica%'

Varmusica % Request.QueryString("busca")

como vocês podem ver essa pagina espera um session do text field chamado ( busca )

eu gostaria de colocar na pagina de busca um listbox que ele possa selecionar a coluna da minha tabela a qual a busca será feita.

usando 2 text field eu consigo mais usando listbox não.

alguém poderia me ajudar gostaria de fazer isso no dreamweaver já que o uso para isso.]

gostaria que ficasse assim.

um campo para busca e outro para selecionar a coluna que seria feita a busca.

user posted image

desde já fico muito grato.

Link para o comentário
Compartilhar em outros sites

Posts Recomendados

  • 0

<%
Dim Recordset1
Dim Recordset1_numRows

Set Recordset1 = Server.CreateObject("ADODB.Recordset")
Recordset1.ActiveConnection = MM_ucom_STRING
Recordset1.Source = "SELECT *  FROM ultra  WHERE  '" + Replace(Recordset1__Varcampo, "'", "''") + "' LIKE '%" + Replace(Recordset1__MMColParam, "'", "''") + "%'"
Recordset1.CursorType = 0
Recordset1.CursorLocation = 2
Recordset1.LockType = 1
Recordset1.Open()

Recordset1_numRows = 0
%>
<%
Recordset1.Close()
Set Recordset1 = Nothing
%>

ai a a string depois do WHERE não a recebe.

peço desculpa ter colocar assim parte do codigo o forum não estava aceitando que estranho. Porque não deixou eue colocar tudo em um post

Link para o comentário
Compartilhar em outros sites

  • 0
Nem coloquei campo na pagina de resultado só para elustrar o que o dreamweaver gera foi usado vbscript.

Olha.

"SELECT * FROM ultra WHERE Musica LIKE '%" + Replace (Recordset1__MMColParam, "'", "''") + "%'"

Como você pode ver depois do LIke ele está solicitando uma string que está sendo enviada pelo campo de texto da pagina de busca.

Desta forma funciona só que está fazendo a busca só no campo musica do banco de dados

FROM ultra WHERE Musica

o que eu queria era fazer com que a string mudasse o WHERE Musica

como musica é um dos campo se o select mandasse um string para esse pedaço mudaria o campo ao qual seria feita a busca.

ex:

WHERE Musica

WHERE Album

WHERE Interprete

mais quando coloco um request.string depois do where ele não recebe ela de forma alguma.

tipo assim pagina de resultados com string depois do WHERE

Cara já te dei a resposta, faça um switch() para transformar o request do select de inteiro para String...è apenas isso ,num tem maisnada há fazer, a resposta já foi dada a muito tempo....

você já tentou isso que te falei????

você já pediu para ele imprimir na o request do select???

Faça isso , e verá que ele retorna um inteiro...Nada mais!!!

Link para o comentário
Compartilhar em outros sites

  • 0

Kabelera agradeço sua ajuda mais o que está me parando aqui é o fato de ser leigo em asp swist( ) estou meio perdido estou usando só os recursos do dreamweaver para fazer isso.

sei que o problema está na causula sql mais ai como fazer um colega me enviou uma string mais não rola me retorna erro.

ela até funciona com valores exatos mais se coloco um valor inesistente da erro.

( estranho )

Link para o comentário
Compartilhar em outros sites

  • 0
Kabelera agradeço sua ajuda mais o que está me parando aqui é o fato de ser leigo em asp swist( ) estou meio perdido estou usando só os recursos do dreamweaver para fazer isso.

sei que o problema está na causula sql mais ai como fazer um colega me enviou uma string mais não rola me retorna erro.

ela até funciona com valores exatos mais se coloco um valor inesistente da erro.

( estranho )

OK... faz o seguinte para você testar, deleta a váriavel que do where que recebe o Select form e coloque uma string fixa só para testar...exemplo

where album ....

veja se funcioana....

é eu não tabalho com ASP , veja algo semelhante a isso..

int mod=(Integer.parseInt(request.getParameter("tipo")));
String g="";
 switch(mod){
case 1 : g="Album";break;
case 2 : g="Artista";break;
}

e na variável where coloque o g

Link para o comentário
Compartilhar em outros sites

  • 0

Kabelera muito obrigado pela ajuda mais descobri o erro era uma detalhe ridículo mais fez adiferença.

Gostaria de agradecer e muito o indrema DS e o camarada dele que madou a causula certa depois pergunto para ele o nome e posto aqui.

a causula correta é.

"SELECT * FROM ultra WHERE " + String(Request.querystring('txtcampo')) + " like '%" + String(Request.querystring('txtproc')) + "%'";

o que estava ocorrendo eu colocava isso no dreamweaver e ele desativava o codido depos o txtcampo e eu não intendia, ai o colega indrema Ds tinha me enviado os arquivos que o camarada dele tinha feito ai comecei a verificar minunsiosamente. e vi que faltava algo.

refiz todo o codigo usando o asp em java script.

depois percebi que no meu Bidings do dreamweaver tinha um requestn na pagina enviado pelo idrema

estava

lá.

request

+ form.txtcampo

pesei não pode ser.

criei esse request pelo menu bidings do dreamweaver e selecionei o request.form e dei o nome de txtcampo

na hora que fiz isso a causula que o dreamweaver desabilitava ficou abilitada ai tentei fazer a busca cara na mosca funcionou de prima.

como pode isso o pior que revisei o codigo todo e percebi que o resquest form.txtcampo só aparece no menu bidings do dreamweaver e não no codigo.

ta certo que coloquei isso manualmente mais o dreamweaver desabilitou o codigo.

sinistro mais funcionou.

agradeço a galera que ajudou.

Idrema Ds colega dele( depois posto o nome ) e o Kabelera

depois irei postar minha experiencia bem explicada. ensinando a fazer uma busca avançada.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

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