Ir para conteúdo

POWERED BY:

Arquivado

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

Dell

busca com contagem de categorias

Recommended Posts

Eu fiz um sistema onde é exibido a categoria e a quantidade encontrada em cada uma.

O problema é que hora funciona e hora não. Dependendo da posição das palavras ele soma as categorias de forma errada.

 

Ex: Casa Azul - lista imoveis (1) > Realmente só há um produto que corresponde com a busca

Ex: Azul Casa - lista imoveis (30) > 30 é o total de produtos, deveria listar 1 como acima

 

dependendo da posição das palavras ele retorna o total de produtos cadastrados no banco e não o total de produtos na categoria.

Eu fiz um sistema pra exemplificar e vou colocar parte do código mais importante:

SaryWord = Split(busca, " ")

Sql = "SELECT * FROM produtos where titulo LIKE '%" & SaryWord(0) & "%'"
For intSQLLoopCounter = 1 To UBound(SaryWord)
Sql = Sql & " OR titulo LIKE '%" & SaryWord(intSQLLoopCounter) & "%' "
Next
Sql = Sql & " Order by nivel asc "

RS.Open SQL,Conn,3


intTotalRecordsFound = CInt(rs.RecordCount)

for i = 1 to intTotalRecordsFound
if rs.eof then exit for

meuarray = meuarray&rs("categoria")&","
vezes = vezes+1

rs.movenext
next

sarySearchWord = Split(meuarray, ",")

For i = 1 To UBound(SaryWord)
Sqy = Sqy & " OR titulo LIKE '%" & SaryWord(i) & "%' "
Next

For LoopCount = 0 to vezes-1


Set categoria = conn.execute("select * from categorias where id='"&sarysearchword(loopcount)&"'")


if categoria.eof then exit for


 if nivel<>"" and categoria("nivel")= nivel then

  qtd = qtd+categoria("qtd")

 else

  Set conta = conn.execute("select count(id) As total from produtos where  nivel="&categoria("nivel")&" and titulo like '%"&SaryWord(0)&"%' "&sqy&"")
  qtd = conta("total")
  response.write "<b>categoria</b> "&categoria("categ")&"<b> quantidade </b>"&qtd&"<br>"

 end if

 nivel = categoria("nivel")

 categoria.MoveNext


Next

Já fiz a busca com até 4 palavras vai normal, mas se eu for mudando a posição uma hora ele vai somar as categorias tudo errado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ainda não consegui resolver esse problema. Eu repito o código funciona e conta as categorias certinho mas as vezes de acordo com a posição das palavras a contagem é ignorada.

O problema esta na contagem. Não sei como resolver isso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pronto consegui, era só usar alguns parenteses nos lugares certos.

:unsure: Puxa alguém podia ter me dado essa dica :unsure:

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.