Example #1
0
 public function registerUser()
 {
     // debug($_POST);
     $email = trim(htmlentities($_POST['email']));
     $name = trim(htmlentities($_POST['name']));
     $password = trim(htmlentities($_POST['password']));
     $confirmPassword = trim(htmlentities($_POST['confirmPassword']));
     $errors = [];
     $userManager = new UserManager();
     $userManager->setTable('users');
     if (empty($email) || filter_var($email, FILTER_VALIDATE_EMAIL) == false) {
         $errors['email'] = "Verifiez votre adresse email";
     } elseif ($userManager->emailExists($email)) {
         $errors['email'] = "Cet email existe déjà";
     }
     if ($password != $confirmPassword) {
         $errors['password'] = "******";
     } elseif (strlen($password) <= 6) {
         $errors['password'] = "******";
     }
     if (empty($errors)) {
         $hashedPassword = password_hash($password, PASSWORD_DEFAULT);
         $date = new DateTime();
         $resultUser = $userManager->insert(['email' => $email, 'name' => $name, 'password' => $hashedPassword, 'role' => 'member', 'created_at' => $date->format('Y-m-d H:i:s'), 'updated_at' => $date->format('Y-m-d H:i:s')]);
         if ($resultUser) {
             $authentificationManager = new AuthentificationManager();
             $authentificationManager->logUserIn($resultUser);
             // print_r($_POST);
             $this->redirectToRoute('home');
         }
     } else {
         $this->show('register/index', ['errors' => $errors, 'email' => $email]);
     }
 }
Example #2
0
 public function register()
 {
     if (isset($_POST['create'])) {
         $_POST['myform']['role'] = 'user';
         $_POST['myform']['password'] = password_hash($_POST['myform']['password'], PASSWORD_DEFAULT);
         $manager = new UserManager();
         $manager->insert($_POST['myform']);
         $this->redirectToRoute('home');
     }
     $this->show('default/register');
 }
 public function registerUser()
 {
     //debug($_POST);
     // Affecter une variable à chaque valeur clé de $_POST
     $email = trim(htmlentities($_POST['email']));
     $userName = trim(htmlentities($_POST['userName']));
     $password = trim(htmlentities($_POST['password']));
     $confirmPassword = trim(htmlentities($_POST['confirmPassword']));
     // Initialisation d'un tableau d'erreurs (associatif)
     $errors = [];
     // Instanciation d'un object de type UserManager
     $userManager = new UserManager();
     $userManager->setTable('users');
     // Bug du framework le nom de la table est mal défini
     // Check de l'email
     if (empty($email) || filter_var($email, FILTER_VALIDATE_EMAIL) === false) {
         $errors['email'] = "Vérifiez votre adresse électronique.";
     } elseif ($userManager->emailExists($email)) {
         // Check en bdd que l'email existe
         $errors['email'] = "Cette adresse électronique existe déjà";
     }
     // Check de l'username
     if (empty($userName)) {
         $errors['userName'] = "******";
     }
     // Check du password
     if ($password != $confirmPassword) {
         $errors['password'] = "******";
     } elseif (strlen($password) <= 5) {
         $errors['passwordB'] = "Votre mot de passe doit faire au moins 6 caractères";
     }
     // S'il n'y pas d'erreurs
     if (empty($errors)) {
         // Crypter le mot de passe
         $hashedPassword = password_hash($password, PASSWORD_DEFAULT);
         // Objet DateTime
         $date = new DateTime();
         // Enregistrement en bdd et renvoie un tableau
         $resultUser = $userManager->insert(['email' => $email, 'username' => $userName, 'password' => $hashedPassword, 'role' => 'member', 'created_at' => $date->format('Y-m-d H:i:s'), 'updated_at' => $date->format('Y-m-d H:i:s')]);
         // debug($resultUser);
         // Teste que le tableau user est rempli
         if ($resultUser) {
             // Authentifier l'utilisateur car l'inscription a réussi
             $authentificationManager = new AuthentificationManager();
             $authentificationManager->logUserIn($resultUser);
             // Redirection
             $this->redirectToRoute('home');
         }
     } else {
         $this->show('register/index', ['errors' => $errors, 'email' => $email, 'username' => $userName]);
     }
 }
 public function registerUser()
 {
     // Affecter une variable à chaque valeur clé de $_POST
     $email = trim(htmlentities($_POST['email']));
     $password = trim(htmlentities($_POST['password']));
     $passwordConfirm = trim(htmlentities($_POST['passwordConfirm']));
     // Initialisation d'un tableau d'erreurs
     $errors = [];
     // Instanciation d'un object de type UserManager
     $userManager = new UserManager();
     $userManager->setTable('users');
     // Bug du framework le nom de la table est mal défini
     // Check de l'email
     if (empty($email) || filter_var($email, FILTER_VALIDATE_EMAIL) === false) {
         $errors['email'] = "Vérifiez votre adresse e-mail.";
     } elseif ($userManager->emailExists($email)) {
         // Check en bdd que l'email existe
         $errors['email'] = "Cette adresse e-mail existe déjà";
     }
     // Check du password
     if ($password != $passwordConfirm) {
         $errors['password'] = "******";
     } elseif (strlen($password) <= 6) {
         $errors['password'] = "******";
     }
     // S'il n'y pas d'erreurs
     if (empty($errors)) {
         // Crypter le mot de passe
         $hashedPassword = password_hash($password, PASSWORD_DEFAULT);
         // Objet DateTime
         $date = new DateTime();
         // Enregistrement en bdd et renvoie un tableau
         $resultUser = $userManager->insert(['email' => $email, 'password' => $hashedPassword, 'role' => 'member']);
         // debug($resultUser);
         // Teste que le tableau user est rempli
         if ($resultUser) {
             // Authentifier l'utilisateur car l'inscription a réussi
             $authentificationManager = new AuthentificationManager();
             $authentificationManager->logUserIn($resultUser);
             // Redirection
             $this->redirectToRoute('login');
         }
     } else {
         $this->show('register/index', ['errors' => $errors, 'email' => $email]);
     }
 }
 public function inscription_3()
 {
     if (isset($_SESSION['user'])) {
         $this->redirectToRoute('accueil');
         // si ok envoie page 2
     }
     if (isset($_POST['valider'])) {
         $_SESSION['reseaux_socialInsc'] = $_POST['reseaux_social'];
         $_SESSION['reseaux_proInsc'] = $_POST['reseaux_pro'];
         $_SESSION['reseaux_divertissementInsc'] = $_POST['reseaux_divertissement'];
         //nettoyage des espace en debut et fin de chaine de caractére
         $_SESSION['wuserInsc'] = array_map('trim', $_SESSION['wuserInsc']);
         $_SESSION['diplomeInsc'] = array_map('trim', $_SESSION['diplomeInsc']);
         $_SESSION['experience_proInsc'] = array_map('trim', $_SESSION['experience_proInsc']);
         $_SESSION['fil_actuInsc'] = array_map('trim', $_SESSION['fil_actuInsc']);
         $_SESSION['portfolioInsc'] = array_map('trim', $_SESSION['portfolioInsc']);
         $_SESSION['reseaux_socialInsc'] = array_map('trim', $_SESSION['reseaux_socialInsc']);
         $_SESSION['reseaux_proInsc'] = array_map('trim', $_SESSION['reseaux_proInsc']);
         $_SESSION['reseaux_divertissementInsc'] = array_map('trim', $_SESSION['reseaux_divertissementInsc']);
         // ajout d'un $key => $value (ex :role => membre)
         $_SESSION['wuserInsc']['role'] = 'membre';
         $_SESSION['wuserInsc']['validation_inscription'] = 'false';
         $manager = new UserManager();
         // insert formulaire 1
         $manager->insert($_SESSION['wuserInsc'], $stripTags = true);
         //enregistrement membre dans BDD
         $mail = $_SESSION['wuserInsc']['mail'];
         // recuperation du mail dans une variable
         //suite insert formulaire 1
         $manager = new GeneralManager();
         $membre = $manager->findMail($mail);
         //recuperation du membre dans la table wusers via le mail
         $id = $membre['id'];
         // insert page formulaire 2
         $_SESSION['diplomeInsc']['id_wuser'] = $id;
         // ajout d'une $key id_wuser dans la SESSION['diplome']
         $manager = new DiplomeManager();
         //selection de la table Diplome
         $manager->insert($_SESSION['diplomeInsc'], $stripTags = true);
         $_SESSION['experience_proInsc']['id_wuser'] = $id;
         // ajout d'une $key id_wuser dans la SESSION['experience_pro']
         $manager = new Experience_proManager();
         //selection de la table experience_pros
         $manager->insert($_SESSION['experience_proInsc'], $stripTags = true);
         $_SESSION['competenceInsc']['id_wuser'] = $id;
         // ajout d'une $key id_wuser dans la SESSION['competence']
         $manager = new CompetenceManager();
         //selection de la table competences
         $manager->insert($_SESSION['competenceInsc'], $stripTags = true);
         $_SESSION['fil_actuInsc']['id_wuser'] = $id;
         // ajout d'une $key id_wuser dans la SESSION['fil_actu']
         $manager = new Fil_actuManager();
         //selection de la table fil_actus
         $manager->insert($_SESSION['fil_actuInsc'], $stripTags = true);
         $_SESSION['portfolioInsc']['id_wuser'] = $id;
         // ajout d'une $key id_wuser dans la SESSION['portfolio']
         $manager = new PortfolioManager();
         //selection de la table portfolios
         $manager->insert($_SESSION['portfolioInsc'], $stripTags = true);
         // insert page formulaire 3
         $_SESSION['reseaux_socialInsc']['id_wuser'] = $id;
         // ajout d'une $key id_wuser dans la SESSION['reseaux_social']
         $manager = new Reseaux_socialManager();
         //selection de la table reseaux_socials
         $manager->insert($_SESSION['reseaux_socialInsc'], $stripTags = true);
         $_SESSION['reseaux_proInsc']['id_wuser'] = $id;
         // ajout d'une $key id_wuser dans la SESSION['reseaux_pro']
         $manager = new Reseaux_proManager();
         //selection de la table reseaux_pros
         $manager->insert($_SESSION['reseaux_proInsc'], $stripTags = true);
         $_SESSION['reseaux_divertissementInsc']['id_wuser'] = $id;
         // ajout d'une $key id_wuser dans la SESSION['reseaux_divertissement']
         $manager = new Reseaux_divertissementManager();
         //selection de la table reseaux_divertissements
         $manager->insert($_SESSION['reseaux_divertissementInsc'], $stripTags = true);
         Helper::mail("*****@*****.**", "Une demande d'inscritption à été effectué sur LOTL", "Veuillez valider ou non l'inscritpion.");
         // l'envoi de mail vers la BAL de l'admin pour toute nouvelle demande d'inscription sur le site
         //destruction des SESSION INSCRIPTION
         $manager = new GeneralManager();
         $manager->logInscrOut();
         $this->redirectToRoute('validation');
     } elseif (isset($_POST['precedent2'])) {
         $_SESSION['inscription_3'] = $_POST['inscription_3'];
         $this->redirectToRoute('inscription2');
         // si précédent retour page 2
     }
     $this->show('inscription/inscription3');
 }
 public function register()
 {
     $errors = array();
     $flag = 0;
     //debug($_POST);
     if (isset($_POST['registerform'])) {
         //debug($_POST['registerform']);
         // indication du role par défaut de l'utilisateur
         $_POST['myform']['role'] = 'user';
         //nom
         $nom = $_POST['nom'];
         //prénom
         $prenom = $_POST['prenom'];
         // Hashage du mot de passe
         $_POST['myform']['mdp'] = password_hash($_POST['myform']['mdp'], PASSWORD_DEFAULT);
         $manager = new UserManager();
         $manager2 = new ProfilManager();
         $manager3 = new WuserManager();
         $manager4 = new TagManager();
         $manager5 = new Wusers_tagManager();
         // Si le mail et sa confirmation sont différents
         if ($_POST['myform']['mail'] != $_POST['remail']) {
             $errors[] = 'Les adresses mail entrées sont différentes.';
         } else {
             // Si l'adresse mail existe en bdd
             if ($manager->getUserByUsernameOrEmail($_POST['myform']['mail'])) {
                 $errors[] = '<br />Cette adresse mail est déjà utilisée, veuillez en choisir une autre ou vous connecter à ce compte.';
             } else {
                 if (!preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\\.[a-z]{2,4}\$#", $_POST['myform']['mail'])) {
                     $errors[] = '<br />L\'adresse mail ne respecte pas les critères de validité.';
                 } else {
                     $_POST['myform']['mail'];
                 }
             }
         }
         //mail
         // Si le mot de passe fait moins de 8 caractères
         // A FAIRE
         // Si le mot de passe et sa confirmation sont diférents
         if ($_POST['myform']['mdp'] != password_verify($_POST['remdp'], $_POST['myform']['mdp'])) {
             $errors[] = 'Les mots de passe entrés sont différents.';
         }
         //mdp
         // Création du token pour validation du compte par mail
         $token = md5(uniqid($_POST['myform']['pseudo'], true));
         if (count($errors) === 0) {
             // error = 0 = insertion user
             //$this->redirectToRoute('login');
             try {
                 $manager->insert($_POST['myform']);
                 $manager2->insertUserData($_POST['myform']['mail'], $nom, $prenom, $token);
                 //debug('compte en bdd');
                 $flag = 1;
                 $wuser_id = $manager3->getWuserId($_POST['myform']['mail']);
                 // debug($wuser_id);
                 $tags = $manager4->getAllTags();
                 $manager5->setWusersTags($wuser_id, $tags);
                 $this->show('default/home', ['flag' => $flag]);
             } catch (Exception $e) {
                 $this->show('default/home', ['errors' => $errors->getMessage()]);
             }
         } else {
             $this->show('default/home', ['errors' => $errors], ['flag' => $flag]);
         }
     }
     $this->show('default/home', ['flag' => $flag]);
 }