diff --git a/app/controller/RegisterController.php b/app/controller/RegisterController.php index fdf3019423440d2ba07d0b11e039ce88e3e85738..e8672e8e8656609a58846cdcf2b1a0fc93b980ce 100644 --- a/app/controller/RegisterController.php +++ b/app/controller/RegisterController.php @@ -16,14 +16,35 @@ class RegisterController extends Controller { // classe de contrôleur pour l'in echo "<h1>Erreur : variables absentes</h1>"; die(); } - $data = $_POST; + if($data['password'] == $data['password_bis']) { $data['password'] = password_hash($data['password'], PASSWORD_DEFAULT); $data['slug_joueur'] = self::slugify($_POST['pseudo']); $result = Register::check($data['slug_joueur'], $_POST['email']); // vérifie si le pseudo est libre et que l'adresse email n'est pas déjà utilisée if ($result == 1) { // connexion valide + if(isset($_FILES['avatar'])) { + if ($_FILES['avatar']['error'] > 0) { + session_start(); // on démarre une session pour avoir accès aux variables superglobales de session + $_SESSION["registerErrCode"] = 5; // on stocke le code d'erreur + header('Location:../inscription'); // on redirige vers la page de formulaire (il faut faire un retour dans le dossier parent pour que ça fonctionne) + die(); + } else { + mkdir(ROOT . "/www/images/avatar/", $recursive = true); + if ($avatar = imagecreatefromjpeg($_FILES['avatar']['tmp_name'])) { + imagejpeg($avatar, ROOT . "/www/images/avatar/" . $data['slug_joueur'] . ".jpg"); + } elseif ($avatar = imagecreatefrompng($_FILES['avatar']['tmp_name'])) { + imagejpeg($avatar, ROOT . "/www/images/avatar/" . $data['slug_joueur'] . ".jpg"); + } else { + session_start(); // on démarre une session pour avoir accès aux variables superglobales de session + $_SESSION["registerErrCode"] = 6; // on stocke le code d'erreur + header('Location:../inscription'); // on redirige vers la page de formulaire (il faut faire un retour dans le dossier parent pour que ça fonctionne) + die(); + + } + } + } $success = Register::writedb($data);// on réalise l'inscription à l'aide d'une méthode de la classe Register if ($success == 1) { header('Location:valid'); // on redirige vers la page OK @@ -39,7 +60,6 @@ class RegisterController extends Controller { // classe de contrôleur pour l'in session_start(); // on démarre une session pour avoir accès aux variables superglobales de session $_SESSION["registerErrCode"] = 4; // on stocke le code d'erreur header('Location:../inscription'); // on redirige vers la page de formulaire (il faut faire un retour dans le dossier parent pour que ça fonctionne) - } }