Programmation VB6
Résolu/Fermé
muslim_a
Messages postés
16
Date d'inscription
mercredi 6 janvier 2010
Statut
Membre
Dernière intervention
12 juin 2010
-
1 mai 2010 à 12:53
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 - 2 mai 2010 à 00:29
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 - 2 mai 2010 à 00:29
est ce que quelqu'un peut me corriger ce bout de code svp
resultatADO.Open "SELECT motDePasse FROM employé where login = " & Text2.Text, connectionADO
j'arrive pas à faire telle requête :(
Merci!
resultatADO.Open "SELECT motDePasse FROM employé where login = " & Text2.Text, connectionADO
j'arrive pas à faire telle requête :(
Merci!
A voir également:
- Programmation VB6
- Vb6 - Télécharger - Divers Utilitaires
- Application de programmation - Guide
- Programmation logo tortue télécharger - Télécharger - Études & Formations
- Programmation binaire - Guide
- Programmation envoi sms - Guide
9 réponses
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
1 mai 2010 à 12:56
1 mai 2010 à 12:56
Bonjour,
Essaies en faisant:
;o)
Essaies en faisant:
resultatADO.Open "SELECT motDePasse FROM employé where login = ' " & Text2.Text & " ' ", connectionADO
;o)
muslim_a
Messages postés
16
Date d'inscription
mercredi 6 janvier 2010
Statut
Membre
Dernière intervention
12 juin 2010
7
1 mai 2010 à 14:50
1 mai 2010 à 14:50
j'ai une erreur là au niveau de ma boucle while que mon programme ne peut aborder,j'ai testé même en incluant un msgbox tout juste apres le do while mais ça n'a pas marché,est ce que vous pouvez m'aider svp et me preciser l'erreur
resultatADO.Open "SELECT motDePasse FROM employé where login = ' " & Text2.Text & " ' ", connectionADO
Do While Not (resultatADO.EOF)
ch = resultatADO.GetString(0)
If ch = Text4.Text Then
form1.Show
Me.Hide
trouve = True
End If
Loop
If trouve = False Then
MsgBox "veuillez verifier vos paramêtres"
resultatADO.Open "SELECT motDePasse FROM employé where login = ' " & Text2.Text & " ' ", connectionADO
Do While Not (resultatADO.EOF)
ch = resultatADO.GetString(0)
If ch = Text4.Text Then
form1.Show
Me.Hide
trouve = True
End If
Loop
If trouve = False Then
MsgBox "veuillez verifier vos paramêtres"
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
1 mai 2010 à 14:54
1 mai 2010 à 14:54
Avant la boucle il faut faire:
Et juste avant le Loop
Sinon tu boucles toujours sur le même enregistrement
;o)
resultatADO.MoveFirst
Et juste avant le Loop
resultatADO.MoveNext
Sinon tu boucles toujours sur le même enregistrement
;o)
muslim_a
Messages postés
16
Date d'inscription
mercredi 6 janvier 2010
Statut
Membre
Dernière intervention
12 juin 2010
7
1 mai 2010 à 15:05
1 mai 2010 à 15:05
y'a un problème au niveau de resultatADO.MoveFirst
voilà ma procedure:
Private Sub Command2_Click()
Dim form1 As New Employé
Dim ch As String
Dim trouve As Boolean
trouve = False
Dim connectionADO As New ADODB.Connection
Dim commandeADO As New ADODB.Command
Dim resultatADO As New ADODB.Recordset
connectionADO.Provider = "Microsoft.jet.OLEDB.4.0"
connectionADO.ConnectionString = "E:\projetVB1.mdb"
connectionADO.Open
resultatADO.Open "SELECT motDePasse FROM employé where login = ' " & Text2.Text & " ' ", connectionADO
resultatADO.MoveFirst
Do While Not (resultatADO.EOF)
If resultatADO.GetString(0) = Text4.Text Then
form1.Show
Me.Hide
trouve = True
End If
Loop
resultatADO.MoveNext
If trouve = False Then
MsgBox "veuillez verifier vos paramêtres"
Text2.Text = ""
Text4.Text = ""
End If
resultatADO.Close
connectionADO.Close
End Sub
Merci pour votre aide
voilà ma procedure:
Private Sub Command2_Click()
Dim form1 As New Employé
Dim ch As String
Dim trouve As Boolean
trouve = False
Dim connectionADO As New ADODB.Connection
Dim commandeADO As New ADODB.Command
Dim resultatADO As New ADODB.Recordset
connectionADO.Provider = "Microsoft.jet.OLEDB.4.0"
connectionADO.ConnectionString = "E:\projetVB1.mdb"
connectionADO.Open
resultatADO.Open "SELECT motDePasse FROM employé where login = ' " & Text2.Text & " ' ", connectionADO
resultatADO.MoveFirst
Do While Not (resultatADO.EOF)
If resultatADO.GetString(0) = Text4.Text Then
form1.Show
Me.Hide
trouve = True
End If
Loop
resultatADO.MoveNext
If trouve = False Then
MsgBox "veuillez verifier vos paramêtres"
Text2.Text = ""
Text4.Text = ""
End If
resultatADO.Close
connectionADO.Close
End Sub
Merci pour votre aide
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
1 mai 2010 à 15:13
1 mai 2010 à 15:13
Tu es bien en VB6 ?
Essaie avec ça:
Essaie avec ça:
If resultatADO.Fields(0) = Text4.Text Then
muslim_a
Messages postés
16
Date d'inscription
mercredi 6 janvier 2010
Statut
Membre
Dernière intervention
12 juin 2010
7
1 mai 2010 à 15:18
1 mai 2010 à 15:18
sa ne marche toujours pas
même si je suis débutante mais j'ai programmé cette première etape de mon projet avec vb2008 et ça a marché nikel,mais apres on m'a exigé le vb6...ça marche vraiment pas avec celui là :s
même si je suis débutante mais j'ai programmé cette première etape de mon projet avec vb2008 et ça a marché nikel,mais apres on m'a exigé le vb6...ça marche vraiment pas avec celui là :s
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
1 mai 2010 à 15:20
1 mai 2010 à 15:20
Ok, je vais regarder ça de plus près
muslim_a
Messages postés
16
Date d'inscription
mercredi 6 janvier 2010
Statut
Membre
Dernière intervention
12 juin 2010
7
1 mai 2010 à 15:24
1 mai 2010 à 15:24
ok,merci infinément
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
1 mai 2010 à 21:18
1 mai 2010 à 21:18
Voilà un code à placer dans un nouveau module. Tu renommes le module en ModBdd :
Sur le bouton du formulaire :
Reviens ici si tu as un problème
;o)
'===========================================' ' Connexion ADODB ' '-------------------------------------------' ' Module Base de données ' ' ' ' Auteur : Polux31 - 2003 ' ' E-mail : ############## ' '===========================================' '/////////////////////////////////////////////////////////////// '// NE PAS OUBLIER DE COCHER DANS PROJET --> REFERENCES ... '// Microsoft ActiveX Data Objects x.x Library '/////////////////////////////////////////////////////////////// Option Explicit '/////////////////////////////////' '// Variables globales du module '/////////////////////////////////' Private AdoCnx As ADODB.Connection Private CmdSql As ADODB.Command Private NbRs As Long '////////////////////////////////' '// Constantes à modifier selon le '// le cas d'utilisation '///////////////////////////////' Private Const BDD = "E:\projetVB1.mdb" ' mettre le chemin de la base Private Const pw = "" ' mettre le mot de passe Private Const user = "" ' mettre le user '////////////////////////////////////// '// Accesseurs des variables globales '////////////////////////////////////// 'procédure qui stocke le nombre d'enregistrement dans le recordset Public Sub setNbRs(ByVal nb As Integer) NbRs = nb End Sub 'fonction qui retourne le nombre d'enregistrement dans le recordset Public Function getNbRs() As Long getNbRs = NbRs End Function 'fonction qui retourne la connexion Public Function getAdoCnx() As ADODB.Connection getAdoCnx = AdoCnx End Function '////////////////////////////////// '// Méthodes du module '////////////////////////////////// 'procédure de connexion à la base de donnée Public Sub ConnectBdd() Dim CnxString As String Set AdoCnx = New ADODB.Connection 'création de l'objet connexion If AdoCnx.State = adStateOpen Then 'si la base est déjà ouverte alors on sort de la procédure MsgBox "La connection est déjà ouverte" Exit Sub End If '======== Ouverture Access ============' ' A modifier pour autres bases ' '======================================' CnxString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=" & BDD & ";" & _ "user ID=" & user & ";" & _ "password=" & pw & ";" & _ "Persist Security Info=False" AdoCnx.Open CnxString 'passage de la chaine de connexion AdoCnx.CursorLocation = adUseClient On Error Resume Next If Err <> 0 Or AdoCnx.State = adStateClosed Then 'si un erreur de connexion se produit MsgBox "Connection impossible avec la base" Exit Sub End If End Sub 'fonction qui retourne un booléen. 'Paramètres entrées : la requête, l'objet recordset 'Passe la requête à la base de données et récupère le résultat dans le recordset Public Function OpenRecordset(ByVal Requete As String, ByRef rs As ADODB.Recordset) As Boolean On Error Resume Next On Error Resume Next rs.Open Requete, ModBdd.AdoCnx, , , adCmdText 'passage de la requête If Err > 0 Then 'en cas d'erreur la fonction retourne Faux et on sort de la fonction OpenRecordset = False Exit Function End If rs.MoveFirst 'la connexion a réussi, on se place sur le 1er enregistrement NbRs = rs.RecordCount 'on compte le nombre de ligne retournée OpenRecordset = True 'la fonction retourne Vrai End Function 'fonctions Suivant, Précédent, Premier, Dernier qui retourne un booléen. 'Paramètre entrée : l'objet recordset 'Fonctions qui permettent de parcourir les enregistrements d'un recordset Public Function RSLireSuivant(ByRef rs As ADODB.Recordset) As Boolean On Error Resume Next rs.MoveNext If rs.EOF Then RSLireSuivant = False Exit Function End If If Err <> 0 Then RSLireSuivant = False Exit Function End If RSLireSuivant = True End Function Public Function RSLirePrecedent(ByRef rs As ADODB.Recordset) As Boolean On Error Resume Next rs.MovePrevious If rs.BOF Then RSLirePrecedent = False Exit Function End If If Err <> 0 Then RSLirePrecedent = False Exit Function End If RSLirePrecedent = True End Function Public Function RSLirePremier(ByRef rs As ADODB.Recordset) As Boolean On Error Resume Next rs.MoveFirst If Err <> 0 Then RSLirePremier = False Exit Function End If RSLirePremier = True End Function Public Function RSLireDernier(ByRef rs As ADODB.Recordset) As Boolean On Error Resume Next rs.MoveLast If Err <> 0 Then RSLireDernier = False Exit Function End If RSLireDernier = True End Function 'procédure qui ferme la connexion à la base de données Public Sub CloseBdd() AdoCnx.Close End Sub 'procédure qui ferme le recordset Public Sub CloseRs(ByRef rs As ADODB.Recordset) rs.Close End Sub
Sur le bouton du formulaire :
Private Sub Command2_Click() Dim rst As ADODB.Recordset Dim query As String Set rst = New ADODB.Recordset query = "SELECT motDePasse FROM employé where login = ' " & Text2.Text & " ' " ModBdd.ConnectBdd If ModBdd.OpenRecordset(query, rst) = False Then MsgBox "veuillez verifier vos paramêtres" , VbExclamation,"Message Système" Exit Sub End If rst.MoveFirst While Not rst.EOF If rst.Fields(0) = Text4.Text Then form1.Show Unload Me End If rst.MoveNext Wend ModBdd.CloseRs(rst) ModBdd.CloseBdd End Sub
Reviens ici si tu as un problème
;o)
muslim_a
Messages postés
16
Date d'inscription
mercredi 6 janvier 2010
Statut
Membre
Dernière intervention
12 juin 2010
7
1 mai 2010 à 22:59
1 mai 2010 à 22:59
D'abord je vous remercie bien :) c'est tres gentil de votre part
je trouve -plutôt c'est lui qui trouve- un problème avec cette ligne
ModBdd.ConnectBdd
il me demande un objet requierd
j'ai essayé avec tout le code que vous m'avez présenté
je trouve -plutôt c'est lui qui trouve- un problème avec cette ligne
ModBdd.ConnectBdd
il me demande un objet requierd
j'ai essayé avec tout le code que vous m'avez présenté
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
2 mai 2010 à 00:29
2 mai 2010 à 00:29
Il faut activé la référence Microsoft ActiveX Data Objects x.x Library dans Outils > références ...
1 mai 2010 à 13:07
Merci bien!!
(Jazakom Allah khyran)