Jump to content


Photo

Php Não Reconhece Ç


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

#16 Bruno Augusto

Bruno Augusto

    ∙•● Restarting... ●•∙

  • Usuários
  • 1968 posts
  • Sexo:Não informado
  • Localidade:Itajubá

Posted 16/02/2006, 18:47

Velria postar como ficaou o código em um antes e depois para quem tiver o mesmo problema.

Quem sabe ainda alguém não faz um "serviço de branco" nessa gambiarra :lol:

Abraços

#17 Crab

Crab

    Da paz, mas preparado para Guerra

  • Ex-Admins
  • 2521 posts
  • Sexo:Masculino
  • Localidade:Florianópolis - SC
  • Interesses:Desenvolvimento Gráfico e Web.

Posted 16/02/2006, 20:41

setlocale() vai variar muito de servidor para servidor ...

O bom é fazer como o balala disse fazer usar com muitas possibilidades assim tentar cobrir um maior número de servidores.

Se não funcionar com um funciona com outro ... rs ... mas não é 100% ... bom comigo funcionou como eu postei antes pra vc ... aliás funcionou sem o setlocale() tbm rs*

mas ... já que conseguiu com a gambi posta ae ... como disse o jackpot é válido postar a solução para ajudar outros que pssam ter a mesma experiência ...

se se quiser tentar de outra forma com o setlocale() poderia ser assim:

setlocale(LC_ALL, 'ptb', 'pt_BR', 'portuguese-brazil', 'bra', 'brazil', 'pt_BR.utf-8', 'pt_BR.iso-8859-1', 'br');

O link do post que o balala fala sobre isso é este ... :

http://forum.wmonlin...ndpost&p=699036

(y)Até mais

#18 Paulo Freitas

Paulo Freitas

    ××××××× LRU #456504 ××××××× ××××××× LRM #364686 ×××××××

  • Ex-Admins
  • 5612 posts
  • Sexo:Masculino
  • Localidade:Campinas - SP

Posted 17/02/2006, 13:27

Até onde sei, setlocale() não se aplica à função str_replace(), pelo menos nunca li nada à respeito ... :assobio:

Aqui seu código funciona sem problemas sem o uso da função setlocale(). :)

Não sei se seu código é apenas isto, mas já tentou debugá-lo em várias partes ? Tipo ... imprimir o valor da string antes e depois de passar o str_replace(), tentar modificar outro texto, adicionar outro texto acentuado na string e tentar modificá-lo ... :rolleyes:

Codificar é apenas uma parte da programação. Debug vem logo depois ... :assobio:

Só para constar, qual a versão do PHP utilizada ? :rolleyes:

Poderia disponibilizar este código acima online, para vermos o que não acontece ? Sei lá, só vendo para crer ... *rs* :P

[]’s :DAté mais

#19 Crab

Crab

    Da paz, mas preparado para Guerra

  • Ex-Admins
  • 2521 posts
  • Sexo:Masculino
  • Localidade:Florianópolis - SC
  • Interesses:Desenvolvimento Gráfico e Web.

Posted 17/02/2006, 21:19

Pois é eu tbm achei estranho pois funcionou no meu servidor local e no remoto sem o setlocale().

:) Até mais

#20 Chinello Cybernético

Chinello Cybernético

    Simplesmente "Chinello"

  • Usuários
  • 1892 posts
  • Sexo:Masculino
  • Localidade:Canoas - RS

Posted 17/02/2006, 22:36

Realmente Paulo Freitas, o setlocate() nao influi..

Bom, realizei um teste pra concluir isso:

Teste: http://200.175.79.18...p/setlocale.php
Pra ver o código: http://200.175.79.18.../setlocale.phps

Mas aí, lendo o php.ini ... Eu vi o seguinte comentário:

; Enable the PHP scripting language engine under Apache.
engine = On

Pelo o que eu entendi, o meu PHP leva em consideração a lingua utilizada pelo Apache..

Indo no Apache ( httpd.conf ), eu encontrei vários parâmetros relacionados a linguagem.. São eles:

AddLanguage.. Faz o Apache reconhecer as línguas.. O meu Apache inclui entre outras:

AddLanguage pt-BR .pt-br


LanguagePriority.. Apenas as prioridades de aceitação das linguagens.. No meu, o pt-BR tá lá.

AddDefaultCharset.. Define a codificação default.. Pra reconhecer os acentos, colocar: ISO-8859-1

AddCharset.. Adicionando a codificação pro Apache reconhecer.. No meu tem:

AddCharset ISO-8859-1  .iso8859-1  .latin1


Então, pelo que eu entendí.. É necessário configurar o Apache pra reconhecer a língua corretamente.. Postei uma configuração funcional..

Sempre lembrando, o meu servidor usa Linux.. Como a referência aos países é diferente entre Windows e Linux, não sei se o mesmo se aplica para a codificação de linguagem.


Um detalhe importante.. Retirei todas as referências da língua portuguesa na configuração do Apache, e o script de teste, mesmo assim substituiu o cedilha, ele só confundiu o navegador na codificação e por isso, o navegador não conseguia exibir o cedilha e nem os acentos..

Mas se não resolver o problema do dito cujo, pelo menos é um conhecimento a mais para todos.. :D

Fui. :P
Diego Sampaio - kroW - PHP Framework > http://chinelloweb.net/
chinello at gmail dot com

System > Athlon 64 3200+ Mobile | Kubuntu 7.04 Fesity Fawn AMD64 | Kernel 2.6.20-16
Coding @ KDE 3.5.7 | PHP 5.2.1 | Apache 2.2.3 | MySQL 5.0.38

#21 juseh

juseh

    Normal

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

Posted 23/02/2006, 16:58

o problema era q a string tava em utf8, entao a solucao era essa:

str_replace(utf8_encode('serviço filiado ao Google'), 'Orkut.com', $html);


novamente, obrigado pela atencao
Conheça o mais novo redirecionador da internet brasileira!
www.vaila.net
O seu endereço na internet, de graça.




0 user(s) are reading this topic

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

IPB Skin By Virteq