Jump to content


Photo

Acentos Não Pegam Qnd Grava No Bd


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

#1 DNL

DNL

    Daniel

  • Usuários
  • 40 posts
  • Sexo:Não informado
  • Localidade:Taubté - SP

Posted 27/07/2006, 18:11

Ae pessoal td bem? é o seguinte no ie e no firefox exibe normalmente palavras acentuadas, mas qnd preencho um formulário, que aparece por função do xajax, ele envia os dados para uma outra função no xajax que grava os dados no bd, até aí ok, ele grava normal palavras sem nenhuma acentuação, mas se tiver alguma acentuação já era, e por causa de já ficar gravado no bd assim tb exibe com esses caracteres esquisitos, eu abri a tabela pelo phpmyadmin e modifiquei um registro lá, colocando os acentos normalmente, daí blz, na hora de exibir mostrou normalmente, tanto no ie qnt no firefox...

bem o problema seria intaum qnd os dados são gravados no bd, mas como poderia fazer para não fcarem com esses caracteres?? alguma função? htmlspecialchars?? htmlentities?? mudar a codificação?? onde??



Obrigado pela ajuda,
Até+
"Seja você mesmo, mas não seja sempre o mesmo"

#2 GreyWolf

GreyWolf

    Mestre

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

Posted 28/07/2006, 01:50

Tenta passar com a função utf8_encode() do php para ver no que vai dar =]

#3 DNL

DNL

    Daniel

  • Usuários
  • 40 posts
  • Sexo:Não informado
  • Localidade:Taubté - SP

Posted 28/07/2006, 08:49

Tenta passar com a função utf8_encode() do php para ver no que vai dar =]


Não deu certo tb, eu usei a utf8_encode e depois para mostrar a utf8_decode, daí, por exemplo coloquei no nome, José Antônio, e apareceu "José Antônio"...

Mas será que estou colocando no lugar certo? fiz assim, assim que preenche o formulário e clica em um botão gravar ele manda os dados dos campos ara uma função do xajax como arrays, tipo a função usa a var $f daí eu faço assim:

$nome = $f['nome'];

Nome é o que está no name do campo do formulário, daí essa mesma função depois grava os dados no bd, para usar essa função que você passou fiz assim:

$nome = utf8_enconde($f['nome']);

Será que é o certo assim mesmo?



Valew
Até+
"Seja você mesmo, mas não seja sempre o mesmo"

#4 GreyWolf

GreyWolf

    Mestre

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

Posted 28/07/2006, 14:59

Que estranho.

Quando eu programava em java isto já ocorreu comigo, mas ai era do jsp que devia configurar dentro dele.

No php sempre usei utf8_encode() e sempre funcionou

Tenta antes de inserir no banco de dados, dar um echo nessa variavel desse modo:

echo $variavel;
echo uft8_encode($variavel);
$variavel = utf8_encode($variavel);
echo utf8_decode($variavel);

Só para ver se alguma retorna certo.




0 user(s) are reading this topic

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

IPB Skin By Virteq