Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
estou com um problema de acentuacao estou enviando dados do campo via ajax jquery, mas quando dou um print no zendframework ele aparece errado
ex: escrevi
joão
ele aparece
joão
alguem tem ideia como posso resolver isso.... valeu
entao estou fazendo assim
pego o valor do campo com acento por exemplo
var assunto = jQuery("input[type=text][id=dados[assunto]]").val();
envio via ajax para pagina
jQuery.ajax({
type: 'POST',
url: "minhapagina",
cache: false,
data: "assunto="+assunto,
so que quando vou pegar esse valor no zendframework sai errado, nao vem como acentuacao
tentei assim mas nao rolou
echo utf8_decode($post->getRaw('assunto'));
o "ã" que passei me retornou "Ò"
Então meu amigo, tive um problema parecedo a poucos dias e sofri muito pra resolver, não sei você, mas eu utiliso o DW para editar meus codigos e só com ele não deu pra resolver. o problema está, provavelmente, naquele início do código que define a linguagem para os navegadores, como no exemplo a baixo:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="[http://www.w3.org/1999/xhtml">](http://www.w3.org/1999/xhtml)
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>legendaria</title>
<link href="estilo.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
</script>
<style type="text/css">
</style>
onde a linha **"<meta ****http****-equiv="Content-Type" content="text/html; charset=utf-8" />" **define para os navegadores como eles devem interpretar os carecteres especiais, como os de acentos, "ç" e outras coisinhas. Pois bem, eu resolvi o problema utilizando outro editor para ocódigo, é um programinha gratuito, você encontra no facil no baixaki e similares, o nome é "**Notepad++**", depois de baixar este prog, você fecha o arquivo no editor que está utilizando e abre ele no notepad++, clica na aba "Formatar" e seleciona a opção "**Codificação em UTF-8 (sem BOM)**", feito isto é só salvar e se quiser pode voltar ao editor que está habituado a usar, você não vai notar nenhuma diferença na sintaxe do dódigo, mas teu problema deve estar resolvido.
Abraço
Espero ter ajudado, depois posta aí se deu certo.
entao
estou usando o escape para enviar o valor ate ai beleza ele envia mas quando vou pegar no php ele aparece outro valor
var assunto = escape(jQuery("input[type=text][id=dados[assunto]]").val());
jQuery.ajax({
type: 'POST',
url: "minhapagina",
cache: false,
data: "assunto="+assunto,
no php que recebe estou fazendo assim
$post->getRaw('assunto'); // estou usando zendframework
se eu passo " ã " quando dou o echo ele aparece " Ó "
Então, quando aconteceu comigo também aparecia tudo beleza, o problema acontecia apenas em um um scrypt de atualização automática de texto e em algumas entradas php, quando realizei o procedimento que descrevi no post anterior funcionou.
Você chegou a testar?
E mesmo no escape, você está usando a codificação utf-8 ou alguma outra?
entao fiz do jeito que você falou no post acima so que apareceu um erro diferente
quando dou um alert na variavel assunto ele aparece certo, mas quando envio para o php aparece ã
Por mais estrano que possa parecer a coicidencia, acabei de ter novamente este problema, no mesmo site que sitei anteriormente, desta vez foi em uma validação spry de um formulário e a solução que eu tinha recomendado não funcionaou desta vez, mas o principio que usei pra resolver foi o mesmo, só que desta vez no proprio dreamweaver, o que fiz foi o seguinte: na aba modificar / propriedades da página , vai no menu Título/codificação e no item codificação seleciona utf-8 e não marca a opção "incluir assinatura Unicode (BOM).
Se isto não funcionar, não sei mais como ajudar...
BOA SORTE...
nao estou lembrado mas tem alguma funcao php que converte caracteres especiais
ex: "ã" para "ã"
Thiago, tive um problema parecido e consegui resolver de maneira bem simples.
Mesmo colocando a tag html de charset="UTF-8" continuava mostrando os problemas, fiquei encucado com isso por um tempão. Tentei usar os códigos em PHP para consertar da mesma forma que você está fazendo, mas daí eu fui futucando e achei o meu problema. Pode ser a mesma coisa que está acontecendo com você, dê uma olhada no que eu vou dizer aqui:
Eu programo usando o aptana, que é baseado no eclipse...só que tanto o eclipse como o aptana tem um charset próprio deles (eles não pensaram nos idiomas que usam acentos nessa hora :P ) você tem que ir em preferências e modifiquei o "Encoding settings" da minha IDE para UTF-8 aí pronto, acabei com meus problemas, acento funcionava direitinho sem precisar usar os artifícios de funções "enconding" do PHP. O problema acontecia porque a minha IDE tinha uma charset de um jeito e eu mandava exibir de outro no HTML, por isso dava problema, quando você coloca tanto sua IDE de desenvolvimento para um charset e a sua página para o mesmo charset (UTF-8 por exemplo) tudo funciona nas mil maravilhas.
Espero ter ajudado.
è isso aí Matheus, concordo com você que a causa do problema seja mesmo a charset, como cada um usa um programa diferente para programar o difícil é encontrar a forma certa de fazer a mesma coisa em cada programa diferente, as dicas que eu dei foram com base nos programas que estou acostumado, com certeza o caminho para fazer a mesma coisa em outro editor é diferente.
>
è isso aí Matheus, concordo com você que a causa do problema seja mesmo a charset, como cada um usa um programa diferente para programar o difícil é encontrar a forma certa de fazer a mesma coisa em cada programa diferente, as dicas que eu dei foram com base nos programas que estou acostumado, com certeza o caminho para fazer a mesma coisa em outro editor é diferente.
Com certeza é isso Rodrigo, eu vi sua resposta lá em cima e realmente deve ser isso. Eu lembro que eu fiquei um tempão me batendo com isso :P putz...foi tempo a beça e depois saquei...no aptana é em window->preferences->general->workspace daí lá é só marcar o text enconding para UTF-8 e pronto, seus problemas de encoding acabam :)
Encoding as vezes dá uma dor de cabeça hahahahahahaha. Espero que eu e o Rodrigo tenhamos ajudado aí.
você não postou código nem nada.
aí é difícil alguém ajuda mesmo... diga como está fazendo, que codificação está usando...
a única coisa que dá para passar é isto