Jump to content


Photo

Consulta Com Array..


  • Faça o login para participar
2 replies to this topic

#1 Christiano N.

Christiano N.

    Novato no fórum

  • Usuários
  • 8 posts
  • Sexo:Não informado

Posted 15/06/2007, 00:30

Pessoal... primeiramente faz-se necessário saber que EXISTE na tabela (access)
"1ALERTA" e no campo "palavrachave" 2 registros já adicionados assim:
No registro 1-> palavrachave= flamengo, vasco
No registro 2-> palavrachave= vasco

Sendo assim, quero consultar os registros que contenham as palavras (flamengo, palmeiras)
como descriminado na variável "strpalavrachave".

SEGUE O CÓDIGO... SÓ NÃO CONSIGO ENTENDER PORQ DÁ ERRADO.
O RESULTADO É: "Não foi encontrado nenhum alerta para esta PALAVRA-CHAVE"

<%
strpalavrachave = "flamengo, palmeiras"
MyArray = Split(strpalavrachave, ",")
%>
<%
For I = LBound(MyArray) to Ubound(MyArray)

Set palavrachave = Server.CreateObject("ADODB.Recordset")
palavrachave.Open "SELECT * FROM 1ALERTA WHERE LCase(palavrachave) LIKE '%" & LCase(Trim(MyArray (I))) & "%' ", Conexao

Next

If palavrachave.EOF Then
response.write "Não foi encontrado nenhum alerta para esta PALAVRA-CHAVE"

Else

while Not palavrachave.EOF
%>

<%
strNome = palavrachave("nome")
strEmail = palavrachave("email")
		
response.write strEmail &"<br><br><br>"		   
%>	  

<%
palavrachave.MoveNext
wend 
End If

palavrachave.Close
Set palavrachave = Nothing
%>

PERCEBI QUE A CONSULTA SÓ É FEITA NA PALAVRA "palmeiras" e por isso não acha registro nenhum,
sendo q a consulta teria q ser nas duas palavras... flamengo, palmeiras.

E agora? Alguém sabe uma solução??? Por favorrr!!!!!!

#2 sk15

sk15

    Super Veterano

  • Usuários
  • 2071 posts
  • Sexo:Masculino
  • Localidade:SP - SP

Posted 15/06/2007, 01:27

Possivelmenete o erro está na forma de gravar os dados em vez de separar as palavras por virgulas (,) asism "flamengo, vasco", você deve separa-las com um espaço ( ) assim "flamengo vasco".

Uma outra forma é fazer o caminho inverso e listar todas as palavaras do banco para verificar posteriormente ...

#3 Christiano N.

Christiano N.

    Novato no fórum

  • Usuários
  • 8 posts
  • Sexo:Não informado

Posted 15/06/2007, 01:54

Possivelmenete o erro está na forma de gravar os dados em vez de separar as palavras por virgulas (,) asism "flamengo, vasco", você deve separa-las com um espaço ( ) assim "flamengo vasco".

Uma outra forma é fazer o caminho inverso e listar todas as palavaras do banco para verificar posteriormente ...


sk15.. tentei tirando a virgula e modificando o split, mas mesmo assim nao deu certo.

Mas, como q faço o caminho inverso????

obrigado por enquanto!!!




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq