Partage
  • Partager sur Facebook
  • Partager sur Twitter

Formulaire de connexion géré par Javascript

Anonyme
    13 août 2018 à 17:05:16

    Bonjour, j'ai créé un formulaire de connexion simple, nom d'utilisateur/e-mail avec mot de passe et j'aimerais exécuter le script PDO (page PHP) gérant les sessions lorsque l'on clique sur le bouton connexion sans être redirigé vers la page PHP donc exécuté directement sur la page sans redirection, je voulais savoir si cela pouvait être possible. L'intérêt étant de pouvoir afficher des messages d'erreur en Javascript tout en limitant les redirections. Merci pour vos futures réponses.

    Formulaire HTML:

    <form id="form" action="pdo/login.php" method="post">
           <a href="signup"><img href="#signup" id="newaccounticon" style="margin-right:5%;" src="../icon/newaccounticon.png"/></a>
                      <input src="../icon/loginicon.png" type="image" value="submit" class="loginbutton">
                      <div class="form" style="display:block;">
                      <div id="formconnection"><input type="password" id="password" name="password" placeholder="Mot de passe" tabindex="2"></div> 
                      <div id="formconnection"><input type="text" id="username" name="username" placeholder="Nom d\'utilisateur" style="margin-right:1%;" maxlength="15" tabindex="1" onkeydown="if(event.keyCode==32) return false;"></div></div>
                  </form>

    Gestion des sessions (login.php):

    include 'bdd.php';
    
    $username = htmlspecialchars($_POST['username']);
    $password = htmlspecialchars($_POST['password']); 
    
    if(isset($_POST["username"]) && isset($_POST["password"])){
    	$request = $bdd->prepare('SELECT username, password FROM user WHERE username = ?');
        $request->execute(array($username));
        $data = $request->fetch();
    	$hash = $data['password'];
    	
    	$correctPassword = password_verify($password, $hash);
    	
    	if( $correctPassword ){
             session_start ();
             $_SESSION['username'] = $_POST['username'];
             $_SESSION['password'] = $_POST['password'];
             header ("Location: $_SERVER[HTTP_REFERER]" );
    	} else {
            header ("Location: $_SERVER[HTTP_REFERER]" );
    	}
    }




    -
    Edité par Anonyme 13 août 2018 à 17:10:23

    • Partager sur Facebook
    • Partager sur Twitter
      13 août 2018 à 17:12:59

      Bonjour,

      Pas comme ça, il faudrait utiliser Ajax. Mais franchement, ça n'a pas grand intérêt. Et il ne faut pas utiliser htmlspecialchars ici, c'est pour l'affichage.

      • Partager sur Facebook
      • Partager sur Twitter

      Formulaire de connexion géré par Javascript

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown