Jump to content


Photo

Problemas Com Acentuação Em Conteúdo Dinâmico.


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

#1 NOVAZOO

NOVAZOO

    12 Horas

  • Usuários
  • 198 posts
  • Sexo:Não informado
  • Localidade:BH/MG/BRASIL
  • Interesses:FLASH - ASP - XML - USABILIDADE - ARQUITETURA DE INFORMAÇÃO

Posted 07/07/2005, 09:46

Pessoal,

mais uma vez me deparei com um problema e não consigo enxergar uma solução.
Possuo uma página que carrega alguns dados de um banco access2003.

Os dados que vem do banco não apresentam caracteres e acentos da língua portuguesa.

EX: - Série mostra
      - Festival recebe inscrições até segunda-feira


Já o texto "não dinâmico" encontrado na mesma página não apresenta o erro.

EX: - TÍTULO:
      - AS MATÉRIAS


Utilizei o cabeçalho:
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
Mas de nada adiantou.
Os textos encontrados no banco estão todos com a acentuação e caracteres corretos e, o pc está com idioma em PT/BR.

Alguém sabe o que está acontecendo? :wacko:

Grato pela ajuda!
Posted Image

#2 edmais

edmais

    Just do it!

  • Usuários
  • 797 posts
  • Sexo:Não informado
  • Localidade:BH - MG

Posted 07/07/2005, 10:33

Pra gravar no banco você está usando o server.htmlencode() ?
Eduardo Batista

#3 NOVAZOO

NOVAZOO

    12 Horas

  • Usuários
  • 198 posts
  • Sexo:Não informado
  • Localidade:BH/MG/BRASIL
  • Interesses:FLASH - ASP - XML - USABILIDADE - ARQUITETURA DE INFORMAÇÃO

Posted 07/07/2005, 11:05

Não.. :huh:

Na verdade eu estou usando um banco antigo onde,
os textos cadastrados estão certos.
Na leitura que aparece o erro.
Implementei o "Server.HtmlEncode" e deu certo! :rolleyes:

Thanx edmais! (y)

Edição feita por: NOVAZOO, 07/07/2005, 11:53.

Posted Image

#4 NOVAZOO

NOVAZOO

    12 Horas

  • Usuários
  • 198 posts
  • Sexo:Não informado
  • Localidade:BH/MG/BRASIL
  • Interesses:FLASH - ASP - XML - USABILIDADE - ARQUITETURA DE INFORMAÇÃO

Posted 12/07/2005, 14:20

Poutz!

Olha só,

Eu tenho uma banco onde eu cadastro frases.
As frases estão na língua portuguesa e possuem acentos e caracteres
específicos do nosso idioma.

A algum tempo atrás abri este tópico porque os acentos encontrados nos registros eram substituídos por caracteres especiais. Indicaram "Server.htmlencode()" e deu certo. A acentuação existente era apresentada com êxito.

Agora. Quando eu cadastro registros nessa tabela, os acentos e caracteres somem: ex: "incêndio" - "incndio" Estes caracteres e acentos nem chegam a entrar no banco..

Alguém sabe ou já teve problemas com isso e pode ajudar?

Tem hora que funciona e hora que não.
Já testei com vários bancos (access 2003).. alguns funcionam e outros naum.
Alguém sabe se é algum problema com o .mdb?
Ajuda??

:wacko:
Posted Image

#5 LeoB

LeoB

    Super Veterano

  • Usuários
  • 1876 posts
  • Sexo:Masculino
  • Interesses:Programação

Posted 12/07/2005, 14:30

Mas o banco está em que formato? 2003 ou 2000?

#6 NOVAZOO

NOVAZOO

    12 Horas

  • Usuários
  • 198 posts
  • Sexo:Não informado
  • Localidade:BH/MG/BRASIL
  • Interesses:FLASH - ASP - XML - USABILIDADE - ARQUITETURA DE INFORMAÇÃO

Posted 12/07/2005, 17:44

Mas o banco está em que formato? 2003 ou 2000?

2003.
Ele era um banco 97, foi convertido para 2003.
Os registros antigos estão com acento. Os registros cadastrados agora , são incluídos com o erro.
<_<
Posted Image

#7 LeoB

LeoB

    Super Veterano

  • Usuários
  • 1876 posts
  • Sexo:Masculino
  • Interesses:Programação

Posted 12/07/2005, 18:56

Bom, que eu saiba, não existe driver ODBC próprio pro formato 2003. Pelo menos foi o que eu li. Talvez você deva experimentar convertê-lo pra 2000, que é o formato mais usado e recomendado pra trabalhar com ASP. Se não der certo, seria uma boa se você pudesse limpar o banco e postar o arquivo aqui, só com a estrutura, uma ou duas tabelas, sei lá. Porque se cadastrando dentro do próprio Access não está dando certo, alguma coisa de muito errado tem nessa história. Ou você está cadastrando por algum script ASP?

#8 Luis Otávio

Luis Otávio

    Super Veterano

  • Usuários
  • 3113 posts
  • Sexo:Masculino
  • Localidade:Porto Alegre
  • Interesses:- Desenvolvimento de aplicações Web com linguagem server-side PHP.

    - Desenvolvimento de aplicações Web com linguagem cliente-side JavaScript, conhecedor e utilizador da biblioteca jQUERY e todas suas características.

    - Otimização de Desempenho aplicados a performance de banco de dados Mysql.

    - Otimização de Desempenho para servidores Web utilizando-se como Webserver NGINX em conjunto com Varnish.

    - Sólidos conhecimentos no CMS WordPress para novas implementações, manutenção, criação e otimização de Plugins.

    - Práticas de atendimento, relacionamento e suporte ao cliente. Trabalhando voltado ao público desde o lançamento da empresa iPORTO.COM, criando laços e vínculos com os mais de Mil clientes da empresa e os braços do grupo.

Posted 12/07/2005, 19:13

se vc cadastrar direto pelo banco da o mesmo problema nos acentos? ou só da o problema quando vc insere pelo asp?
* Otávio Nogueira
* Administração e Configuração de Servidores;
* Combinação Perfeita: NGINX + PHP + VARNISH + HAPROXY
* otavio*iporto.com ~ Tel: +55 51 3366 0177 | +55 51 4063 7343 |
* @iporto

#9 NOVAZOO

NOVAZOO

    12 Horas

  • Usuários
  • 198 posts
  • Sexo:Não informado
  • Localidade:BH/MG/BRASIL
  • Interesses:FLASH - ASP - XML - USABILIDADE - ARQUITETURA DE INFORMAÇÃO

Posted 13/07/2005, 12:42

se vc cadastrar direto pelo banco da o mesmo problema nos acentos? ou só da o problema quando vc insere pelo asp?

Eu cadastro direto no banco e dá certo.
O problema é via ASP.

Estou preocupado pois nunca tive problemas com isto.
Segue parte do código para vcs verem:

CABECALHO
act = Request.QueryString("act")

Function data()
    dia = day(date())
	If day(date()) <= 9 Then
  dia = "0" & day(date())
	End If
	mes = month(date())
	If month(date()) <= 9 Then
  mes = "0" & month(date())
	End If
	ano = year(date())
	data = dia & "/" & mes & "/" & ano
End Function

Function StrData(Str)
  Dia = Mid(Str, 4, 2)
  Mes = Mid(Str, 1, 2)
  Ano = Mid(Str, 7, 4)
 StrData = Dia & "/" & Mes & "/" & Ano
End Function
%>
<head>
<title>ADM DE NOTICIAS</title>
<link href="admin.css" rel="stylesheet" type="text/css">
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />

CAMPOS
<input name="autor" type="text" class="formstyle" id="autor" size="68" maxlength="60" />

INSERT
<%
	case "insert"
	cod_fonte = Request.Form("fonte")
	autor = Request.Form("autor")
	manchete = Request.Form("manchete")
	materia = Request.Form("materia")
	resumo = Request.Form("resumo")
	semanal = Request.Form("semanal")
	duoDB.Execute("INSERT INTO materias(Cod_fonte,Autor,Manchete,Materia,Resumo,Semanal) VALUES(" & cod_fonte & ",'" & Request.Form("autor") & "','" & Request.Form("manchete") & "','" & Request.Form("materia") & "','" & Request.Form("resumo") & "'," & semanal & ")")
%>

UPDATE
<%
	Case "do_change"
	id = Request.QueryString("id")
	cod_fonte = Request.Form("fonte")
	autor = Request.Form("autor")
	manchete = Request.Form("manchete")
	materia = Request.Form("materia")
	resumo = Request.Form("resumo")
	semanal = Request.Form("semanal")
	duoDB.Execute("UPDATE materias SET cod_fonte="& cod_fonte &", autor='"& autor &"', manchete='"& manchete &"', materia='"& materia &"', resumo='"& resumo &"', semanal="& semanal &" WHERE indice ="& id)

:unsure:
Posted Image

#10 Luis Otávio

Luis Otávio

    Super Veterano

  • Usuários
  • 3113 posts
  • Sexo:Masculino
  • Localidade:Porto Alegre
  • Interesses:- Desenvolvimento de aplicações Web com linguagem server-side PHP.

    - Desenvolvimento de aplicações Web com linguagem cliente-side JavaScript, conhecedor e utilizador da biblioteca jQUERY e todas suas características.

    - Otimização de Desempenho aplicados a performance de banco de dados Mysql.

    - Otimização de Desempenho para servidores Web utilizando-se como Webserver NGINX em conjunto com Varnish.

    - Sólidos conhecimentos no CMS WordPress para novas implementações, manutenção, criação e otimização de Plugins.

    - Práticas de atendimento, relacionamento e suporte ao cliente. Trabalhando voltado ao público desde o lançamento da empresa iPORTO.COM, criando laços e vínculos com os mais de Mil clientes da empresa e os braços do grupo.

Posted 13/07/2005, 12:53

tenta assim:



act = Request.QueryString("act")

Function data()
   dia = day(date())
If day(date()) <= 9 Then
 dia = "0" & day(date())
End If
mes = month(date())
If month(date()) <= 9 Then
 mes = "0" & month(date())
End If
ano = year(date())
data = dia & "/" & mes & "/" & ano
End Function

Function StrData(Str)
 Dia = Mid(Str, 4, 2)
 Mes = Mid(Str, 1, 2)
 Ano = Mid(Str, 7, 4)
StrData = Dia & "/" & Mes & "/" & Ano
End Function
%>
<head>
<title>ADM DE NOTICIAS</title>
<link href="admin.css" rel="stylesheet" type="text/css">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">

* Otávio Nogueira
* Administração e Configuração de Servidores;
* Combinação Perfeita: NGINX + PHP + VARNISH + HAPROXY
* otavio*iporto.com ~ Tel: +55 51 3366 0177 | +55 51 4063 7343 |
* @iporto

#11 NOVAZOO

NOVAZOO

    12 Horas

  • Usuários
  • 198 posts
  • Sexo:Não informado
  • Localidade:BH/MG/BRASIL
  • Interesses:FLASH - ASP - XML - USABILIDADE - ARQUITETURA DE INFORMAÇÃO

Posted 13/07/2005, 16:29

tenta assim:



act = Request.QueryString("act")

Function data()
   dia = day(date())
If day(date()) <= 9 Then
 dia = "0" & day(date())
End If
mes = month(date())
If month(date()) <= 9 Then
 mes = "0" & month(date())
End If
ano = year(date())
data = dia & "/" & mes & "/" & ano
End Function

Function StrData(Str)
 Dia = Mid(Str, 4, 2)
 Mes = Mid(Str, 1, 2)
 Ano = Mid(Str, 7, 4)
StrData = Dia & "/" & Mes & "/" & Ano
End Function
%>
<head>
<title>ADM DE NOTICIAS</title>
<link href="admin.css" rel="stylesheet" type="text/css">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">

Tentei mas não deu em nada.
Mesmo se eu tirar a tag.

Funcionava quando era um banco access97.
Quando migrei pra 2000 e 2003 não aceitaram mais registros com estes caracteres.

Irei tentar criar um novo banco em outra versão e importar estes registros pois,
apenas convertendo o banco de uma versão para outra não obtive resultados.

Queria saber mesmo é se há possibilidade do código estar incorreto.
Posted Image

#12 Luis Otávio

Luis Otávio

    Super Veterano

  • Usuários
  • 3113 posts
  • Sexo:Masculino
  • Localidade:Porto Alegre
  • Interesses:- Desenvolvimento de aplicações Web com linguagem server-side PHP.

    - Desenvolvimento de aplicações Web com linguagem cliente-side JavaScript, conhecedor e utilizador da biblioteca jQUERY e todas suas características.

    - Otimização de Desempenho aplicados a performance de banco de dados Mysql.

    - Otimização de Desempenho para servidores Web utilizando-se como Webserver NGINX em conjunto com Varnish.

    - Sólidos conhecimentos no CMS WordPress para novas implementações, manutenção, criação e otimização de Plugins.

    - Práticas de atendimento, relacionamento e suporte ao cliente. Trabalhando voltado ao público desde o lançamento da empresa iPORTO.COM, criando laços e vínculos com os mais de Mil clientes da empresa e os braços do grupo.

Posted 13/07/2005, 16:39

bem, a principio o problema é o codigo, se funciona colocando direto no banco... e pelo codigo naum.. mas pode ser do banco tb.. hehehe... so testando para saber...

;) (y)
* Otávio Nogueira
* Administração e Configuração de Servidores;
* Combinação Perfeita: NGINX + PHP + VARNISH + HAPROXY
* otavio*iporto.com ~ Tel: +55 51 3366 0177 | +55 51 4063 7343 |
* @iporto

#13 LeoB

LeoB

    Super Veterano

  • Usuários
  • 1876 posts
  • Sexo:Masculino
  • Interesses:Programação

Posted 13/07/2005, 18:40

Bom, se não conseguir uma solução apropriada, você pode usar uma função que substitua os caracteres acentuados pelos seus "códigos". Acho que o Server.HTMLEncode faz isso. Ex:

BD.Execute "INSERT INTO Tabela (Campo) VALUES ('" & Server.HTMLEncode(Texto) & "')"
Na documentação diz que ela "codifica" caracteres com ASCII maior que 0x80 (128), que são os com acento, ou seja, ela passa a escrevê-los assim: &#x, onde x é o número ASCII.

http://msdn.microsof...746ef320e78.asp

Aí ela não seria mais necessária na hora de exibir os dados, só na hora de gravar.

Se não funcionar do modo como você quer, ainda é possível fazer uma função própria:

Function Tratar(Texto)
   NTexto = Replace(Texto, "á", "&aacute")
   NTexto = Replace(Texto, "â", "&acirc")
   NTexto = Replace(Texto, "ç", "&ccedil")
   ' ... E por aí vai
   Tratar = NTexto
End Function

BD.Execute "INSERT INTO Tabela (Campo) VALUES ('" & Tratar(Texto) & "')"
Imagino que isso resolva o problema.

#14 NOVAZOO

NOVAZOO

    12 Horas

  • Usuários
  • 198 posts
  • Sexo:Não informado
  • Localidade:BH/MG/BRASIL
  • Interesses:FLASH - ASP - XML - USABILIDADE - ARQUITETURA DE INFORMAÇÃO

Posted 14/07/2005, 11:22

consegui!!!!
Finalmente.
Não era problema com banco de dados..
E sim no código.

anotem caso tenham esse problema no futuro:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

Obrigado a todos que ajudaram (y)

Edição feita por: NOVAZOO, 14/07/2005, 11:22.

Posted Image

#15 Miguceamma

Miguceamma

    MiguPenjisse

  • Usuários
  • 11724 posts

Posted 13/09/2017, 01:49

Cialis Alkohol cialis Comprar Cialis Linea
Suprax No Prescription Thyroxine Online No Prescription Amoxicillin Refrigerate
Come Comprare Priligy <a href=http://cialtobuy.com>online pharmacy</a> Propecia Ancianos
Canada Pharmacy Without Script online pharmacy Cialis Tadalafil Online
Difference Entre Viagra Et Levitra
Discount Elocon Mastercard No Script Needed On Line <a href=http://cialtobuy.com>cialis</a> Xenical 120mg To Buy Online
Generico Propecia viagra cialis Amoxil Meds
Como Conseguir Cytotec En Usa Generic Amoxicilina Direct Florida
What Is Priligy <a href=http://cialtobuy.com>cialis online</a> European Pharmacy




0 user(s) are reading this topic

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

IPB Skin By Virteq