summaryrefslogtreecommitdiff
path: root/Core/Functions/func_register.php
blob: 1a94bc16493ca4bc9c7fe7afb739b6ca5c501024 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<?php

// ############################################################################
// #                                                                          #
// # Description: Fonction d'inscription d'un nouvel utilisateur              #
// #                                                                          #
// ############################################################################

function register($email, $password, $userStatus) {
    // les regex necessaire pour vérifier le mot de passe
    $regNumb    = "/[0-9]/";
    $regUpper   = "/[A-Z]/";
    $regSpecial = "/[`!@#$%^&*()_+\-=\[\]{};':\"\\|,.<>\/?~µ°€£]/";
    $regEmail   = "/^[a-z0-9_-]+@[a-z0-9-]+\.[a-z]/";

    if ((strlen($password) >= 8)
        && preg_match($regNumb, $password)
        && preg_match($regUpper, $password)
        && preg_match($regSpecial, $password)
        && preg_match($regEmail, $email)
    ) {
        $dbuser = new DbUser;
        
        $registered = $dbuser->register_user($email,
                                        $password,
                                        $userStatus
                                        );

        // Sélection du message à afficher en fonction de la réussite de l'inscription.
        if ($registered) {
            $message = ["userAdd", "success"];
        } else {
            $message = ["userAdd", "fail"];
        }

        // Redirection vers message avec l'index du message à afficher.
        $_SESSION["message"] = $message;
        header("Location: /Template/message.php");
        die();
    } else {
        // Si le mdp est arrivé jusque là et est insuffisament "fort"
        $message = ["userAdd", "fail"];
        
        // Redirection vers message avec l'index du message à afficher.
        $_SESSION["message"] = $message;
        header("Location: /Template/message.php");
        die();
    }
}

?>