← HTML + CSS

[HTML] Problemas com a acentuação

Lida 12365 vezes

Offline

Pedro Magalhães 
Membro
Mensagens 397 Gostos 0
Troféus totais: 23
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 4 Level 3 Level 2 Level 1 100 Posts

Olá a todos!

Estou aqui com um problema...
Tenho um documento .html gravado no disco com caracteres especiais. Exemplo abaixo.

Código: [Seleccione]
<!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" xml:lang="pt-br" lang="pt-br">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body>

....

<div id="footer">
<p class="f">Digitalização © 2009 </p>
</div>
</body>

</html>

Quando faço upload deste ficheiro pelo CuteFtp para o host, no browser os caracteres especiais não estão correctos.
Altero os charsets e doctypes, e upload do ficheiro em Ascii e mesmo assim nada. Não consegui resolver.

Estou a ficar danado... Alguém tem uma sugestão? Abraçooooo
Offline

jtk 
Membro
Mensagens 141 Gostos 0
Troféus totais: 22
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 4 Level 3 Level 2 Level 1 100 Posts 50 Posts

tas a falar do copyright ?
Offline

Pedro Magalhães 
Membro
Mensagens 397 Gostos 0
Troféus totais: 23
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 4 Level 3 Level 2 Level 1 100 Posts

Sim por exemplo.
A palavra Digitalização aparece sempre sem cedilhas e acento.
Offline

jtk 
Membro
Mensagens 141 Gostos 0
Troféus totais: 22
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 4 Level 3 Level 2 Level 1 100 Posts 50 Posts

Para o copyright  tens de usar html Entities, nesse caso é pores &copy;

Quanto as cedilhas e acentos, acho que tem apenas haver com pores o mesmo charset em que o ficheiro foi escrito
Offline

Pedro Magalhães 
Membro
Mensagens 397 Gostos 0
Troféus totais: 23
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 4 Level 3 Level 2 Level 1 100 Posts

Pois mas para o que é não posso estar manualmente a fazer isso. Tem de ser o browser a interpretar.
Isto é só a página de login que mostro. Mas a aplicação tem montes de páginas e os caracteres que vem da Base de Dados estão todos mal interpretados...
Nao entendo como é que estou a copiar o html que interpreta bem, num ficheiro.html que esta no meu pc, e copio para o servidor e perde tudo o que lhe tinha posto no header. Quando ja apliquei este tipo de charset, doctype.... para outros sites e funcionou bem.
Offline

Pedro Magalhães 
Membro
Mensagens 397 Gostos 0
Troféus totais: 23
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 4 Level 3 Level 2 Level 1 100 Posts

Tá aqui um bom exemplo. [link removido] O mesmo file num servidor 1 dá ok. Em outro dá incorrecto! Expliquem-me por que isto aconteceu ?!

Offline

Celso Azevedo 
Membro
Mensagens 3500 Gostos 38
Feedback +12

Troféus totais: 32
Trófeus: (Ver todos)
Level 6 Tenth year Anniversary Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3

Abres isso com o NotePad++, vais a Formatar » Converter para UTF-8 (sem BOM) » gravas

depois diz se funcionou
Offline

estrucida 
Membro
Mensagens 13 Gostos 0
Troféus totais: 19
Trófeus: (Ver todos)
Super Combination Combination Level 4 Level 3 Level 2 Level 1 10 Posts First Post Karma Webmaster

Abres isso com o NotePad++, vais a Formatar » Converter para UTF-8 (sem BOM) » gravas

Se não funcionar tenta Wester ISO-8859-15
Offline

Cacofb 
Elite
Mensagens 1036 Gostos 3
Troféus totais: 34
Trófeus: (Ver todos)
Level 6 Tenth year Anniversary Linux User Mobile User Apple User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter

Hey Pedro,

Isso tem a haver com a codificação na base de dados.
Ve se tá tudo a UTF-8. Não só na BD como no ficheiro em causa.
Tive o mesmo problema num ou outro file.

abraço
Offline

Pedro Magalhães 
Membro
Mensagens 397 Gostos 0
Troféus totais: 23
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 4 Level 3 Level 2 Level 1 100 Posts

Celso obrigado pelas dicas mas...
convertendo os caracteres no Notepad++ não dá se aplica para as palavras com acentuação que vem da bd....
tentei alterar para ISO-8859-15 e mesmo assim não dá...

Caco mesmo que alterasse na bd, não iria afectar a palavra Digitalização. Ela não vem da base de dados.

[Removido pelo autor]

Isto só pode ser relacionado com o cabeçalho do html.
Já reparei que dentro do Webgrafismo onde quer que coloque o ficheiro com a palavra digitalização, a palavra fica sem os caracteres especiais.
Penso que é por ter o wordpress instalado?!
Alguém pode confirmar se isto tb vos acontece?  
Por exemplo, copia a palavra Digitalização para um .html, num alojamento onde têm o wordpress instalado.


Em outro servidor, copiando o file do disco ele já interpreta bem no browser.

Offline

Warrior 
Membro
Mensagens 203 Gostos 0
Troféus totais: 27
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3 Level 2 Level 1

Pedro, estás a utilizar que programa? Dreamweaver?

Código: [Seleccione]
<!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" xml:lang="pt-br" lang="pt-br">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>

<div id="login">     
<div class="corner-login-top"></div>
        <form action="<?php echo $loginFormAction?>" method="POST" name="formlogin" id="formlogin" onsubmit="MM_validateForm('utilizador','','R','palavra_passe','','R');return document.MM_returnValue">
<p><label>Nome de Utilizador:<br/><input name="utilizador" type="text" class="input" id="utilizador" value="" size="20" maxlength="20"/></label></p>                   
<p><label>Palavra-Passe:<br/><input name="palavra_passe" type="password" class="input" id="palavra_passe" size="20" maxlength="20" vlaue="" /></label></p>           
<p class="submit"><input type="submit" name="submit" id="submit" value="Autentica&ccedil;&atilde;o" tabindex="100" /></p>
</form>
<div class="corner-login-bottom"></div>       
</div>
<div id="footer">
<p class="f">Digitaliza&ccedil;&atilde;o © 2009 </p>
</div>
</body>

</html>
Offline

Pedro Magalhães 
Membro
Mensagens 397 Gostos 0
Troféus totais: 23
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 4 Level 3 Level 2 Level 1 100 Posts

Sim. Achas que tem alguma coisa a ver? Não me parece que seja. O código fonte que aí está é mais para demonstração.

Este é o problema que surge. Qualquer sítio onde coloque este ficheiro no meu alojamento do Webgrafismo, ele não fica com os caracteres direitos. Se abro o ficheiro ucd.html pela conta ftp da webgrafismo os caracteres estão direitos, mas no código fonte do browser os caracteres não aparecem direito.
Offline

Fernando Augusto 
Membro
Mensagens 922 Gostos 0
Feedback +1

Troféus totais: 30
Trófeus: (Ver todos)
Linux User Mobile User Windows User Super Combination Combination Topic Starter Poll Voter Level 5 Level 4 Level 3

Estava com um problema idêntico para num fórum. A BD tem de estar caso a importes em Latin1.

O que eu fiz para corrigir no fórum, foi alterar de UTF-8 para iso-8859-1

Código: [Seleccione]
UPDATE ibf_forums SET name=REPLACE(name,'çã','çã')
UPDATE ibf_forums SET name=REPLACE(name,'ê','ê');
UPDATE ibf_forums SET name=REPLACE(name,'ó','ó');
UPDATE ibf_forums SET name=REPLACE(name,'ã','ã');
UPDATE ibf_forums SET name=REPLACE(name,'á','á');
UPDATE ibf_forums SET name=REPLACE(name,'Ã','í');
UPDATE ibf_forums SET name=REPLACE(name,'íº','ú');
UPDATE ibf_forums SET name=REPLACE(name,'íµ','õ');
UPDATE ibf_forums SET name=REPLACE(name,'í§','ç');
UPDATE ibf_forums SET name=REPLACE(name,'í´','ô');
UPDATE ibf_forums SET name=REPLACE(name,'í¢','â');
UPDATE ibf_forums SET name=REPLACE(name,'í','à');
UPDATE ibf_forums SET name=REPLACE(name,'í¼','u');
UPDATE ibf_forums SET name=REPLACE(name,'íƒ','Ã');
UPDATE ibf_forums SET name=REPLACE(name,'à“','Ó');
UPDATE ibf_forums SET name=REPLACE(name,'à©','é');

Agora tens de alterar o que diz ibf_foruns e os dois names para o que está na do wordpress, provavelmente terás de fazer isto umas quantas vezes, pois por exemplo o single.php (a informacao da BD) será diferente da do search.php por exemplo.
Offline

Pedro Magalhães 
Membro
Mensagens 397 Gostos 0
Troféus totais: 23
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 4 Level 3 Level 2 Level 1 100 Posts

Obrigado Killer.

Mas eu para o caso que estou a mostrar [revomido pelo autor] não tenho em aplicação qualquer bd.
E os caracteres não surgem direito. A soluções não poderá vir da bd...
Offline

Warrior 
Membro
Mensagens 203 Gostos 0
Troféus totais: 27
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3 Level 2 Level 1

Coloca só isto no ficheiro html:

Código: [Seleccione]
<!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" xml:lang="pt-br" lang="pt-br">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>

<div>Digitaliza&ccedil;&atilde;o © 2009</div>

</body>
</html>