Ir para conteúdo

POWERED BY:

Arquivado

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

Ale Gouveia

Busca sem acento

Recommended Posts

Agora é o meu emprego que depende disso genteeee.. kkkkk

e esse ai num deu certo não

 

fika assim

 

(nome_produto LIKE '%gr[a, á , ã]f[i , í , ì][c , ç][a, á , ã]%' OR descricao_produto LIKE '%gr[a, á , ã]f[i , í , ì][c , ç][a, á , ã]%')

 

e acaba num achando bulhufas...

 

http://forum.imasters.com.br/public/style_emoticons/default/sick.gif

 

 

 

Tópico referência

Compartilhar este post


Link para o post
Compartilhar em outros sites

dá uma pesquisada no lab. De script, k existem vários exemplos, com ótimas funções para remover acento

Compartilhar este post


Link para o post
Compartilhar em outros sites

MY SQL... já procurei e tudo que é klugar.. já testei umas 5 funções diferentes.. num sei o que faço de errado... http://forum.imasters.com.br/public/style_emoticons/default/cry.gif http://forum.imasters.com.br/public/style_emoticons/default/cry.gif http://forum.imasters.com.br/public/style_emoticons/default/cry.gif http://forum.imasters.com.br/public/style_emoticons/default/cry.gif http://forum.imasters.com.br/public/style_emoticons/default/cry.gif

qual banco de dados?

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

A ultima coisa que fiz.. foi esse função

 

 

function palavrasem(Str)

 

palavrasem = Replace(Str,"a","[a, á , ã]")

palavrasem = Replace(palavrasem,"A","[A, Á, Ã]")

palavrasem = Replace(palavrasem,"e","[e, é , è , ê]")

palavrasem = Replace(palavrasem,"E","[E , É , Ê]")

palavrasem = Replace(palavrasem,"i","[i , í , ì]")

palavrasem = Replace(palavrasem,"I","[i , Í]")

palavrasem = Replace(palavrasem,"o","[o , ó , ò , ô , õ]")

palavrasem = Replace(palavrasem,"O","[O , Ó , Ô , Õ]")

palavrasem = Replace(palavrasem,"u","[u , ú , ù]")

palavrasem = Replace(palavrasem,"U","[u , Ú]")

palavrasem = Replace(palavrasem,"c","[c , ç]")

palavrasem = Replace(palavrasem,"C","[C , Ç]")

palavrasem = palavrasem

end function

 

function palavracom(Str)

palavracom = Replace(Str,"ã","[a]")

palavracom = Replace(palavracom,"Ã","[A]")

palavracom = Replace(palavracom,"á","[a]")

palavracom = Replace(palavracom,"Á","[A]")

palavracom = Replace(palavracom,"ê","[e]")

palavracom = Replace(palavracom,"Ê","[E]")

palavracom = Replace(palavracom,"í","")

palavracom = Replace(palavracom,"Í","")

palavracom = Replace(palavracom,"õ","[o]")

palavracom = Replace(palavracom,"Õ","[O]")

palavracom = Replace(palavracom,"ú","")

palavracom = Replace(palavracom,"Ú","")

palavracom = Replace(palavracom,"ç","[c]")

palavracom = Replace(palavracom,"Ç","[C]")

palavracom = palavracom

end function

 

nome = Palavrasem(request("produto"))

nome2 = Palavracom(request("produto"))

 

Query_produtos = "SELECT Produtos.codigo_produto, Produtos.nome_produto, Produtos.descricao_produto, Produtos.autor, Produtos.codigo_isbn, Produtos.tamanhos, Produtos.cores, Produtos.preco_base, Produtos.preco_unitario, Produtos.desconto, Produtos.moeda, Produtos.quantidade_produto, Produtos.img_produtoPQN, Produtos.img_produtoGRD, Produtos.img_produto_adic01PQN, Produtos.img_produto_adic01GRD, Produtos.img_produto_adic02PQN, Produtos.img_produto_adic02GRD, Produtos.img_produto_adic03PQN, Produtos.img_produto_adic03GRD, Produtos.peso, Produtos.destaque_vitrine, Produtos.data_inicio, Produtos.data_fim, Produtos.disponivel, Produtos.sigla_idioma FROM Categorias INNER JOIN Produtos ON Categorias.codigo_categoria = Produtos.codigo_categoria WHERE (nome_produto LIKE '%" & nome & "%' OR descricao_produto LIKE '%" & nome & "%')OR (nome_produto LIKE '%" & nome2 & "%' OR descricao_produto LIKE '%" & nome2 & "%') AND Produtos.codigo_categoria = "&request("codigo_categoria")&" AND Produtos.sigla_idioma = '"&varLang&"' AND Categorias.sigla_idioma = '"&varLang&"' AND Produtos.disponivel = 1 " & queryORDERBY

 

alguém tem idéia do que pode estar errado nisso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

teste essa funcaun

 

Function RemoveAcentos(ByVal Texto)
   Dim ComAcentos  
  Dim SemAcentos   
 Dim Resultado       
 Dim Cont  
  'Conjunto de Caracteres com acentos 
   ComAcentos = "ÁÍÓÚÉÄÏÖÜËÀÌÒÙÈÃÕÂÎÔÛÊáíóúéäïöüëàìòùèãõâîôûêÇç"  
  'Conjunto de Caracteres sem acentos  
  SemAcentos = "AIOUEAIOUEAIOUEAOAIOUEaioueaioueaioueaoaioueCc"    
Cont = 0  
  Resultado = Texto   
 Do While Cont < Len(ComAcentos)   
     Cont = Cont + 1   
     Resultado = Replace(Resultado, Mid(ComAcentos, Cont, 1), Mid(SemAcentos, Cont, 1)) 
   Loop  
  RemoveAcentos = Resultado
End Function

Compartilhar este post


Link para o post
Compartilhar em outros sites

Gente.. fiz exatamente esse mostrado acima

Function of_acento(Texto)

Texto = UCAse(Texto)

Texto = Replace(Texto, "Ã", "[ã,a,á,â,à]")

Texto = Replace(Texto, "Â", "[ã,a,á,â,à]")

Texto = Replace(Texto, "Á", "[ã,a,á,â,à]")

Texto = Replace(Texto, "À", "[ã,a,á,â,à]")

Texto = Replace(Texto, "A", "[ã,a,á,â,à]")

 

Texto = Replace(Texto, "É", "[é,è,e,ê]")

Texto = Replace(Texto, "È", "[é,è,e,ê]")

Texto = Replace(Texto, "Ê", "[é,è,e,ê]")

Texto = Replace(Texto, "E", "[é,è,e,ê]")

 

Texto = Replace(Texto, "Í", "[i,í,ì,î]")

Texto = Replace(Texto, "Ì", "[i,í,ì,î]")

Texto = Replace(Texto, "Î", "[i,í,ì,î]")

Texto = Replace(Texto, "I", "[i,í,ì,î]")

 

Texto = Replace(Texto, "Ò", "[o,ó,ò,ô,õ]")

Texto = Replace(Texto, "Ó", "[o,ó,ò,ô,õ]")

Texto = Replace(Texto, "Õ", "[o,ó,ò,ô,õ]")

Texto = Replace(Texto, "Ô", "[o,ó,ò,ô,õ]")

Texto = Replace(Texto, "O", "[o,ó,ò,ô,õ]")

 

Texto = Replace(Texto, "Ú", "[u,ú,ù,û]")

Texto = Replace(Texto, "Ù", "[u,ú,ù,û]")

Texto = Replace(Texto, "Û", "[u,ú,ù,û]")

Texto = Replace(Texto, "U", "[u,ú,ù,û]")

of_acento = Texto

End function

 

Sub lista_produtos2()

 

produto = request("produto")

cor = request("autor")

 

Call abre_conexao(conexao)

 

busca = Request("produto")

nome = of_acento(busca)

 

Query_produtos = "SELECT Produtos.codigo_produto, Produtos.nome_produto, Produtos.descricao_produto, Produtos.autor, Produtos.codigo_isbn, Produtos.tamanhos, Produtos.cores, Produtos.preco_base, Produtos.disponivel, Produtos.sigla_idioma FROM Categorias INNER JOIN Produtos ON Categorias.codigo_categoria = Produtos.codigo_categoria WHERE (nome_produto LIKE '%" & nome & "%' OR descricao_produto LIKE '%" & nome & "%')"

 

 

 

só a busca fika assim

WHERE (nome_produto LIKE '%GR[ã,a,á,â,à]F[i,í,ì,î]C[ã,a,á,â,à]%' OR descricao_produto LIKE '%GR[ã,a,á,â,à]F[i,í,ì,î]C[ã,a,á,â,à]%')

e não aparece nada

Compartilhar este post


Link para o post
Compartilhar em outros sites

Espero que te ajude você ter uma idéia!

 

Esse faz busca ex: Código = Codigo

 

No meu site está assim:

 

conn.asp

 

Function RemoveAcentos(ByVal Texto)
    Dim ComAcentos
    Dim SemAcentos
    Dim Resultado
	Dim Cont
    'Conjunto de Caracteres com acentos
    ComAcentos = "ÁÍÓÚÉÄÏÖÜËÀÌÒÙÈÃÕÂÎÔÛÊáíóúéäïöüëàìòùèãõâîôûêÇç"
    'Conjunto de Caracteres sem acentos
    SemAcentos = "AIOUEAIOUEAIOUEAOAIOUEaioueaioueaioueaoaioueCc"
    Cont = 0
    Resultado = Texto
    Do While Cont < Len(ComAcentos)
	Cont = Cont + 1
	Resultado = Replace(Resultado, Mid(ComAcentos, Cont, 1), Mid(SemAcentos, Cont, 1))
    Loop
    RemoveAcentos = Resultado
End Function

search.asp

 

<%
	            
	BRpagina   = ""
	BRpagina   = "anuncios"
	
	BRuf            		= trim(request("estado"))
	BRcidade        		= trim(request("cidade"))
	BRsegmento        		= trim(request("segmento"))
	BRpalavraChave  		= trim(request("palavra_chave"))
	BRpalavraChaveSemAcento         = UCASE(RemoveAcentos(BRpalavraChave))
	
	Response.Write(BRuf)
	Response.Write(BRsegmento)
	
	if BRsegmento <> "" then
		set BRrsSegmentoBusca = conn.execute("SELECT titulo FROM guia_grupos WHERE codigo='"&BRsegmento&"'")
		if not(BRrsSegmentoBusca.eof) then
			BRSegmentoBusca = BRrsSegmentoBusca("titulo")
		end if
		set BRrsSegmentoBusca = nothing
	end if
	
	if BRcidade <> "" then
		set BRrsCidade = conn.execute("SELECT dsc_cidade FROM tab_cidades WHERE id_cidade='"&BRcidade&"'")
		if not(BRrsCidade.eof) then
			BRmomeCidade = BRrsCidade("dsc_cidade")
		end if
		set BRrsCidade = nothing
	end if
	
	 
%>

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente colocar o famoso

 

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>

na primeira linha do seu code e utilize uma das funtions postadas para tratamento de acentos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

DEsculpe-me colegas... tava postando no lugar errado....

Bruno.... voou testar o seu tá?

 

Bruno.. testei... mas no meu caso.. se a pessoa digita grafica.. tem q achar gráfica por ex.. ai num funcionou não

se puder dar uma olhada aki

http://shopsul.tempsite.ws/estiloguias/default_teste.asp

 

Fika assim o Select

(nome_produto LIKE '%grafica%' OR descricao_produto LIKE '%grafica%')

 

E se eu digito gráfica

 

(nome_produto LIKE '%grfica%' OR descricao_produto LIKE '%grfica%')

Compartilhar este post


Link para o post
Compartilhar em outros sites

verifique o codepage, charset e o tipo de codificação do arquivo. Todos devem estar compativeis

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.