IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Authentification code php [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre confirmé
    Inscrit en
    Août 2009
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 53
    Par défaut Authentification code php
    Salut
    Je suis entrain de rediger un script d'authentification,il parait qu'il y a un probléme mais je sais pas où,même lorsque j'écris les logins et mots de passe correctement je reçois toujours le message d'erreur "Echec d'authentification > login ou mot de passe incorrect".

    Merci d'avance.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    <?php require_once('classconnection.php'); ?>
    <?php
    session_start(); // début de session
    if (isset($_POST['login'])){ // execution uniquement apres envoi du formulaire (test si la variable POST existe)
    	$login = addslashes($_POST['login']); // mise en variable du nom d'utilisateur
    	$pass = addslashes(md5($_POST['pass'])); // mise en variable du mot de passe chiffré à l'aide de md5 
     
    // requete sur la table administrateurs (on récupère les infos de la personne)
    $dbprotect = mysql_pconnect("localhost","root", "") or trigger_error(mysql_error(),E_USER_ERROR); 
    mysql_select_db('conférence', $dbprotect);
    $verif_query=sprintf("SELECT * FROM utilisateurs WHERE login='$login' AND pass='$pass'"); // requête sur la base administrateurs
    $verif = mysql_query($verif_query, $dbprotect) or die(mysql_error());
    $row_verif = mysql_fetch_assoc($verif);
    $utilisateur = mysql_num_rows($verif);
    if ($utilisateur) {	// On test s'il y a un utilisateur correspondant
    		    session_register("authentification"); // enregistrement de la session
    				// déclaration des variables de session
    		$_SESSION['privilege'] = $row_verif['privilege']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
    		$_SESSION['nom'] = $row_verif['nom']; // Son nom
    		$_SESSION['prenom'] = $row_verif['prenom']; // Son Prénom
    		$_SESSION['login'] = $row_verif['login']; // Son Login
    		//$_SESSION['pass'] = $row_verif['pass']; // Son mot de passe (à éviter)
     
    		header("Location:acceuil.php"); // redirection si OK
    	}
    	else {
    		header("Location:authentification.php?erreur=login"); // redirection si utilisateur non reconnu
    	}
    }
     
    // Gestion de la  déconnexion
    if(isset($_GET['erreur']) && $_GET['erreur'] == 'logout'){ // Test sur les paramètres d'URL qui permettront d'identifier un contexte de déconnexion
    	$prenom = $_SESSION['prenom']; 
    	session_unset("authentification");
    	header("Location:authentification.php?erreur=delog&prenom=$prenom");
    }
    ?>
    <html>
    <head>
    <title>AUTHENTIFICATION</title>
    <!--<link href="styles.css" rel="stylesheet" type="text/css">-->
    </head>
    <body background="fnd111.jpg">
    <form action="" method="post" name="connect">
      <p align="center" class="titre"></p>
      <p align="center" class="title">
        <?php if(isset($_GET['erreur']) && ($_GET['erreur'] == "login")) {   // Affiche l'erreur 
    	 ?>
      <h3>  <strong class="erreur" color="black"> Echec d'authentification &gt; login ou mot de passe incorrect</strong></h3>
     
        <?php  }?>
        <?php if(isset($_GET['erreur']) && ($_GET['erreur'] == "delog")) { // Affiche l'erreur ?>
        <h3><strong class="reussite" color="black">D&eacute;connexion r&eacute;ussie... A bient&ocirc;t <?php echo $_GET['prenom'];?> !</strong></h3>
        <?php } ?>
        <?php if(isset($_GET['erreur']) && ($_GET['erreur'] == "intru")) { // Affiche l'erreur ?>
        <strong class="erreur">Echec d'authentification !!! &gt; Aucune session n'est ouverte ou vous n'avez pas les droits pour afficher cette page</strong>
     
        <?php } ?>
      </p>
     
    <br><br><br><br><br><br>
      <table>
     
    	<tr>
             <td height="26" valign="top" bgcolor="#345491"> <div align="left"><img src="../../../Program Files/EasyPHP 2.0b1/www/PFE/fleche.gif" height="23" width="14"></div></td>
                    <td width="205" colspan="4" valign="middle" bgcolor="#345491" class="text_rub"> <div align="center"><span class="Style7">Authentification  <strong> </strong></span></div></td>
                 <td colspan="2" valign="top" bgcolor="#345491"> <div align="right"><img src="../../../Program Files/EasyPHP 2.0b1/www/PFE/carro.gif" height="23" width="16"></div></td>
           </tr>
    	  </table>
     
      <table   >
     
        <tr>
          <td width="237">login &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;
     
          <input name="login" type="text" id="login" onClick="this.value='';" class="textbox"  value="pseudo Miracl" ></td>
        </tr>
        <tr>
          <td >mot de passe
          <input name="pass" type="password" onClick="this.value='';" class="textbox" value="password"  id="pass"></td>
        </tr>
        <tr>
          <td>
            <input type="submit" name="Submit" value="Se connecter">
         </td>
        </tr>
      </table>
     
    </form>
    </body>
    </html>

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Ce n'est pas addslashes qu'il faut utiliser mais mysql_real_escape_string.
    Tu confonds egalement je pense session_register() et session_name().

    Sinon pour ton problème, tu devrais afficher $verif_query pour voir exactement ce que tu executes et voir avec phpmyadmin ce que ca retourne.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre confirmé
    Inscrit en
    Août 2009
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 53
    Par défaut
    Citation Envoyé par sabotage Voir le message
    Ce n'est pas addslashes qu'il faut utiliser mais mysql_real_escape_string.
    Tu confonds egalement je pense session_register() et session_name().

    Sinon pour ton problème, tu devrais afficher $verif_query pour voir exactement ce que tu executes et voir avec phpmyadmin ce que ca retourne.


    Merci pour ta réponse,le probléme était au niveau du md5,ça marche maintenant.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Transcrire code PHP dans une DLL
    Par LEK dans le forum C++
    Réponses: 16
    Dernier message: 26/09/2005, 14h17
  2. Mettre un code php dans une variable...
    Par kedare dans le forum Langage
    Réponses: 6
    Dernier message: 19/09/2005, 12h55
  3. [Conception] Code php dans une base de donnée
    Par krfa1 dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 13/09/2005, 10h58
  4. pb eval pour le code php dans une feuille xslt
    Par nipepsi dans le forum XSL/XSLT/XPATH
    Réponses: 8
    Dernier message: 10/09/2004, 11h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo