Jump to content


Photo

Ajax Com Asp - Problema Na Acentuação


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

#1 rafael50

rafael50

    Novato no fórum

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

Posted 09/11/2009, 15:00

estou com um problema em usar AJAX no ASP!!!
o problema é o seguinte:

tenho uma pagina .asp (UTF-8) com um link no qual irá para uma pagina .asp via ajax!
se eu submeter um campo de um formulário com acentos "áóú", ele faz a requisição certa, imprimi "áóú" poremmmm... se nessa pagina .asp tiver algum acento do tipo "áóúã....." ele cria um simbulo estranho (uma interrogação!) Só funciona se eu escrever ação (quero escrever 'ação' mas ele zoa tudo !)

já tentei usar o Response.CodePage = 65001 e Response.CharSet = "utf-8" porem NUNCA consegui fazer com q as 2 maneiras de acentuação funcionem !!

alguem sabe uma solução para isso ?!!

#2 DiegoCoruja

DiegoCoruja

    12 Horas

  • Usuários
  • 178 posts
  • Sexo:Masculino
  • Localidade:São Vicente - SP
  • Interesses:PROGRAMAÇÃO, WEB DESIGN, ESPORTE,

Posted 09/11/2009, 15:10

Ola amigo,
não funciona se colocar Response.Charset = "ISO-8859-1"
?
====================================================
Diego M.
Html, CSS, Javascript, Asp, Asp.net, Php, Sql Server, Mysql, Oracle, VB.NET, VBA
====================================================

#3 Alex Hiroshi

Alex Hiroshi

    Super Veterano

  • Ex-Admins
  • 4923 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP

Posted 09/11/2009, 15:12

A codificação do seu documento também está como utf-8?
Tente usar também um header:
Response.AddHeader "Content-Type", "text/html; charset=UTF-8"
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

Fórum WMO - Equipe de Desenvolvimento / Banco de Dados - Ex-Administrador

#4 rafael50

rafael50

    Novato no fórum

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

Posted 09/11/2009, 15:30

entao a pagina que vai por ajax possui o seguinte codigo apenas:


<%
	nome = request("nome")
	response.write nome
%>

áéóú


o valor que chega em nome é "ééé"
ai ele imprime ééé ��� (destroi a acentuação dos textos da pagina)

si eu colocar:


<%
	Response.Charset = "ISO-8859-1"
	 
	nome = request("nome")
	response.write nome

%>

áéóú

ai ele imprime: ééé áéóú (destroi a acentuação dos textos enviados pelo form via ajax)

oq fazer???

Edição feita por: rafael50, 09/11/2009, 15:32.


#5 DiegoCoruja

DiegoCoruja

    12 Horas

  • Usuários
  • 178 posts
  • Sexo:Masculino
  • Localidade:São Vicente - SP
  • Interesses:PROGRAMAÇÃO, WEB DESIGN, ESPORTE,

Posted 09/11/2009, 16:09

Já tentou a solução do Alex Hiroshi ?
====================================================
Diego M.
Html, CSS, Javascript, Asp, Asp.net, Php, Sql Server, Mysql, Oracle, VB.NET, VBA
====================================================

#6 rafael50

rafael50

    Novato no fórum

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

Posted 09/11/2009, 16:22

sim !!

não consigo fazer as 2 maneiras funcionar ! ou uma ou outra !

#7 DiegoCoruja

DiegoCoruja

    12 Horas

  • Usuários
  • 178 posts
  • Sexo:Masculino
  • Localidade:São Vicente - SP
  • Interesses:PROGRAMAÇÃO, WEB DESIGN, ESPORTE,

Posted 09/11/2009, 16:36

Fiz uma pagina teste e funcionou ficou assim
[codebox]<%@ Language=VBScript %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
</head>
<body>
áéíóú
</body>
</html>
[/codebox]
====================================================
Diego M.
Html, CSS, Javascript, Asp, Asp.net, Php, Sql Server, Mysql, Oracle, VB.NET, VBA
====================================================

#8 rafael50

rafael50

    Novato no fórum

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

Posted 09/11/2009, 16:38

essa pagina recebeu um ajax ??? com acentos tbm ??? os 2 funcionam ???????? esse é o problema !

#9 DiegoCoruja

DiegoCoruja

    12 Horas

  • Usuários
  • 178 posts
  • Sexo:Masculino
  • Localidade:São Vicente - SP
  • Interesses:PROGRAMAÇÃO, WEB DESIGN, ESPORTE,

Posted 09/11/2009, 16:50

no script do ajax

tem essa parte?
oHTTPRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

se tiver mude para essa e ve se da certo!
oHTTPRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=UTF-8");
ou
oHTTPRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=iso-8859-1");
====================================================
Diego M.
Html, CSS, Javascript, Asp, Asp.net, Php, Sql Server, Mysql, Oracle, VB.NET, VBA
====================================================

#10 rafael50

rafael50

    Novato no fórum

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

Posted 09/11/2009, 16:55

alterei... e nada ! =/

#11 DiegoCoruja

DiegoCoruja

    12 Horas

  • Usuários
  • 178 posts
  • Sexo:Masculino
  • Localidade:São Vicente - SP
  • Interesses:PROGRAMAÇÃO, WEB DESIGN, ESPORTE,

Posted 09/11/2009, 17:00

casildis, ultima tentativa

coloque no ajax

oHTTPRequest.setRequestHeader("encoding", "ISO-8859-1"); ou UTF-8
====================================================
Diego M.
Html, CSS, Javascript, Asp, Asp.net, Php, Sql Server, Mysql, Oracle, VB.NET, VBA
====================================================

#12 rafael50

rafael50

    Novato no fórum

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

Posted 09/11/2009, 22:40

nao consegui! =/

vc está conseguiu fazer com que as 2 maneiras chegasem os acentos corretos ???

#13 Marcos-RJ

Marcos-RJ

    Turista

  • Usuários
  • 31 posts
  • Sexo:Não informado
  • Localidade:Rio de Janeiro

Posted 30/01/2010, 20:51

eu uso assim em minhas paginas e funciona.


Edição feita por: Marcos-RJ, 30/01/2010, 20:54.

Se a resposta te ajudou, retorne ao tópico e diga, pois facilitará para outros usuarios

"É melhor pensar e depois falar, do que falar para depois pensar."
"Faça, cometa erros, mais não espere que as coisas aconteçam...nada cai do céu...as coisas so aconteceram se você fizer acontecer..."

Tenha sua loja virtual:
www.infomarcos.com

#14 marcussb

marcussb

    Novato no fórum

  • Usuários
  • 1 posts
  • Sexo:Masculino
  • Localidade:Rio de Janeiro

Posted 17/10/2011, 13:13

Sei que o tópico é antigo, porém, tente fazer um replace no meio dessas transações, trocando os acentos de acordo com a situação, isso pode ser que resolva, o saco é, fazer uma função para fazer esses replaces...

Tenho duas opções, tente primeiro um Server.HTMLEncode(texto), caso não funcione, tente as funções abaixo.

Function HTMLEspeciais(sString)
If (sString <> "") Then
sString = Replace(sString, "á", "&aacute;")
sString = Replace(sString, "â", "&acirc;")
sString = Replace(sString, "à", "&agrave;")
sString = Replace(sString, "ã", "&atilde;")

sString = Replace(sString, "ç", "&ccedil;")

sString = Replace(sString, "é", "&eacute;")
sString = Replace(sString, "ê", "&ecirc;")

sString = Replace(sString, "í", "&iacute;")

sString = Replace(sString, "ó", "&oacute;")
sString = Replace(sString, "ô", "&ocirc;")
sString = Replace(sString, "õ", "&otilde;")

sString = Replace(sString, "ú", "&uacute;")
sString = Replace(sString, "ü", "&uuml;")

sString = Replace(sString, "Á", "&Aacute;")
sString = Replace(sString, "Â", "&Acirc;")
sString = Replace(sString, "À", "&Agrave;")
sString = Replace(sString, "Ã", "&Atilde;")

sString = Replace(sString, "Ç", "&Ccedil;")

sString = Replace(sString, "É", "&Eacute;")
sString = Replace(sString, "Ê", "&Ecirc;")

sString = Replace(sString, "Í", "&Iacute;")

sString = Replace(sString, "Ó", "&Oacute;")
sString = Replace(sString, "Ô", "&Ocirc;")
sString = Replace(sString, "Õ", "&Otilde;")

sString = Replace(sString, "Ú", "&Uacute;")
sString = Replace(sString, "Ü", "&Uuml;")

sString = Replace(sString, """", "&quot;") '"
sString = Replace(sString, "<", "&lt;") '<
sString = Replace(sString, ">", "&gt;") '>
End If

HTMLEspeciais = sString
End Function

Function HTMLDecode(sText)
Dim I
sText = Replace(sText, "&quot;", Chr(34))
sText = Replace(sText, "&lt;" , Chr(60))
sText = Replace(sText, "&gt;" , Chr(62))
sText = Replace(sText, "&amp;" , Chr(38))
sText = Replace(sText, "&nbsp;", Chr(32))
For I = 1 to 255
sText = Replace(sText, "&#" & I & ";", Chr(I))
Next
HTMLDecode = sText
End Function


Espero poder ter ajudado

Edição feita por: marcussb, 17/10/2011, 13:15.


#15 Pardal3000

Pardal3000

    Novato no fórum

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

Posted 31/01/2014, 03:30

Vou ressuscitar esse tópico, pois talvez ajude outras pessoas...

Eu tentei de várias formas, e a única que resolveu foi salvar o documento com a codificação UTF-8 (Salvar Como > Encoding: UTF-8). Essa alternativa foi proposta acima, mas não foi dada tanta importância.

Espero ter ajudado! Abraço!




1 user(s) are reading this topic

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

IPB Skin By Virteq