/** * Fonction de connexions a un espace membre ou prive avec un login / mdp * @param string $pseudo pseudo que l'utilisateur utilise pour se connecter * @param string $mdp mot de passe que l'utilisateur utilise * @param string $page_retour_err page de retour en cas d'err de mdp ou pseudo * @param string $page_retour page de retour quand connexion ok * @param int $remember si on doit mémoriser la connexion au site */ public static function setLogin($pseudo, $mdp, $page_retour_err, $page_retour, $remember) { $dbc = App::getDb(); $mdpbdd = ""; $valide = ""; $archiver = ""; //recup des donnees $pseudo = $dbc->quote(htmlspecialchars($pseudo)); $mdp_nonencrypt = $mdp; $mdp = md5(htmlspecialchars($mdp)); $query = $dbc->select()->from("identite")->where("pseudo", "=", $pseudo, "", true)->get(); //aficher query tant que qqch dans $ligne if (is_array($query) && count($query) > 0) { foreach ($query as $obj) { $id = $obj->ID_identite; $pseudo = $obj->pseudo; $valide = $obj->valide; $archiver = $obj->archiver; $mdpbdd = Encrypt::setDecryptMdp($obj->mdp, $id); } } //verif si num enr = 0 if (!isset($id)) { FlashMessage::setFlash("Vos identifiants de connexions sont incorrects"); header("location:{$page_retour_err}"); } else { self::setTestParamCompte($valide, $archiver, $page_retour_err); //si les mdp sont egaux on redirige ver esace membre sinon ver login avec un mess d'erreur if ($mdp == $mdpbdd) { $_SESSION['login'] = $pseudo; $_SESSION["idlogin" . CLEF_SITE] = $id; self::setTestChangerMdp($id, $mdp_nonencrypt, $remember); FlashMessage::setFlash("Vous êtes maintenant connecté", "info"); header("location:{$page_retour}"); } else { FlashMessage::setFlash("Vos identifiants de connexions sont incorrects"); header("location:{$page_retour_err}"); } } }
/** * insertion du super user */ public function setInscrireUtilisateur() { $dbc = App::getDb(); $dbc->insert("pseudo", $this->pseudo)->insert("nom", $this->nom)->insert("prenom", $this->prenom)->insert("mdp", Encrypt::setEncryptMdp($this->mdp))->insert("mdp_params", Encrypt::getParams())->insert("last_change_mdp", date("Y-m-d"))->insert("img_profil", "profil/defaut.png")->insert("img_profil_blog", "profil/defaut_blog.png")->insert("valide", 1)->insert("acces_admin", 1)->insert("liste_droit", 0)->insert("super_admin", 1)->into("identite")->set(); }
/** * fonction quir genere un mot de passe aleatoire pour le compte spécifié en param * @param $id_identite */ public function setReinitialiserMdp($id_identite) { $dbc = \core\App::getDb(); $this->getunUser($id_identite); if ($this->mail != "" || $this->mail != null) { $mdp = ChaineCaractere::random(6); $mdp_encode = Encrypt::setEncryptMdp($mdp, $id_identite); FlashMessage::setFlash("Mot de passe réinitialisé avec succès ! L'utilisateur à reçu un E-mail avec son nouveau mot de passe", "success"); $dbc->update("mdp", $mdp_encode)->update("last_change_mdp", date("Y-m-d"))->from("identite")->where("ID_identite", "=", $id_identite)->set(); $mail = new Mail(); $mail->setEnvoyerMail("Réinitialisation de votre E-mail effectuée", "Votre mot de passe a été réinitialisé", $this->mail); } else { FlashMessage::setFlash("le mot de passe de {$this->pseudo} ne peu pas être réinitialisé car il ne possède pas d'E-mail"); $this->erreur = true; } }