Kursy i Poradniki IT - Adrian Kowalski
Kurs Programowania PHP dla Początkujących
O lekcji

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.