Ir para conteúdo

POWERED BY:

Arquivado

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

Blackcat

Limpar "Formatação" campo de texto

Recommended Posts

Olá Pessoal,

 

Minha dúvida é simples ao mesmo tempo que complexa. Fiz um sistema em Adobe Flex(não achei Adobe Flex no fórum, por isso postei em Flash) e criei um campo normal do tipo Text(input, multi linhas) e quando o usuário digita - (traço) e --(travessão) o sistema reconhece e grava no banco sem nenhum problema, mas quando o usuário copia de algum site em HTML(totalmente HTML e não XHTML), ele na verdade lê e copia o código HTML(que algo é algo ASCII: ⃺) e colar dentro do campo e gravar no banco de dados eu não consigo mais saber o que significa esse código. Antes de mais nada já tentei as funções:(estou usando PHP) htmlentities, htmlspecialchars, html_entity_decode. Tentei até encodar em utf8 e ae é que a coisa piora, ele até encoda, mas um caracter especial que não é possivel voltar ao normal(curioso não?).

 

 

 

Agradeço Qualquer ajuda.

 

Blackcat

Compartilhar este post


Link para o post
Compartilhar em outros sites

— -

− -

 

Ambos são parecidos dash > minus

 

O que você vai ter que fazer é deixar o banco gravar como html entities mesmo... não vejo problema nisso... afinal quando for printar ele vai converter devolta automaticamente pelo navegador... exatamente como ele fez quando foi copiado.

Basta não mexer no código

Agora se você salvar como é aiii sim tu vai ter um código em UTF-8

 

Tem algum exemplo para eu ver como funciona??? porque assim de orelhada não vou saber como lhe ajudar.

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então amigo, ae é que está o problema, esses códigos que postou é XHTML, entendeu? Se de onde o meu usuário copiasse fosse XHTML eu não tenho NENHUM problema, rs... O problema é quando não é XHTML ou seja não é esse código "bunitinho": — e − e sim como eu informei na primeira mensagem, é aquele código esquisito, vai no Dreamweaver(em CODE) e poste o copie o código: ⃺ ;(coloque o ponto e vírgula junto) verá que ele é semelhante ao − porém esse é ASCII(⃺ ;), me entendeu?

 

Obs: se eu escrever esse código colocando o ponto e virgula junto ao número 2: ⃺ ; -> ⃺ (veja como apareceu até mesmo aqui no imasters.

 

Desde já obrigado pela contribuição,

 

Blackcat

 

— -

− -

 

Ambos são parecidos dash > minus

 

O que você vai ter que fazer é deixar o banco gravar como html entities mesmo... não vejo problema nisso... afinal quando for printar ele vai converter devolta automaticamente pelo navegador... exatamente como ele fez quando foi copiado.

Basta não mexer no código

Agora se você salvar como é aiii sim tu vai ter um código em UTF-8

 

Tem algum exemplo para eu ver como funciona??? porque assim de orelhada não vou saber como lhe ajudar.

 

Abraços

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

O jeito então vai ser você criar um filtro... que se enquadre com isso ai.

E re escreva o código para o formato correto.

 

Já que Flex = AS 3 fazer um replace com expressão regular fica fácil :)

 

Ai tudo que você vai ter que fazer é criar o filtro e procurar na string se encontra algum dos códigos de HTML comum.

Ou bloqueia o copy paste :)

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá!

 

Nem sempre vimos a solução quando ela parece tão óbvia(replace dentro do flex). Vou fazer um teste depois e se tudo ocorrer bem, mudo o título para resolvido. Obrigado pela contribuição.

 

O jeito então vai ser você criar um filtro... que se enquadre com isso ai.

E re escreva o código para o formato correto.

 

Já que Flex = AS 3 fazer um replace com expressão regular fica fácil :)

 

Ai tudo que você vai ter que fazer é criar o filtro e procurar na string se encontra algum dos códigos de HTML comum.

Ou bloqueia o copy paste :)

 

Abraços

 

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.