Problemme pour utulise les utulisateur dans un logciel vb [Résolu]

Signaler
Messages postés
20
Date d'inscription
mardi 30 avril 2013
Statut
Membre
Dernière intervention
6 novembre 2016
-
Messages postés
20
Date d'inscription
mardi 30 avril 2013
Statut
Membre
Dernière intervention
6 novembre 2016
-
aide moi svp un problemme avec viseul basic 6



Bonjour,

je cree un programme sous vb qui lie une base de donnais

les utulisateur est crée selon la strategie que je vuex mais
lorsque je veux entre sur le programme il me dis que acun utulisateur
avec ce donnais voila le code source de FROM login

'coonecte in root

Private Sub Command1_Click()

If Text1 = "" Then

MsgBox " Sorry,enter le nom utulisateur(login)", vbCritical + vbMsgBoxRight, " Error login"

Exit Sub

End If

If Text2 = "" Then

MsgBox "sorry,enter le mot de passe (password)", vbCritical + vbMsgBoxRight, "error password"

Exit Sub

End If
SQLs "Select * From utulisateur Where login ' " & Text1 & " ' And password = ' " & Text2 & " ' "

If RS.State = adStateOpen Then RS.Close

RS.Open SQLs, DB, adOpenKeyset, adLockPessimistic

If RS.EOF Then

MsgBox " Sorry, aucun utulisateur avec ce login ! ", vbCritical + vbMsgBoxRight, " Error Login "

Exit Sub

Else

login = Text1

Password = Text2

Set RS = Nothing

Set DB = Nothing

MDIForm1.Show

Unload Me

End If

End Sub

Private Sub Command2_Click()

Unload Me

End Sub

------'FROM LOADE

Private Sub Form_Load()

PoolConnection

End Sub

Private Sub text1_Keypress(keyKeyAscii As Integer)

If keyascii = 13 Then

Text2.SetFocus

End If

End Sub

Private Sub text2_keyp

17 réponses

Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
39
salut,

logiquement tu as un seul utilisateur (un nom, un mot de passe)
donc tu peux très bien être en EOF et quand même avoir un résultat

2e possibilité : tu n'as en effet pas de résultat, parce que ta table s'appelle utilisateur, par exemple ...

<hr size="2" width="100%" />
Prenez un instant pour répondre à [sujet-SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp 
Messages postés
20
Date d'inscription
mardi 30 avril 2013
Statut
Membre
Dernière intervention
6 novembre 2016

mais comment faire pour que le curseur  nommée RS soit dans le première linge et vérifié si l'utilisateur exit dans la base de donnais

répondre vite c urgente merci
c mon projet de fini d'étude il faut que je le pose demain
merci beaucoup
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
39
RS est un recordset, pas un curseur
le curseur pointe déjà le premier enregistrement s'il y en a, à toi donc de regarder s'il y en a... (recordcount)

PS : pressé ou pas, fait un effort pour écrire correctement stp, pas amusant de devoir te "traduire"...
Messages postés
20
Date d'inscription
mardi 30 avril 2013
Statut
Membre
Dernière intervention
6 novembre 2016

salut je suis vraiment désole si j' écrit pas correctement
est ce que tu peux m"aide sur ce problème car mais je suis un débutant j'arrive a ressoude le problème
lorsque je connecte avec mon problème il m'affichez
 

If RS.EOF Then
MsgBox " Sorry, aucun utulisateur avec ce login ! ", vbCritical + vbMsgBoxRight, " Error Login "
 

est ce que le curseur et dans la derniere line comment je peux faire pour que le programme verifie la valeur saisir dans le champ LOGIN

aide moi stp c mon msn drknow@windowslive.com

merci
 
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
39
EOF renvoie un boolean = > END OF FILE
tu testerais BOF çà serait pareil => BEGIN OF FILE

un peu de lecture :

<hr size="2" width="100%" />


Description

BOF — returns a value that indicates whether the current record position is before the first record in a Recordset object.
EOF — returns a value that indicates whether the current record position is after the last record in a Recordset object.
Return Values

The return values for the BOF and EOF properties are Boolean values.

The BOF property returns True if the current record position is before the first record, and False if the current record position is on or after the first record.

The EOF property returns True if the current record position is after the last record, and False if the current record position is on or before the last record.




<hr size="2" width="100%" />


ici tu es bien sur le premier enregistrement, mais il est à la fois le début et la fin puisqu'il n'y a qu'un seul enregistrement possible

tu ne dois donc pas tester EOF, comme je te l'ai dit avant, mais tester le nombre d'enregistrement
0 => n'existe pas
1 => existe !

c'est donc RS.recordcount

une autre possibilité est de faire une requête COUNT, avec une utilisation similaire...
ce qui donne :






Private Sub 
Command1_Click()

    If Text1.Text  = "" Then
        MsgBox "Please set a valid username", vbCritical Or vbMsgBoxRight, "Error
login"
    ElseIf Text2.Text = "" Then
        MsgBox "Please set a valid password", vbCritical Or vbMsgBoxRight, "Error
password"
    Else
        Dim sSQL As String
        sSQL = "SELECT COUNT(*) " & _
               "FROM
utilisateur " & _
               "WHERE login = '" & Text1.Text & "'" & _
               "AND password
= '" & Text2.Text & "';"
               
        If RS.State = adStateOpen Then RS.Close
        RS.Open sSQL, DB, adOpenKeyset, adLockPessimistic
        If RS.fields(0).Value = 0 Then
            MsgBox "Sorry, no user matchs !
", vbCritical Or vbMsgBoxRight, "Identification failure"
        Else
            login = Text1 '????
            Password = Text2 '????
            RS.Close
            Set RS = Nothing
            Set DB = Nothing
            MDIForm1.Show
            Unload Me
        End If
    End If
End If





<small>
[../code.aspx?ID=39466 Coloration VB6, VBA,
VBS]
</small>






NB : fait rapidement mais pas testé, tu as de quoi comprendre, appliquer, et même coller
Messages postés
20
Date d'inscription
mardi 30 avril 2013
Statut
Membre
Dernière intervention
6 novembre 2016

merci mais cette fois il entre dans le programme mais dans le statu il n'a aucun nom de utilisateur et aucun rôle
et si je clique sur une bouton il me demande d'enregistrer

je suis vraiment désole mais pour le dérangement tu peux ajoute mon adresse sur msn c drknow@windowslive.com
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
39
il entre dans le prog, puisque tu as copié collé.
cool

et maintenant, quel est ton code pour afficher ces informations dans le statut?...

bin ouai sans code c'est plus difficile....
ou en fermant les yeux très très fort peut-être!!

à toi de jouer
ps : msn? non merci
Messages postés
20
Date d'inscription
mardi 30 avril 2013
Statut
Membre
Dernière intervention
6 novembre 2016

 voila c'est le code pour qu'il affiche les information sur les droit a ce utulisateur mais est ce que tu peux me dire comment peut faire pour le utulisateur qui entre aux programme sont psedou s'ajoute a labal
merci

Private Sub MDIForm_Load()

' Show GRANT
mygrant
' View Grant
lblgrant.Caption = " Rols : " + add + " " + edit + " " + gprint + " " + create

' View User
StatusBar1.Panels(5).Text = " login : " + login

End Sub
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
39
où est déclarée LOGIN ??
Messages postés
20
Date d'inscription
mardi 30 avril 2013
Statut
Membre
Dernière intervention
6 novembre 2016

le login est declare dans le module
 est  ce que tu  veux que je upload le programme sur un site ??
merci beauceoup je suis vraiment désole chez frere merci
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
39
"il est dans un module", donc je dois deviner comment tu as fait ta déclaration?.....

soit pas désolé, soit réactif.
ton problème a eu sa solution dès ma première réponse, on a continué à échanger jusqu'à ce que tu n'aies qu'un copier/coller à faire

c'est maintenant une autre question, il est largement temps que tu t'y colles non?!!

le login est dans le module ouai, super....
et la form dans le projet, çà nous aide

dernier indice :
dans la form1 (je suppose), avant d'afficher la mdi, écrit ceci :
MDIForm1.Caption = Text1.text
Messages postés
20
Date d'inscription
mardi 30 avril 2013
Statut
Membre
Dernière intervention
6 novembre 2016

Public DB As New ADODB.Connection
Public RS As New ADODB.Recordset
Public Rss As New ADODB.Recordset
Public SQLs As String
Public login As String
Public Password As String

MDIForm1.Caption = Text1.text
il me dis q'un objet requise

NB caption ca change le nom de la midi1from1 ??
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
39
tu n'as pas copié mon code au bon endroit (je suppose)
Messages postés
20
Date d'inscription
mardi 30 avril 2013
Statut
Membre
Dernière intervention
6 novembre 2016

je metre ton code dans la from MIDIFROM1
c'est sont emplacment et meme si je ajoute un text1 il n'affiche rien dans ce text

je veux que cette login affiche dans la status bar

merci
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
39
dans la form1
(je suppose), avant d'afficher la mdi, écrit ceci :
Messages postés
20
Date d'inscription
mardi 30 avril 2013
Statut
Membre
Dernière intervention
6 novembre 2016

from1 je ne comprend rien mon pote la
Messages postés
20
Date d'inscription
mardi 30 avril 2013
Statut
Membre
Dernière intervention
6 novembre 2016

c'est fait mais toujours il n'a aucun role ? je connecte avec admin mais aucun role n'ai detecte