Variable public garde la méme valeur

fatma -  
f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   -
bonjour,
j'ai un problème de renouvellement de connexion.
j'ai deux formes
dans la forme 1( frmlogin)j'ai un variable public
Public niveau
dans la forme 2( frmglobale) on a recuperation de variable public

Private Sub Form_Load()

If frmlogin.niveau = 1 Then
cmdadmin.Enabled = False
cmdchanger.Enabled = False

Else
If frmlogin.niveau = 2 Then
cmdadmin.Enabled = False
cmdchanger.Enabled = False
cmdcrea.Enabled = False
cmdevolution.Enabled = False
cmddemandederog.Enabled = False

End If
End If

End Sub

ça marche

si j'ai déconnecté

frmlogin.Show
frmglobale.Hide

lors de deuxième connexion j'ai modifiée les donnes.
l'application affiche l'ancienne variable public .
merci d'avence

3 réponses

  1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Bonjour,

    Faudrait montrer le code de frmlogin
    0
  2. fatma
     
    bonjour,
    mon code (from login) est la suite:

    Dim Baseaccess As Connection

    Dim Recconnexion As Recordset
    Public niveau

    Private Sub Cmdvalider_Click()
    Set Recconnexion = New Recordset
    Recconnexion.Open "SELECT * from Utilisateur where Identifiant='" & txtlogin.TEXT & "'", Baseaccess, adOpenStatic, adLockOptimistic

    If Recconnexion.EOF = False Then
    If (txtmotdepasse = Recconnexion.Fields("mot_de_passe")) Then

    niveau = New Recordset
    niveau = Recconnexion.Fields("Niveau")
    Text1.TEXT = niveau
    frmglobale.Show vbModeless
    frmlogin.Hide

    frmmotdepasse.Command1.Caption = Recconnexion.Fields("Identifiant")
    frmmotdepasse.Command2.Caption = Recconnexion.Fields("Nom_Prénom")
    frmmotdepasse.Command3.Caption = Recconnexion.Fields("Niveau")
    frmcreation1.txtid.TEXT = Recconnexion.Fields("Nom_Prénom")
    frmevolution1.cmdid.Caption = Recconnexion.Fields("Nom_Prénom")

    Else

    MsgBox "Erreur : Mot de passe incorrecte.Veuillez ressaisir", 16, "Connexion"
    txtlogin = ""
    txtmotdepasse = ""
    txtlogin.SetFocus
    End If

    Else
    MsgBox "Erreur : Login incorrecte.Veuillez ressaisir", 16, "Connexion"
    txtlogin = ""
    txtmotdepasse = ""
    txtlogin.SetFocus
    End If

    End Sub
    merci d'avancer
    0
  3. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Re,

    frmGlobale:
    vu que vous prenez l'evenement Form_Load, il faut utiliser Unload Me pour la sortie de cette frm.

    si vous aviez utilise l'evenement Form_Activate alors ME.Hide serait Ok. Le .hide fait que la form est toujours en memoire, donc le pointeur de programme ne repasse pas dans l'evenement from_Load vu que la form n'a pas ete "unloadee"(dechargee de la memoire)
    0