none
Problemas com acentuação - Idiomas RRS feed

  • Pergunta

  • Estou usando o componente ASP XML HTTP para chamar uma URL em outro servidor passando como parâmetros alguns dados que vão acentuados, como por exemplo Nome e outros, e lá ele inclui em minha conta os dados passados.

    Ele inclui tudo correto mas ocorre que quando vou ver os dados acessando o site onde possibilita ver os dados incluidos, todos os campos que estão acentuados perdem a acentuação e são mostrados com o caracter ?

    Exemplo :

    CONCEIÇAO   VIRA ---> CONCEI?AO

    Farmácia    VIRA ---> Farm?cia

    Não posso mudar a forma como o site recebe ou mostra pois é de uma empresa, mas posso mudar antes de chamar a rotina de integração com XML HTTP

    De que forma eu posso converter os dados passados para que faça com que o servidor lá não perca a acentuação ?

     

    Obrigado antecipadamente.

    Claudio

     



    Claudio Silva
    sexta-feira, 27 de maio de 2011 21:28

Respostas

Todas as Respostas

  • Claudio, tente configurar o Charset da pagina asp para UTF-8.

    http://www.hanselman.com/blog/InternationalizationAndClassicASP.aspx

     


    Abraço

    Estevam

    **** Se a reposta foi útil, então não esqueça de marca-lá. ***
    sexta-feira, 27 de maio de 2011 22:31
  • Olá Estevam,

    Conforme explicado no link passado, (as linhas em negrito foram adicionadas) o codigo agora está assim : 

        Dim xmlhttp

        Set xmlhttp = Server.Createobject("MSXML2.XMLHTTP")

        Response.Buffer = True    

        Response.ContentType = "text/html;"

        Response.CharSet = "utf-8"

        Response.Addheader "CODEPAGE", "65001"

     

        Dim URL 

        URL = "http://us2.api.mailchimp.com/1.2/" & Params

         xmlhttp.Open "GET", URL, false

         xmlhttp.Send 

     

    Não tenho o atributo Codepage porque uso o SUN ASP devido ao servidor ser Linux, mas adicionei o Header Codepage de outro jeito.

    O resultado foi isso :

    Conceição  ----> vira  Concei��

     

    Teria algum outro Codepage ou outra solução ?

     

     

    sábado, 28 de maio de 2011 16:19
  • Claudio, estranho, pois veja no link abaixo que é utilizado da mesma forma.

    http://www.brunocunha.com/blog/?p=238

    Porém, já tentou fazer enviar as informações utilizando o UrlEncode e ver o que ocorre?

    http://www.w3schools.com/asp/met_urlencode.asp

     


    Abraço

    Estevam

    **** Se a reposta foi útil, então não esqueça de marca-lá. ***
    • Marcado como Resposta claudio.silva2 quarta-feira, 1 de junho de 2011 14:47
    domingo, 29 de maio de 2011 19:10
  • Estevam,

    Segundo o Bruno no artigo dele ele diz que tem que fazer a configuração do CodePage e do Charset nos dois lados : na página chamada e na página que recebe. Não posso mexer na página que recebe pois como disse é de uma empresa.

    Testei o URLEncode e quem não aceitou dessa vez foi o servidor chamado, disse que a URL era inválida.

    Tentei codificar a acentuação via codigo HTML representando por exemplo :  à  ---> passei --> à  só que o web server entende o caracter & como inicio de parâmetro de uma URL e aí não não interpreta como acentuação, ele cortou a URL. Também não funcionou.

    De qualquer forma ainda não consegui fazer o teste com o CODEPAGE 65001 pois tenho dúvida se eu consegui setar esse parâmetro correto. Tentei Seesion.Codepage = 65001 e o meu servidor informou que o codepage é inválido.  Solicitei o suporte técnico da hospedagem e expliquei o problema porque ao que parece o codepage pode não estar instalado no servidor (não sei) ,  eles ainda não me responderam. Assim que eles me responderem vou testar de novo e respondo aqui.

     

    Claudio

     

     

     


    Claudio Silva
    segunda-feira, 30 de maio de 2011 15:30
  • Estevam,

    Bom dia. Acredito que a sua solução é a melhor e resolveria se o meu servidor fosse windows. Como é linux e não possui o codepage 65001 então fui aconselhado fazer de outra forma, usar uma rotina para conversão de caracteres para utf-8 que funcionou para mim. Segue abaixo :

    http://www.codetoad.com/asp_utf8.asp

     

    Agradeço a sua ajuda

     

     

     


    Claudio Silva
    quarta-feira, 1 de junho de 2011 14:47