Retirar formatação de texto

1,446 views
Skip to first unread message

Mauricio Fragoso

unread,
Jul 1, 2007, 8:11:54 PM7/1/07
to ph...@googlegroups.com
Boa noite lista!

Bom, tenho um sistema que cadastra resumos de trabalhos.
Para o usuário escrever o resumo coloquei o FCKEditor no site.
O problema é o seguinte...
Preciso salvar o resumo no banco sem as formatações tipo <p style=""> <span> e outras...
De onde vem essas formatações? Aparece, por exemplo, quando o usuário copia o resumo do Word cola lá no FCKEditor!
Alguém tem idéia de como pegar o resumo após um $_POST e retirar essas formatações da string antes de salvar no BD??

Maurício Fragoso

Lauro Becker

unread,
Jul 2, 2007, 8:12:47 AM7/2/07
to ph...@googlegroups.com
Você poderá remover as tags HTML com a função strip_tags().
Não sei se te serve.

Abraço.

Em 01/07/07, Mauricio Fragoso <mauricio...@gmail.com> escreveu:



--
Lauro L. V. Becker
---------------------------
Celular: (54) 8126 7948
MSN: lau...@hotmail.com

MAURICIO - POP

unread,
Jul 2, 2007, 8:43:24 AM7/2/07
to ph...@googlegroups.com
Bom dia,Mauricio Fragoso
 
Eu utilizo este editor e consegui resolver este problema com a seguinte forma:
- Retire as opções de estilos(formatação do texto) dos arquivos de configuração(arquivos que estão com extensão PHP e JS);
Ou pode fazer da seguinte forma:
- Crie um array com as tags de formatação e monte uma estrutura de repetição FOREACH:
$array=("<font>","<b>",...);
$var_post=$_POST["conteudo"];
foreach ($array as $compara) {
   if(eregi($compara,$var_post)){
    $texto_mod=eregi_replace($compara,"",$var_post);
}
Espero ter ajudado em algo.
 
Abraços.
 
Mauricio

Mauricio Fragoso

unread,
Jul 2, 2007, 9:08:10 AM7/2/07
to ph...@googlegroups.com
Bom dia Pessoal,

Eu baixei a última versão do FCKEditor, e nessa versão, quando o usuário copia do word e cola no editor, ele identifica e pergunta se o usuário quer retirar a formatação! Agora vou tentar modificar o código fonte para o FCKEditor remover automaticamente sem perguntar para o usuário!
Ainda assim tem coisa para retirar, porém ficou mais fácil, pois sai aquele monte de coisa que o word coloca! Vou dar uma estudada aqui na função recomendada pelo Lauro e tbm ver o que posso modificar das opções de estilos dos arquivos de configuração!

Valeu
Abraço!

Maurício Fragoso

Felipe Sander

unread,
Jul 2, 2007, 9:36:41 AM7/2/07
to ph...@googlegroups.com
isso acontece pq mesmo que o cliente não use nenhum botão de formatação o simples copiar e colar o texto dentro do editor pode fazer vir com as fontes do original. O que faço é dizer para o cliente quando copiar e colar a primeira coisa a fazer é clicar no botão remover formatação (aquele que parece uma borracha), pois isso retira qualquer estilo de fonte e outras coisas que ficam no código fonte como <:ol>, etc.

o que acontece mais comum é vir com <font face="Arial">, se é apenas isto utilize uma opção de remover por script (como já foi postado) somente o código que você não quer, como <span></span>, <font face="Arial"></font>, etc.


Em 02/07/07, MAURICIO - POP <mat...@pop.com.br> escreveu:

Otávio Nogueira

unread,
Jul 2, 2007, 10:58:21 AM7/2/07
to ph...@googlegroups.com
Tem o http://php.net/strip_tags tb
que vc diz quais tags quer retirar

exemplo

strip_tags( $string, '<p>');

ele tira todos <p> do seu texto... ;)

se vc não passar parametros.. ele tira todo e qualquer html

fica ai uma sugestão

Felipe Sander

unread,
Jul 3, 2007, 12:56:08 PM7/3/07
to ph...@googlegroups.com
pelo que eu saiba o parâmetro usado no strip_tags é pra manter em vez de retirar.

exemplo

$string = strip_tags( $string, '<p></p>');

ele MANTÉM todos <p></p> do seu texto... ;)

se você não usar o parâmetro ele retira todo código html e php da variável.

felipe


Em 02/07/07, Otávio Nogueira < vico...@gmail.com> escreveu:

William G. Comnisky

unread,
Jul 4, 2007, 7:41:04 AM7/4/07
to ph...@googlegroups.com
Esta função tenta retornar uma string retirando todas as tags HTML e PHP
de str. Ele erra no lado de ter cuidado no caso de tags com problemas ou
incompletas. Usa o mesmo sistema para retirar as tags do que fgetss().

Você pode utilizar o segundo parâmetro, que é opcional, para indicar
tags que não devam ser retiradas.

Fonte: manual do php (br.php.net/manual/pt_BR/function.strip-tags.php)

Felipe Sander escreveu:


> pelo que eu saiba o parâmetro usado no strip_tags é pra manter em vez de
> retirar.
>
> exemplo
>
> $string = strip_tags( $string, '<p></p>');
>
> ele MANTÉM todos <p></p> do seu texto... ;)
>
> se você não usar o parâmetro ele retira todo código html e php da variável.
>
> felipe
>
>

> Em 02/07/07, *Otávio Nogueira* < vico...@gmail.com
> <mailto:vico...@gmail.com>> escreveu:


>
> Tem o http://php.net/strip_tags tb
> que vc diz quais tags quer retirar
>
> exemplo
>
> strip_tags( $string, '<p>');
>
> ele tira todos <p> do seu texto... ;)
>
> se vc não passar parametros.. ele tira todo e qualquer html
>
> fica ai uma sugestão
>
>

> On 7/2/07, * Mauricio Fragoso* < mauricio...@gmail.com

Reply all
Reply to author
Forward
0 new messages