Panafrikan PHP

An educational initiative by EColSi

Discover EColSi
Choose your language
Explore the course

B09 | Valide antes de confiar e escape antes de exibir

Nível básico · Lição B09

B09 | Valide antes de confiar e escape antes de exibir

B09 | Valide antes de confiar e escape antes de exibir

Resultado: formulário com erros claros e saída segura.
Conceito central: validar a entrada e escapar da saída resolve problemas diferentes.
Tempo de orientação: 100–130 minutos.

Por que um campo “obrigatório” ainda precisa de validação do PHP?

Porque qualquer solicitação pode ser modificada fora do formulário. O servidor deve verificar presença, tipo, alcance e regras. Então, ao exibir o texto, você deve codificá-lo para o contexto HTML.

Conexão anterior

Protegeremos a forma de B08.

Laboratório guiado

<?php
$rawHours = $_POST['hours'] ?? null;
$errors = [];
$hours = filter_var($rawHours, FILTER_VALIDATE_INT, [
    'options' => ['min_range' => 1, 'max_range' => 40],
]);

if ($_SERVER['REQUEST_METHOD'] === 'POST' && $hours === false) {
    $errors['hours'] = 'Escribe un número entre 1 y 40.';
}
?>

Ao imprimir texto fornecido pelo usuário, use htmlspecialchars($value, ENT_QUOTES, 'UTF-8').

Missão Média

Valide o nome alternativo, tópico e horário. Exiba uma mensagem ao lado de cada campo e preserve os valores seguros. Experimente caracteres como < e &.

Extensão Universitária

Crie funções separadas de normalização, validação e escape. Define uma matriz de erro de regra de entrada e explica por que a filtragem não substitui a modelagem de domínio.

Testes

Caracteres vazios, mínimo, máximo, fora do intervalo, decimais, de texto e HTML.

Entrega

Enviar matriz, código, evidências de seis casos e explicação entre validação e escape. ENVIAR PARA O TUTOR.

Próximo: B10 — Projeto básico.

Comments

Popular posts from this blog

Bem-vindo ao Panafrikan PHP: aprenda, construa e compartilhe

Bienvenue sur Panafrikan PHP : apprenez, créez et partagez