Retirando o html
Esta dica é bem simples.
Ás vezes se faz necessário mostrar o conteúdo de um arquivo html ou um pedaço dele, seja por estar construindo um fórum, ou um sistema de notícias onde o html não pode ser habilitado.
Deixar os visitantes de um site inserirem código html representa um risco para um site, uma vez que um visitante mal intencionado pode adicionar javascripts ou activex de toda a sorte e acabar com a confiabilidade de seu site. Sem falar nas brincadeiras que se pode fazer, ou até mesmo com o estrago no design que um <font size="10"> pode fazer :-)
Para resolver isto basta utilizar a função htmlspecialchars() [http://www.php.net/manual/pt_BR/function.htmlspecialchars.php]. O que ela faz é transformar todos os códigos especiais do html como o < e o > em > <, o que "escapa" o html para texto puro.
Exemplo:
<h><?php
print htmlspecialchars('Sem o bold e outras tags');
?></h>
Ou então, vindo de um arquivo:
<h><?php
// pegando o conteudo do arquivo e colocando cada linha num array
$conteudo = file('extra.html');
// juntando os arrays e transformando em string
$extra = join('',$conteudo);
// imprimindo o html "escapado"
print htmlspecialchars($extra);
?></h>
Mais informações:
http://www.php.net/manual/function.htmlspecialchars.php
http://www.php.net/manual/function.file.php
http://www.php.net/manual/function.join.php
Ás vezes se faz necessário mostrar o conteúdo de um arquivo html ou um pedaço dele, seja por estar construindo um fórum, ou um sistema de notícias onde o html não pode ser habilitado.
Deixar os visitantes de um site inserirem código html representa um risco para um site, uma vez que um visitante mal intencionado pode adicionar javascripts ou activex de toda a sorte e acabar com a confiabilidade de seu site. Sem falar nas brincadeiras que se pode fazer, ou até mesmo com o estrago no design que um <font size="10"> pode fazer :-)
Para resolver isto basta utilizar a função htmlspecialchars() [http://www.php.net/manual/pt_BR/function.htmlspecialchars.php]. O que ela faz é transformar todos os códigos especiais do html como o < e o > em > <, o que "escapa" o html para texto puro.
Exemplo:
<h><?php
print htmlspecialchars('Sem o bold e outras tags');
?></h>
Ou então, vindo de um arquivo:
<h><?php
// pegando o conteudo do arquivo e colocando cada linha num array
$conteudo = file('extra.html');
// juntando os arrays e transformando em string
$extra = join('',$conteudo);
// imprimindo o html "escapado"
print htmlspecialchars($extra);
?></h>
Mais informações:
http://www.php.net/manual/function.htmlspecialchars.php
http://www.php.net/manual/function.file.php
http://www.php.net/manual/function.join.php
Outra boa maneira de se mostrar o código html é a tag XMP... o navegador mostrará como texto plano tudo o que estiver entre ela... Exemplo:
<xmp> <html><body> XMP é LEGAL </body></html> </xmp>
NuNuNO
( Que está curioso para ver como vai sair este post )
<xmp> <html><body> XMP é LEGAL </body></html> </xmp>
NuNuNO
( Que está curioso para ver como vai sair este post )
01/08/2005 7:45am
(~19 anos atrás)
ricardo