Signaler

Formulaire de connexion php mysql avec PDO [Résolu]

Posez votre question samdepanam 14Messages postés jeudi 19 mars 2015Date d'inscription 6 novembre 2017 Dernière intervention - Dernière réponse le 6 nov. 2017 à 14:49 par samdepanam
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
Utile
+0
plus moins
Bonjour,

Commence par appliquer ceci :
http://www.commentcamarche.net/faq/48399-php-gestion-des-erreurs-debogage-et-ecriture-du-code

et ceci :
http://www.commentcamarche.net/faq/46512-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:
http://www.commentcamarche.net/forum/affich-34340900-login-password-php#7



.

samdepanam 14Messages postés jeudi 19 mars 2015Date d'inscription 6 novembre 2017 Dernière intervention - 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!!!!
Répondre
Donnez votre avis

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !