Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 6 sur 6
  1. #1
    Invité de passage
    Homme Profil pro
    Étudiant
    Inscrit en
    septembre 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : septembre 2012
    Messages : 9
    Points : 4
    Points
    4

    Par défaut Fenêtre de connexion

    Bonjour,

    Jais une table utilisateur elle contient (num,id,pw,type_utilisateur) et jais une fenetre de connexion et 2 fenetres d’accueils, chaque type d’utilisateur a ca propre fenetre d’accueil
    Dans ma fenetre de connexion jais un champ pour saisie l’id et un pour saisie pw
    Comment faire pour verifier si les informations saisie existe dans ma table et en meme temps verifier le type de compte pour accéder aux fenetres d’accueil?

    Merci

  2. #2
    Rédacteur/Modérateur
    Avatar de SergioMaster
    Homme Profil pro Serge Girard
    Développeur informatique
    Inscrit en
    janvier 2007
    Messages
    5 268
    Détails du profil
    Informations personnelles :
    Nom : Homme Serge Girard
    Âge : 58
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : janvier 2007
    Messages : 5 268
    Points : 9 607
    Points
    9 607

    Par défaut

    en interrogeant la Table , cela parait évident !
    par exemple avec une requête paramètrée

    Code :
    SELECT TYPE_UTILISATEUR FROM UTILISATEUR WHERE ID=:ID AND PWD=:PWD
    comme bien sur vous n'indiquez ni le type de BDD (oserai-je parié que c'est Paradox ) ni les composants de connexion utilisé pour la table (nouveau pari : BDE ) j'attendrais d'en savoir plus .

    une piste : Si le couple id/mdp n'existe pas dans la table le champ TYPE_UTILISATEUR sera Null
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein
    J'entends et j'oublie. Je vois et je me souviens. Je fais et je comprends . Confucius
    Si votre seul outil est un marteau, vous aurez tendance a ne voir que des clous

  3. #3
    Invité de passage
    Homme Profil pro
    Étudiant
    Inscrit en
    septembre 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : septembre 2012
    Messages : 9
    Points : 4
    Points
    4

    Par défaut

    bonjour
    pour la base de données j'utilise sql server et pour les composants de connexion
    (ADOconnection et ADOquery)

  4. #4
    Rédacteur/Modérateur
    Avatar de SergioMaster
    Homme Profil pro Serge Girard
    Développeur informatique
    Inscrit en
    janvier 2007
    Messages
    5 268
    Détails du profil
    Informations personnelles :
    Nom : Homme Serge Girard
    Âge : 58
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : janvier 2007
    Messages : 5 268
    Points : 9 607
    Points
    9 607

    Par défaut

    Ouf , j'ai bien fait de pas jouer au loto

    Code :
    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
     
    var AQ : TAdoQuery;
    ....
    begin
    AQ:=TADOQuery.Create(nil);
    Try
      AQ.Connection:=ADOconnection1;
     AQ := CreateSQL;
      try
        AQ.SQL.BeginUpdate; 
       AQ.SQL.Add('SELECT TYPE_UTILISATEUR FROM UTILISATEUR WHERE ID=:ID AND PWD=:PWD');
    AQ.SQL.EndUpdate;
        AQ.Parameters.ParamByName('ID').value := txtLogin.text;
        AQ.Parameters.ParamByName('PWD').value := txtPassword.text;      AQ.Active:=True;
      If AQ.FieldByName('TYPE_UTILISATEUR').isNull then
         begin
            // traitement erreur user/password  
        end
      else begin
          // identification réussie
      end;   
      AQ.Active:=False;
    finally
      FreeAndNil(AQ);
    end;
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein
    J'entends et j'oublie. Je vois et je me souviens. Je fais et je comprends . Confucius
    Si votre seul outil est un marteau, vous aurez tendance a ne voir que des clous

  5. #5
    Invité de passage
    Homme Profil pro
    Étudiant
    Inscrit en
    septembre 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : septembre 2012
    Messages : 9
    Points : 4
    Points
    4

    Par défaut

    bonsoir
    lors de l'execution jais le message d'erreur suivant ( identificateur non declaré 'CreateSQL')

  6. #6
    Rédacteur/Modérateur
    Avatar de SergioMaster
    Homme Profil pro Serge Girard
    Développeur informatique
    Inscrit en
    janvier 2007
    Messages
    5 268
    Détails du profil
    Informations personnelles :
    Nom : Homme Serge Girard
    Âge : 58
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : janvier 2007
    Messages : 5 268
    Points : 9 607
    Points
    9 607

    Par défaut

    je ne suis pas très fort en ADO (ce n'est pas @buzzleclaire qui dira le contraire ) que je n'utilise pas j'ai peut être oublié un :

    AQ.SQL:= AQ.CreateSQL;

    la partie
    Code :
    1
    2
    3
    4
    5
    6
     AQ := CreateSQL;
      try
        AQ.SQL.BeginUpdate;
    ...
        AQ.SQL.EndUpdate;   
      end;
    je l'ai péché sur le net en cherchant de l'aide sur ADO car je sais que ceux_ci ont des particularités , avec des composants (BDE,ZEOS,DBExpress) je ne me serais pas embêter de la sorte

    essayez donc ceci (ce qui était ma première idée , avant de chercher cette fameuse aide)
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    var AQ : TADOQuery;
    ....
    begin
    AQ:=TADOQuery.Create(nil);
    Try
      AQ.Connection:=Connection1;
       AQ.SQL.Add('SELECT TYPE_UTILISATEUR FROM UTILISATEUR WHERE ID=:ID AND PWD=:PWD');
        AQ.Parameters.ParamByName('ID').value := txtLogin.text;
        AQ.Parameters.ParamByName('PWD').value := txtPassword.text;
        AQ.Active:=True;
      If AQ.FieldByName('TYPE_UTILISATEUR').isNull then
         begin
            // traitement erreur user/password  
        end
      else begin
          // identification réussie
      end;   
      AQ.Active:=False;
    finally
      FreeAndNil(AQ);
    end;
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein
    J'entends et j'oublie. Je vois et je me souviens. Je fais et je comprends . Confucius
    Si votre seul outil est un marteau, vous aurez tendance a ne voir que des clous

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

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •