Ir para conteúdo

POWERED BY:

Arquivado

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

Fuca

Syntax error

Recommended Posts

Povo, me ajudem... (de novo, hehehe)

Faço uma pesquisa no site da minha empresa, e dá o seguinte erro:

 

 

Microsoft JET Database Engine error '80040e14'

Syntax error (missing operator) in query expression 'empresa like '%%' and cid_id='.

/anunciantes3/shc_emp.asp, line 126

 

O bloco onde está incluído a linha 126 (em negrito) é o seguinte:

 

<%

Dim lista_produtos,temp1,lista_categoriax,lista,cat_idx

 

Select Case Request.QueryString("lista")

Case "busca"

Select Case Request.QueryString("campo")

Case "todos"

Set lista_categoriax = listeuDB.Execute("SELECT id FROM categorias WHERE nome LIKE '%" & Request.QueryString("procurar") & "%'")

If lista_categoriax.EOF Then cat_idx = "a" Else cat_idx = lista_categoriax("id") End If

Set lista_produtos = listeuDB.Execute("SELECT * FROM anunciantes WHERE id LIKE '%" & Request.QueryString("procurar") & "%' OR cat_idx LIKE '%" & cat_idx & "%' OR cat_idx LIKE '%" & Request.QueryString("procurar") & "%' OR empresa LIKE '%" & Request.QueryString("procurar") & "%' OR endereco LIKE '%" & Request.QueryString("procurar") & "%' OR bairro LIKE '%" & Request.QueryString("procurar") & "%' OR cep LIKE '%" & Request.QueryString("procurar") & "%' OR estado LIKE '%" & Request.QueryString("procurar") & "%' OR contato LIKE '%" & Request.QueryString("procurar") & "%'ORDER BY empresa")

Case "cat_idx"

Case Else

Set lista_produtos = listeuDB.Execute("SELECT * FROM anunciantes WHERE empresa like '%" &Request.QueryString("procurar") & "%' and cid_id="&Request.QueryString("id_cid")&" ORDER BY empresa")

End Select

 

If Request.QueryString("produto") <> "" And Request.QueryString("procurar") = "" Then

Set lista_categoria = listeuDB.Execute("SELECT id FROM categorias WHERE nome LIKE '%" &Request.QueryString("produto") & "%'")

If lista_categoria.EOF Then cat_id = "a" End If

set lista_produtos = listeuDB.Execute("SELECT * FROM anunciantes WHERE cat_id = "&lista_categoria("id")&" and cid_id="&Request.QueryString("id_cid"))

End If

If lista_produtos.EOF Then

%>

<h3 align="center"><font style="bold">Não existe nenhum anunciante com essa

característica.</font></h3>

<div align="left">

<%

lista = "nao"

End If

Case "order"

Set lista_produtos = listeuDB.Execute("SELECT * FROM anunciantes ORDER BY empresa"& Request.QueryString("orderby") & " " & Request.QueryString("ord"))

If lista_produtos.EOF Then

%>

 

Não liguem para variáveis, está tudo certinho. Esse problema passou a ocorrer quando eu fiz um layout novo para o site. Esse código estava funcionando direitinho no layout antigo, mas passou a dar problemas no novo.

 

Desde já, agradeço a ajuda!

Compartilhar este post


Link para o post
Compartilhar em outros sites

não esta passando um id por isso o erro...verifique o porque disso...

Compartilhar este post


Link para o post
Compartilhar em outros sites

De acordo com o erro, o problema está na recuperação de dados da URL.Como você mencionou que mudou o layout do site, pode ter acidentalmente mudado o nome de algum campo da form.Tenta ver se o campo 'PROCURAR' ainda está como antes. Acredito que o problema seja esse, pois seu Request.QueryString("procurar") está retornando vazio.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Matei!!! :D

No site original, antes de entrar no site de pesquisa, a pessoa tinha de escolher a cidade onde a pesquisa iria ser feita.

Agora, como nesse projeto nenhuma cidade estava sendo escolhida, o campo id_cid estava retornando um valor nulo, o que dava erro na pesquisa.

Valeu a ajuda ae! http://forum.imasters.com.br/public/style_emoticons/default/hug.gif

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.