Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Souza

Acentuação com problemas

Recommended Posts

Falae gente... blza

 

To finalizando um flashsite aqui e tem uma área do site que to integrando com banco de dados.. ta tudo zerado já.. porém os textos q vem do banco ACCESS ta dando pau na acentuação qdo exibido no flash.. to fazendo ponte com o XML + ASPX ... alguém tem alguma solução.?

 

To fazendo o flash ler um XML que é gerado pelo aspx ... no xml to colocando o utf-8 .. cheguei até usar o ISO-8859-1 .. mas mesmo assim ele da uns paus na acentuação... só ta faltando isso pra eu fechar esse flashsite... se alguém puder ajudar eu agradeço de coração.

 

[]´s.

Souza.

Compartilhar este post


Link para o post
Compartilhar em outros sites

opa... blza.. eu crio o objeto xml no flash exibo os dados usando os atributos do arquivo XML.. pra você entender melhor..segue abaixo meu script.

 

--

//// Respeitar acentuacao

System.useCodepage = true;

textoLista.autoSize = true;

texto.autoSize = true;

/// Criar o objeto XML

var meuXML:XML = new XML();

var meuXML2:XML = new XML();

//// Ignorar os espacos

meuXML.ignoreWhite = true;

//// Carregar o arquivo XML

meuXML.load("http://www.j3p.com.br/scopel/results/empreendimento_escolhido.aspx?id="+_global.id);

//// Exibir os dados carregados

meuXML.onLoad = function() {

//// Criar uma variavel pra exibir todos os NOS

qtdEmpreendimento = meuXML.firstChild.childNodes.length;

//// Criar um for pra listar os NOS

for (i=0; i<qtdEmpreendimento; i++) {

_root.mcCont.textoLista.htmlText += "<p class=\"a:hover\"><font color='#AAA6A6'><a href=\"asfunction:mostraEmpreendimento,"+meuXML.firstChild.childNodes.attributes.id_empreendimento+"#"+meuXML.firstChild.childNodes.attributes.regiao+"#"+

meuXML.firstChild.childNodes.attributes.empreendimento+"#"+meuXML.firstChild.childNodes.attributes.texto+"#"+meuXML.firstChild.childNodes.attributes.empreendedores+"#"+

meuXML.firstChild.childNodes.attributes.mapa_thumb+"#"+meuXML.firstChild.childNodes.attributes.mapa_grande+"#"+meuXML.firstChild.childNodes.attributes.foto1_thumb+"#"+

meuXML.firstChild.childNodes.attributes.foto1_grande+"#"+meuXML.firstChild.childNodes.attributes.foto2_thumb+"#"+meuXML.firstChild.childNodes.attributes.foto2_grande+"#"+

meuXML.firstChild.childNodes.attributes.foto3_thumb+"#"+meuXML.firstChild.childNodes.attributes.foto3_grande+"#"+meuXML.firstChild.childNodes.attributes.foto4_thumb+"#"+

meuXML.firstChild.childNodes.attributes.foto4_grande+"#"+i+"\">"+"Empreendimento - "+"</font>"+"<font color='#333131'><b>"+meuXML.firstChild.childNodes.attributes.empreendimento+"</b></font></a></p>";

}

};

//// Exibir a regiao escolhida

with (meuXML2) {

ignoreWhite = true;

load("http://www.j3p.com.br/scopel/results/empreendimento_escolhido.aspx?id="+_global.id);

}

meuXML2.onLoad = function() {

qtdEmpreendimento = meuXML2.firstChild.childNodes.length;

for (i=0; i<qtdEmpreendimento; i++) {

_root.mcCont.textoRegiao.htmlText = "<p class=\"a:hover\"><font color='#AAA6A6'>"+"Local - "+"</font>"+"<font color='#333131'><b>"+meuXML2.firstChild.childNodes.attributes.regiao+"</b></font></p>";

_root.mcCont.texto.htmlText = "<p class=\"a:hover\"><font color='#AAA6A6'>"+meuXML2.firstChild.childNodes.attributes.texto+"</font></p>";

_root.mcCont.mcFoto.loadMovie("http://www.j3p.com.br/scopel/imagens/"+meuXML2.firstChild.childNodes.attributes.foto1_grande);

_root.mcCont.mcFotoThumb1.loadMovie("http://www.j3p.com.br/scopel/imagens/"+meuXML2.firstChild.childNodes.attributes.foto1_thumb);

_root.mcCont.mcFotoThumb2.loadMovie("http://www.j3p.com.br/scopel/imagens/"+meuXML2.firstChild.childNodes.attributes.foto2_thumb);

_root.mcCont.mcFotoThumb3.loadMovie("http://www.j3p.com.br/scopel/imagens/"+meuXML2.firstChild.childNodes.attributes.foto3_thumb);

_root.mcCont.mcFotoThumb4.loadMovie("http://www.j3p.com.br/scopel/imagens/"+meuXML2.firstChild.childNodes.attributes.foto4_thumb);

_root.mcCont.mcFotoThumb5.loadMovie("http://www.j3p.com.br/scopel/imagens/"+meuXML2.firstChild.childNodes.attributes.mapa_thumb);

if (i>=0) {

_global.indice = i;

trace(_global.indice);

trace(meuXML2.firstChild.childNodes.attributes.id_empreendimento);

break;

}

}

};

//Botoes de miniaturas

_root.mcCont.mcMotionThumb1.hit.onRelease = function() {

_root.mcCont.mcFoto.loadMovie("http://www.j3p.com.br/scopel/imagens/"+meuXML2.firstChild.childNodes[_global.indice].attributes.foto1_grande);

};

_root.mcCont.mcMotionThumb2.hit.onRelease = function() {

_root.mcCont.mcFoto.loadMovie("http://www.j3p.com.br/scopel/imagens/"+meuXML2.firstChild.childNodes[_global.indice].attributes.foto2_grande);

};

_root.mcCont.mcMotionThumb3.hit.onRelease = function() {

_root.mcCont.mcFoto.loadMovie("http://www.j3p.com.br/scopel/imagens/"+meuXML2.firstChild.childNodes[_global.indice].attributes.foto3_grande);

};

_root.mcCont.mcMotionThumb4.hit.onRelease = function() {

_root.mcCont.mcFoto.loadMovie("http://www.j3p.com.br/scopel/imagens/"+meuXML2.firstChild.childNodes[_global.indice].attributes.foto4_grande);

};

_root.mcCont.mcMotionThumb5.hit.onRelease = function() {

_root.mcCont.mcFoto.loadMovie("http://www.j3p.com.br/scopel/imagens/"+meuXML2.firstChild.childNodes[_global.indice].attributes.mapa_grande);

};

//// Funcao troca conteudo

function mostraEmpreendimento(param) {

_root.mcCont.textoRegiao.htmlText = "<p class=\"a:hover\"><font color='#AAA6A6'>"+"Local - "+"</font>"+"<font color='#333131'><b>"+param.split("#")[1]+"</b></font></p>";

_root.mcCont.texto.htmlText = "<p class=\"a:hover\"><font color='#AAA6A6'>"+param.split("#")[3]+"</font></p>";

_root.mcCont.mcFoto.loadMovie("http://www.j3p.com.br/scopel/imagens/"+param.split("#")[8]);

_root.mcCont.mcFotoThumb1.loadMovie("http://www.j3p.com.br/scopel/imagens/"+param.split("#")[7]);

_root.mcCont.mcFotoThumb2.loadMovie("http://www.j3p.com.br/scopel/imagens/"+param.split("#")[9]);

_root.mcCont.mcFotoThumb3.loadMovie("http://www.j3p.com.br/scopel/imagens/"+param.split("#")[11]);

_root.mcCont.mcFotoThumb4.loadMovie("http://www.j3p.com.br/scopel/imagens/"+param.split("#")[13]);

_root.mcCont.mcFotoThumb5.loadMovie("http://www.j3p.com.br/scopel/imagens/"+param.split("#")[5]);

_global.indice = param.split("#")[15]

trace(i);

}

/***************************************************/

//// CSS

var estilo = new TextField.StyleSheet();

estilo.onLoad = function(success) {

if (success) {

_root.mcCont.textoLista.styleSheet = estilo;

}

};

estilo.load("./css/style_lista.css");

//// btnBack

_root.mcCont.btnBackEmp.hit.onRelease = function() {

_global.btnBackEmpreendimento = 1;

_root.gotoAndPlay("saida");

};

--

 

O script ta certinho.. tudo funcionando perfeitamente.. mas a acentuação ta vindo errada... eu sempre faço flash acesso a dados usando o PHP + MySQL e nunca deu pau de acentuação.... mas dessa vez precisei fazer usando o ASPX + ACCESS... pq não foi eu q fiz o sistema... e infelizmente ta dando esse erro...

 

[]´s.

Souza.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala eder..blza

 

Eu não uso o CDATA.. eu uso atributos.. acho a leitura mais limpa do que o CDATA... mas foi como eu disse.. sempre fiz integração com banco usando o PHP pra gerar os XMLs... e sempre usei atributos.. nunca deu pau... mas já com o aspx ocorreu isso... oq pode ser.?

 

[]´s.

Souza.

Compartilhar este post


Link para o post
Compartilhar em outros sites

pois é, com atributos tb acho melhor de trabalhar

 

no PHP acredito que você usa-va a função utf_decode(), não sei se no ASPX tem uma função equivalente a isso

 

tente pesquisar isso, talvez ajude

 

 

[]´s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara isso já aconteceu um monte de vez comigo!!

Tenta que nem eu fiz, bom pelo menos pra mim tem vez que da certo :P!!!

 

Copie seu xml e cole no bloco de notas, dai coloque "salvar como....", e dai no final da janela vai ter uma opção "Codificação" selecione "UTF-8"!!!

Salve o arquivo com o mesmo nome que você está usando, exemplo: "arquivo.xml"!!!

 

Cara a maioria das vezes me adiantou isso espero que de certo pra ti tbm!!!

Abraços e Feliz Natal!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala lucas.. blza.

 

O problema maior é que o xml é gerado pelo aspx e a extensão não é .xml e sim .aspx entendeee... essa área do site que o flash ta exibindo dados, vem dum banco criado no ACCESS e ta dando pau.. o restante do site é inteirinho em XML e uso o UTF-8 em todos os arquivos.xml e funciona normal a acentuação.. mas com a página aspx não ta rolando.. é flórida meu amigo.. só falta isso pra fechar essa preula de site.

 

[]´s.

Souza.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Falae galera..blza.

 

Desculpe a demora pra postar o código da pág ASPX que gera o XML.

 

---------------------------------------------------------------------------------------------------------------------------------------

<%@ Page Language="VB" %>

<%@ Import Namespace="System.Data" %>

<%@ Import Namespace="System.Data.Oledb" %>

 

<script runat="server">

Public strConn As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("..\App_Data\scopel.mdb") & ";Persist Security Info=False"

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)

Dim id As String = Request.QueryString("id")

If ID <> "" Then

Dim dt As New DataTable

Dim cn As New OleDbConnection(strConn)

Dim cmd As New OleDbCommand("SELECT * FROM exibe_empreendimentos WHERE codRegiao=" & id & " order by data_cad desc", cn)

Dim dr As OleDbDataReader

Try

cn.Open()

dr = cmd.ExecuteReader

dt.Load(dr)

Catch ex As Exception

Response.Write(ex.Message)

Finally

cn.Close()

End Try

printXML(dt)

End If

End Sub

 

Sub printXML(ByVal dt As DataTable)

Dim str As String

Str = "<empreendimento>" & vbCrLf

For i As Integer = 0 To dt.Rows.Count - 1

'foto1_thumb()

'foto2_thumb()

'foto3_thumb()

'foto4_thumb()

'foto1_grande()

'foto2_grande()

'foto3_grande()

'foto4_grande()

'mapa_thumb()

Str &= "<item id_empreendimento='" & dt.Rows(i)("codEmpreendimento") & "' regiao='" & dt.Rows(i)("regiao") & "' empreendimento='" & dt.Rows(i)("nome") & "' texto='" & dt.Rows(i)("texto") & "' empreendedores='" & dt.Rows(i)("empreendedores") & "' mapa_thumb='" & dt.Rows(i)("mapa_thumb") & "' mapa_grande='" & dt.Rows(i)("mapa") & "' " & carregaFotos(dt.Rows(i)("codEmpreendimento")) & " />" & vbCrLf

Next

Str &= "</empreendimento>"

Response.Write(Str)

End Sub

 

Private Function carregaFotos(ByVal codEmpreendimento) As String

Dim str As String = ""

Dim dt As New DataTable

Dim cn As New OleDbConnection(strConn)

Dim cmd As New OleDbCommand("SELECT * FROM IMAGEM WHERE codEmpreendimento=" & codEmpreendimento, cn)

Dim dr As OleDbDataReader

Try

cn.Open()

dr = cmd.ExecuteReader

dt.Load(dr)

Catch ex As Exception

Response.Write(ex.Message)

Finally

cn.Close()

End Try

For i As Integer = 0 To dt.Rows.Count - 1

if i < 4 then

str &= "foto" & i + 1 & "_thumb='" & dt.Rows(i)("thumb") & "' foto" & i + 1 & "_grande='" & dt.Rows(i)("imagem") & "' "

end if

Next

Return str

End Function

</script>

---------------------------------------------------------------------------------------------------------------------------------------

Ai está a pag aspx.

Se alguém puder ajudar... eu agradeço de coração.

[]´s.

Souza.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Falae galera.. blza.?

 

Mayc Rodrigues o código aspx ta acima... você consegue ver alguma coisa que possa estar prejudicando a acentuação.?

 

[]´s.

Souza.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.