Esempio n. 1
0
 /**
  * Fonction permettant d'enregistrer un utilisateur de maniere "classique"
  * @param string $pseudo
  * @param string $email
  * @param string $password
  * @param string $password2
  * @param Validator $validator
  * @return array
  */
 public function registerNormal($pseudo, $email, $password, $password2, Validator $validator)
 {
     $validator->checkPseudo($pseudo);
     $validator->checkEmail($email);
     $validator->checkPassword($password, $password2);
     if (count($validator->getErrors()) === 0) {
         $password = password_hash($password, PASSWORD_BCRYPT);
         $key = Helper::generateKey();
         $sql = $this->db->prepare("INSERT INTO users(pseudo, email, password, created_at, validation_key) VALUES (?, ?, ?, NOW(), ?)");
         $sql->execute([$pseudo, $email, $password, $key]);
         if (!$sql) {
             $validator->setErrors('insert', "Une erreur s'est produite");
             $validator->setErrors('error', true);
         } else {
             Helper::sendValidationEmail($this->db->lastInsertId(), $email, $key);
         }
     }
     return $validator->getErrors();
 }