Comprovar se os dados recebidos são corretos

Antes de inserir os dados recebidos pelo formulário na aplicação Livro de Visitas, devemos comprovar que a informação é correta, ou seja, que os dados recebidos são válidos.

Por Miguel Angel Alvarez - Tradução de JML


Publicado em: 10/5/05
Valorize este artigo:
A outra parte do script do livro de visitas em PHP que nos falta comentar contém a codificação das ações a fazer no caso de que se recebem dados do formulário. Tais ações são basicamente comprovar se os dados são corretos e, se assim for, inserir a informação na base de dados.

As comprovações servem para assegurarmos que a informação introduzida vai ser sempre válida, para que as assinaturas se mostrem perfeitamente. Determinadas informações poderiam dar lugar a erros ao introduzir a informação na base de dados ou na hora de mostrar as assinaturas na página.

Eliminar as etiquetas HTML ou PHP

É muito importante apagar toda etiqueta HTML ou PHP do texto dos campos introduzidos pelo visitante. Se um visitante colocasse este comentário:

Olá <b>Amigos</b>

Teria como resultado que, ao visualizar sua assinatura, se mostrasse a palavra "Amigos" em negrito. Isto não seria um problema, mas se se pode incluir uma etiqueta assim, também poderiam colocar links, imagens ou determinados elementos que pudessem deslocar a página, mudar nossos estilos habituais ou incluir scripts que pudessem molestar a outros visitantes ou aos administradores do web site.

//eliminamos as etiquetas HTML e PHP das cadeias de texto
$nome = strip_tags($_POST["nombre"]);
$email = strip_tags($_POST["email"]);
$comentario = strip_tags($_POST["comentario"]);


Cortamos as cadeias muito longas

Para não tentar introduzir textos na base de dados que na verdade não cabem, recorto os textos até seu tamanho máximo.

//Cortamos as cadeias muito longas
$nome=substr($nome,0,150);
$email=substr($email,0,80);


Comprovamos que o visitante preencheu algo

Também devemos comprovar que todos os campos introduzidos não estão vazios, porque nesse caso queria dizer que o usuário está tratando de assinar com nenhum dado sobre seu nome ou comentários do web e não desejamos que isto ocorra.

<?
if (strlen($nome)==0 and strlen($email)==0 and strlen($comentario)==0)
{
?>
<div align="center"><b>Obrigado pelo envio</b>.<br><br>Agradecemos porém, se não for muito esforço, que preenchesse algum dos campos para deixar constância de sua visita.</div>
<?
}
?>


Se não havia preenchido nada mostramos uma mensagem avisando-o. Caso contrário, ou seja, se tudo está correto, insiro na base de dados a informação.





Comentários do artigo
Foi enviado 1 comentário ao artigo
1 comentário não revisado
0 comentários revisados

Usuários :    login / registro

Manuais relacionados
Categorias relacionadas
O autor

Home | Sobre nós | Copyright | Anuncie | Entrar em contato