Muitas vezes, nós temos que permitir que nosso visitante modifique um ou mais arquivos dentro de nosso servidor, ou não existiriam os fóruns, os sistemas de comentário, os bate-papos, os livros de visitas, as páginas de recados, e outros sistemas úteis.
1. htmlspecialchars()
Essa função é simples e muito utilizada em sistemas de fóruns, por exemplo. Ela não retira as tags, mas as exibe para leitura. Em outras palavras, se alguém digitou:
<s>Eu sou mau!</s>
Na página não aparecerá “Eu sou mau!“, mas sim, o código exatamente como foi escrita.
A utilização dessa função é simples. Veja:
<?php
$texto = "<s>Eu sou mau!</s>";
$semhtml = htmlspecialchars($texto);
echo $semhtml;
?>
<p> </p>
Então, pelo exemplo acima, ficou fácil entender a função. Note que é simples recuperar dados de um formulário para retirar as tags.
2. strip_tags()
Essa função é tão simples quanto a anterior, mas sua ação é diferente: Ao invés de exibir as tags, ele apenas as remove. Ou seja, ele detecta a(s) tag(s) e a retira. Veja:
<p><?php<p>$texto = "<s>Eu sou mau!</s>";</p><p>$semhtml = strip_tags($texto);</p><p>echo $semhtml;</p><p>?></p>
Então, a única coisa que o script mostrará é a frase “Eu sou mau!”, sem o risco e sem as tags.
3. mysql_real_escape_string()
Essa função também é simples de se utilizar. É muito útil em conjunto com o MySQL. Veja essa situação:
O usuário do seu site fez um comentário que possuia aspa (“). Quando o comentário foi inserido na tabela, gerou erro: Apenas a area anterior à aspa foi inserida.
Isso se resolve utilizando essa função. Veja:
<p><?php<p>$texto = "Eu sou 'mau'!";</p><p>$semhtml = mysql_real_escape_string($texto);</p><p>$sql = "INSERT INTO 'textos' VALUES (NULL, '".$texto."')";</p><p>mysql_query($sql);</p><p>?></p>
Aqui foram apresentadas a você 3 maneiras diferentes de proteger seu sistema. Cabe a você decidir qual será mais útil para você – e a utilizar, é claro!
Bom, ficamos por aqui. Estude bastante essas três funções para que você realmente as entenda. Para saber um pouco mais sobre cada função, clique sobre os nomes de cada uma nos títulos dos ítens. Caso haja dúvidas, utilize o sistema de comentários no formulário abaixo. Agradecemos pela atenção e até a próxima!