Skip to content

Instantly share code, notes, and snippets.

@ollo-ride-nico
Created September 28, 2017 11:52
Show Gist options
  • Save ollo-ride-nico/47c0b0ca481767418f83520fa675953d to your computer and use it in GitHub Desktop.
Save ollo-ride-nico/47c0b0ca481767418f83520fa675953d to your computer and use it in GitHub Desktop.
public static function connectUser(){
$pseudo = $_POST['pseudo'];
$password = $_POST['password'];
$manager = new UtilisateurManager(DBFactory::getMysql());
try {
//On verifie que l utilisateur est bien inscrit
$user = $manager->verifUserPresent($pseudo);
}
catch (Exception $e){ //Si l' utilisateur n' est pas inscrit, on affiche un message comme quoi l' utilisateur est non inscrit
header('Location: ../index.php?p=connection&erreur=' . $e->getMessage());
}
try {
//Si l'utilisateur est inscrit, on récupère son mot passe haché
if ($user) {
$utilisateur = $manager->recupMotDePasse($pseudo);
}
//On verifie que le mot de passe qu on entre corresponde bien au mot de passe haché de l' utilisateur
if (password_verify($password, $utilisateur['motDePasse'])) {
//Si c'est bon alors on récupère l' utilisateur
$userObject = UtilisateurManager::get($utilisateur['id']);
// On enregistre l'utilisateur dans une session
$session = Session::mySession($userObject);
//On controle si une erreur est passé en get
if (isset($_GET['erreur'])){
$erreur = $_GET['erreur'];
}
else{
$erreur = null;
}
//On renvoie une vue avec les infos de l' utilisateur
return Twig::getTwig()->render('bienvenue.twig', array('session' => $session, [Utilisateur::class], 'erreur' => $erreur,'formulaire' => $form = new ScriptFormulaire()));
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment