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 :

Erreur d'identification introuvable [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2012
    Messages : 4
    Points : 3
    Points
    3
    Par défaut Erreur d'identification introuvable
    bonjour :)

    je ne peux pas trouver le problème :( quelqu'un peut m'aider s'il vous plaît
    voici le code

    verification.php

    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
    <? session_start();?>
    <?php
    $var1=$_REQUEST['nom']; 
    $var2=$_REQUEST['Mot_pass'];
     
    $connex=mysql_connect("localhost","root","")or die (" not connect".mysql_error());
    $connex_db=mysql_select_db("QCM",$connex) or die (" not selected".mysql_error());
     
    /*$reql = "SELECT 'statut' FROM 'personne' "; */
     $res1=mysql_query( "SELECT * FROM personne WHERE nom_per = '$var1' OR mot_de_passe = '$var2'") or die("Erreur SQL !".mysql_error());
     
    // on fait une boucle qui va faire un tour pour chaque enregistrement  
      if($var2!=$_POST['Mot_pass'] || $var1!=$_POST['nom'] )
    	    include('authentification.php');
     
          else if($res1== "Prof" )
    			include("enseignant.html");
    		else
                {
    			  header("location:etudient.php");
    			  exit;
    			}
    ?>
    authentification.php

    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
     
    <? session_start();?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>authentification</title>
    <link href="style.css" rel="stylesheet" type="text/css" />
    </head>
     
    <body id="accueil">
    <!--  top -->
    <div id="top">
     <a href="enseignant.php" title='QCM.php'>
     	<img src="3.jpg" height="100" width="200"/>
     </a>
    </div>
     
    <!--  conatainer -->
    <div id="container">
    	<!--  left -->
    	<div id='left' style="margin-bottom:10px;">
         	<h1 align="center"> Inscrivez vous </h1>
            <form  method='POST' action='<?php print $_SERVER['PHP_SELF']?>'>
               <table class="c1">
                  <tr><td>Nom:</td><td><input type='text' name='nom'></tr></td>
                  <tr><td>Mot de pass:</td><td><input type='password' name='Mot_pass'></tr></td>	 
               </table>
               <table class="c3">
                <tr><td class="c2"><input type='submit' name='connexion' value='connexion' action="verification.php"></td></tr>
                </table>
            </form>
        </div>
     
    </div>
    </body>
    </html>
    lors d'identification : si l'identifiant est un prof ou bien est un eleve a chaque fois l'interface eleve s'execute

  2. #2
    Membre averti
    Avatar de sweetasnz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2012
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Nouvelle-Zélande

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mars 2012
    Messages : 212
    Points : 375
    Points
    375
    Par défaut
    on fait une boucle qui va faire un tour pour chaque enregistrement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    if($var2!=$_POST['Mot_pass'] || $var1!=$_POST['nom'] )
         include('authentification.php');
     
    else if($res1== "Prof" )
         include("enseignant.html");
    else
    {
         header("location:etudient.php");
         exit;
    }
    ?>
    lors d'identification : si l'identifiant est un prof ou bien est un eleve a chaque fois l'interface eleve s'execute

    Salut, je ne suis pas spécialiste PHP mais
    tu devrais regarder ce que ta variable $res1 te renvoie, il semble que ton problème vient de ta condition if/else qui n'est pas respectée lorsque $res1=="Prof" et donc te renvoie vers le else correspondant à "etudiant"
    Peut être simplement un problème de "casse" (minuscule/majuscule) et/ou 'simple quote' vs "double quote" dans ton if statement

  3. #3
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2012
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    condition pour vérifier le statut prof ou bien eleve
    quant l'utilisateur saisie sont nom et mot de passe, requette 1 va s'executer ($res1) pour selectionner le statut et puis tester

    si $var1 =="Prof" => interface enseignant
    sinon si $var1=="Elève" => interface élève

    sinon retour pour faire l'inscription
    voici la table dans ma BD:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    id_per    nom_per      mot_de_passe    statut    mail
    11        med ami      123             Elève     aaaa
    12        sami         1234            Elève     aaa@aaa
    123       med          123             Elève     aaaa@aaa
    1234      amin         123             Elève     aa@aaa.ee
    12345     med          123             Elève     aaaa
    13        amir         123123          Prof      aaaa@aaaa
    14        bach         1212            Prof      aaaa@rrrrr
    merci

  4. #4
    Membre averti
    Avatar de sweetasnz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2012
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Nouvelle-Zélande

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mars 2012
    Messages : 212
    Points : 375
    Points
    375
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $res1=mysql_query( "SELECT * FROM personne WHERE nom_per = '$var1' OR mot_de_passe = '$var2'")

    Je n'avais pas vu, mais, ce ne serait pas plutôt "statut" que ta requête devrait récupérer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $res1=mysql_query( "SELECT statut FROM personne WHERE nom_per = '$var1' OR mot_de_passe = '$var2'")

  5. #5
    Membre expert
    Avatar de ericd69
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    1 919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 919
    Points : 3 295
    Points
    3 295
    Billets dans le blog
    1
    Par défaut
    salut,

    si c'est bien ça le problème, d'où le fait d'éviter d'utiliser * sauf dans des cas très précis...

    par contre je vois pas pourquoi tu utilises un coup un include puis une redirection php via header selon le profil...
    soyons pensez à mettre quand votre problème est résolu ou à utiliser pour les réponses pertinentes...
    ne posez pas de problématique soi-disant simplifiée sur des problèmes que vous n'êtes pas capable de résoudre par respect pour ceux qui planchent dessus... sinon: et à utiliser pour insérer votre code...

  6. #6
    Membre averti
    Avatar de sweetasnz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2012
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Nouvelle-Zélande

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mars 2012
    Messages : 212
    Points : 375
    Points
    375
    Par défaut
    je crois que ton problème est résolu, donc pense à mettre "résolu" en bas à droite

  7. #7
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2012
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    j'ai essayé de mettre "statut" ou * mais ça marche pas , alors j'ai ajouter du java script

  8. #8
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2012
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    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
     
    <?php
    if(isset($_POST['connexion'])){
    	$connex=mysql_connect("localhost","root","")or die (" not connect".mysql_error());
    	$connex_db=mysql_select_db("QCM",$connex) or die (" not selected".mysql_error());
     	$req=mysql_query("SELECT * FROM personne WHERE nom_per = '".$_POST['nom']."' AND mot_de_passe = '".$_POST['Mot_pass']."'") or die("Erreur SQL !".mysql_error());
    	$res=mysql_fetch_array($req);
    	if(mysql_num_rows($req)!=0){
    		$status=$res['statut'];
    		if($status == "Prof"){
    			?><script>window.location="enseignant.html"</script><?php
    		}else{
    			?><script>window.location="etudient.php"</script><?php
    			}
    	  }else{
    		?><script>alert("nom ou mot de passe incorect !!")</script><?php
    		}
    }
     ?>

  9. #9
    Membre expert
    Avatar de ericd69
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    1 919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 919
    Points : 3 295
    Points
    3 295
    Billets dans le blog
    1
    Par défaut
    pourquoi tu inclus pas juste le code php de l'une ou de l'autre page dans ton if?

    au passage tu gères pas le cas ou l'identification ne marche pas
    soyons pensez à mettre quand votre problème est résolu ou à utiliser pour les réponses pertinentes...
    ne posez pas de problématique soi-disant simplifiée sur des problèmes que vous n'êtes pas capable de résoudre par respect pour ceux qui planchent dessus... sinon: et à utiliser pour insérer votre code...

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

Discussions similaires

  1. erreur de syntaxe introuvable
    Par salseropom dans le forum C
    Réponses: 8
    Dernier message: 01/03/2007, 16h00
  2. Erreur execution dll introuvable
    Par hegros dans le forum Autres éditeurs
    Réponses: 4
    Dernier message: 22/12/2006, 09h40
  3. Erreur de logique introuvée
    Par gorgonite dans le forum Prolog
    Réponses: 5
    Dernier message: 28/09/2006, 15h20
  4. [Erreur] E1026 Fichier introuvable : 'xxx.dfm'
    Par richard038 dans le forum Langage
    Réponses: 4
    Dernier message: 18/01/2006, 14h47
  5. [C#] Erreur User.IsInRole introuvable
    Par mahboub dans le forum ASP.NET
    Réponses: 2
    Dernier message: 08/12/2005, 21h53

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