Walidacja i filtrowanie danych wejściowych to istotne techniki zapewniające bezpieczeństwo aplikacji. Celem walidacji jest sprawdzenie, czy dane użytkownika są poprawne (np. czy wprowadzony e-mail jest w odpowiednim formacie), a celem filtrowania jest usunięcie niebezpiecznych danych, takich jak skrypty JavaScript.
Walidacja
Walidacja może być przeprowadzona zarówno po stronie klienta (w HTML/JavaScript), jak i po stronie serwera (np. w PHP). Przykładowo, HTML5 oferuje możliwość walidacji pól formularza.
Przykład walidacji formularza po stronie klienta:
<form action="submit.php" method="POST">
<label for="email">E-mail:</label>
<input type="email" id="email" name="email" required>
<button type="submit">Wyślij</button>
</form>
W tym przykładzie type="email"
powoduje, że przeglądarka automatycznie sprawdzi, czy adres e-mail jest w poprawnym formacie.
Filtrowanie danych
Filtrowanie danych polega na usunięciu niebezpiecznych treści, takich jak niechciane znaki HTML lub skrypty.
Przykład filtrowania w PHP:
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$email = $_POST['email'];
// Filtrowanie danych (np. usuwanie spacji)
$email = filter_var($email, FILTER_SANITIZE_EMAIL);
if (filter_var($email, FILTER_VALIDATE_EMAIL)) {
echo "Poprawny adres e-mail: " . $email;
} else {
echo "Niepoprawny adres e-mail.";
}
}
?>
W tym przykładzie funkcja filter_var
sanitizuje dane, usuwając niepoprawne znaki z adresu e-mail. Następnie, przy użyciu FILTER_VALIDATE_EMAIL
, sprawdzamy, czy adres jest poprawny.