Formulaire de connexion php mysql avec PDO

Résolu/Fermé
samdepanam Messages postés 18 Date d'inscription jeudi 19 mars 2015 Statut Membre Dernière intervention 1 octobre 2019 - Modifié le 3 nov. 2017 à 16:19
samdepanam Messages postés 18 Date d'inscription jeudi 19 mars 2015 Statut Membre Dernière intervention 1 octobre 2019 - 6 nov. 2017 à 14:49
Bonjour, je travaille actuellement sur un site dans le but de diversifié mes connaissances sur la programmation et j'aimerais crée un espace administrateur verrouillé dans mon site.
j'ai donc crée une BD simple avec id, login et password ainsi qu'un formulaire de connexion. j'ai dans un premier temps utilisé mysql pour pouvoir me connecter a la bd et authentifier l'admin or cette fonction de mysql ne fonctionne plus depuis la version 5.5, il m'a été recommander de passer soit pas mysqli soit PDO, j'ai opter pour cette dernière mais je n'arrive pas a sécuriser ma partie admin car meme en mettant un faut mot de passe et et une faux login j'arrive a y accéder ce qui est problématique.

je joint a mon message mon code

<?php
        
session_start();

$pdo = new PDO('mysql:host=localhost;dbname=burgercode', 'root', 'root', array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8'));


if(isset($_POST['submit'])){
        $login = $_POST['login'];
        $mdp = $_POST['mdp'];
          
            $query = $pdo->prepare("SELECT * FROM admin WHERE login='$login' AND mdp='$mdp'");
            $query->execute();

              $_SESSION['login'] = $login;
              header('Location: admin/index.php');
            }else echo "Pseudo ou password incorrect";



?>



<!DOCTYPE html>
<html >
  <head>
    <meta charset="UTF-8">
    <title>login</title>

        <link rel="stylesheet" href="css/login.css">
    
  </head>

  <body>

    <div class="login">
  <div class="heading">
    
                
                <h4>Veuillez renseigner votre identifiant et mot de passe.</h4><br>
    <form action="" method="post">

      <div class="input-group input-group-lg">
        <span class="input-group-addon"><i class="fa fa-user" style="color:grey"></i></span>
        <input name="login" type="text" class="form-control" placeholder="identifiant">
          </div>

        <div class="input-group input-group-lg">
          <span class="input-group-addon"><i class="fa fa-lock" style="color:grey"></i></span>
          <input name="mdp" ="" type="password" class="form-control" placeholder="Mot de passe">
        </div>

        <button type="submit" name="submit" class="float">Connexion</button>
       </form>
   </div>
 </div>
    
    
    
    
  </body>
</html>







Merci d'avance pour votre aise

1 réponse

jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
3 nov. 2017 à 16:35
Bonjour,

Commence par appliquer ceci :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code

et ceci :
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs

Ensuite... pense à récupérer le résultat de ta requête (via un fetchAll) par exemple pour pouvoir t'assurer qu'elle a retourné quelque chose ou non.

Et enfin... pense à encoder tes password.

Dans l'idéal, la gestion de la connexion se fait comme ceci:
https://forums.commentcamarche.net/forum/affich-34340900-login-password-php#7



.

0
samdepanam Messages postés 18 Date d'inscription jeudi 19 mars 2015 Statut Membre Dernière intervention 1 octobre 2019
6 nov. 2017 à 14:49
salut Jordan45 et merci de ton aide, j'ai pu corriger mes erreurs grâce à toi !!!!!!

ça fonctionne à présent!!!!
0