Ćwiczenie: Rejestracja i Logowanie PHP

Kod do przepisania

<?php
session_start();

// Rejestracja
if(isset($_POST['register'])){
    $imie = $_POST['imie'] ?? '';
    $email = $_POST['email'] ?? '';
    $haslo = $_POST['haslo'] ?? '';
    $haslo2 = $_POST['haslo2'] ?? '';

    $errors = [];

    if(empty($imie)) $errors[] = "Imię jest wymagane.";
    if(!filter_var($email, FILTER_VALIDATE_EMAIL)) $errors[] = "Niepoprawny email.";
    if(strlen($haslo) < 6) $errors[] = "Hasło min. 6 znaków.";
    if($haslo !== $haslo2) $errors[] = "Hasła nie są takie same.";

    if(empty($errors)){
        $_SESSION['registered'] = ['email'=>$email,'haslo'=>$haslo,'imie'=>$imie];
        echo "<p>Rejestracja przebiegła pomyślnie!</p>";
    } else {
        foreach($errors as $err) echo "<p style='color:red;'>$err</p>";
    }
}

// Logowanie
if(isset($_POST['login'])){
    $email = $_POST['email'] ?? '';
    $haslo = $_POST['haslo'] ?? '';

    if(isset($_SESSION['registered'])){
        if($_SESSION['registered']['email']==$email && $_SESSION['registered']['haslo']==$haslo){
            $_SESSION['loggedin'] = true;
            echo "<p>Logowanie powiodło się! Witaj ".$_SESSION['registered']['imie']."!</p>";
        } else {
            echo "<p style='color:red;'>Niepoprawny login lub hasło</p>";
        }
    }
}
?>

Efekt działania

Rejestracja









← Powrót do poradnika