Fonction dans un module

2r0d Messages postés 8 Date d'inscription mercredi 5 octobre 2016 Statut Membre Dernière intervention 4 novembre 2016 - Modifié par 2r0d le 4/11/2016 à 11:49
2r0d Messages postés 8 Date d'inscription mercredi 5 octobre 2016 Statut Membre Dernière intervention 4 novembre 2016 - 4 nov. 2016 à 17:37
Bonjour,
cc toute la communauté ! j'ai créer une fonction de vérification dans un module mais lors du débogage ça me souligne cette partie : READER = cmd.ExecuteReader
voici le code en question
code du module :
  Public Sub verifier(ByVal req As String)
Dim mysqlconn As New MySqlConnection()
ObjetCommand = mysqlConn.CreateCommand
ObjetCommand.CommandType = CommandType.Text
ObjetCommand.CommandText = req
cmd = New MySqlCommand
READER = cmd.ExecuteReader
If READER.Read Then
If READER.IsDBNull(0) Then
veri = False
Else
veri = True
End If
Else
veri = False

End If
End Sub

code derrière le bouton valider de mon formulaire :
 verifier("select Niveau, LoginU, PassU from utilisateur where LoginU ='" & recup(txt_login.Text) & "' and PassU ='" & recup(txt_mdp.Text) & "'")

je ne sais pas trop ou se trouve l'erreur mais je compte sur vous pour m'aider a le résoudre merci d'avance !
coder c'est prédire l'avenir !

3 réponses

vb95 Messages postés 3472 Date d'inscription samedi 11 janvier 2014 Statut Contributeur Dernière intervention 13 avril 2024 169
4 nov. 2016 à 12:04
Bonjour
cmd est bien dimensionné à la ligne au-dessus
cmd = New MySqlCommand

READER est dimensionné où ? Normal qu'il soit tout en majuscules ?
0
2r0d Messages postés 8 Date d'inscription mercredi 5 octobre 2016 Statut Membre Dernière intervention 4 novembre 2016
4 nov. 2016 à 12:26
merci d'avoir répondus a ma préoccupation !
bhh voilla j'ai modifier le code et voici ce que ça donne :
'permet de vérifier les doublons pour les tables n'ayant qu'un seul champ
Public Sub verifier(ByVal req As String)
Dim mysqlconn As New MySqlConnection()
ObjetCommand = mysqlConn.CreateCommand
ObjetCommand.CommandType = CommandType.Text
ObjetCommand.CommandText = req
cmd = New MySqlCommand
myreader = cmd.ExecuteReader
If myreader.Read Then
If myreader.IsDBNull(0) Then
veri = False
Else
veri = True
End If
Else
veri = False

End If
End Sub


j'ai déclarer myreader dans public :
 Public myreader, dr, ver, test, valr, objetDataReader As MySqlDataReader

et voici la ligne souligné :
myreader = cmd.ExecuteReader
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 137
4 nov. 2016 à 14:25
Bonjour,

Quand tu mets cette ligne tu n'as pas un message d'erreur qui s'affiche!

Public myreader, dr, ver, test, valr, objetDataReader As MySqlDataReader


En VB.NEt on ne déclare pas les variables de cette manière!

Apprends toi à mettre Option Strict On au début de ton code. Les erreurs s'afficheront et tu pourras les corriger.
0
2r0d Messages postés 8 Date d'inscription mercredi 5 octobre 2016 Statut Membre Dernière intervention 4 novembre 2016
4 nov. 2016 à 16:02
bonjour cs_Le Pivert merci pour l'intervention
je suis au début et je serai très content si tu pouvais me montrer comment mettre Option String.... un petit tuto ... sorry pour le retard au message !
0
vb95 Messages postés 3472 Date d'inscription samedi 11 janvier 2014 Statut Contributeur Dernière intervention 13 avril 2024 169 > 2r0d Messages postés 8 Date d'inscription mercredi 5 octobre 2016 Statut Membre Dernière intervention 4 novembre 2016
4 nov. 2016 à 17:01
C'est Option Strict et non String
C'est dans le tuto : http://plasserre.developpez.com/cours/vb-net/
0
vb95 Messages postés 3472 Date d'inscription samedi 11 janvier 2014 Statut Contributeur Dernière intervention 13 avril 2024 169
Modifié par vb95 le 4/11/2016 à 15:03
Bonjour cs_Le Pivert
On rajoute Option Explicit aussi

Pour 2r0d
Dans ta déclaration Public seul objetDataReader est reconnu comme un objet MySqlDataReader

La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi. 
0
2r0d Messages postés 8 Date d'inscription mercredi 5 octobre 2016 Statut Membre Dernière intervention 4 novembre 2016
4 nov. 2016 à 16:03
Ah oki dans ce cas je peux utilisr objetdataReader pour ala place de myreader ?
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 137
4 nov. 2016 à 16:23
0
2r0d Messages postés 8 Date d'inscription mercredi 5 octobre 2016 Statut Membre Dernière intervention 4 novembre 2016
4 nov. 2016 à 16:26
pour etre bref, mon soucis c'est que je ne maîtrise pas bien les déclaration dans le module ! si quelqu'un peut bien me montrer clairement les lignes de code à écrire ou me renvoyer vers un tutoriel concret à cet effet.
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 137 > 2r0d Messages postés 8 Date d'inscription mercredi 5 octobre 2016 Statut Membre Dernière intervention 4 novembre 2016
4 nov. 2016 à 16:28
C'est fait regarde au dessus le site
0
vb95 Messages postés 3472 Date d'inscription samedi 11 janvier 2014 Statut Contributeur Dernière intervention 13 avril 2024 169 > 2r0d Messages postés 8 Date d'inscription mercredi 5 octobre 2016 Statut Membre Dernière intervention 4 novembre 2016
Modifié par vb95 le 4/11/2016 à 16:52
Non
il faut à chaque fois répeter le " as XXXXXX" si tu as besoin de tous ces déclarations
En VB 6 on pouvait mettre le " as XXXXXXXX" à la fin de la ligne pour dimensionner toutes les variables de la ligne
En VB Net il faut le mettre à chaque variable


Public myreader As MySqlDataReader, dr As MySqlDataReader
Public ver As MySqlDataReader, test As MySqlDataReader
Public valr As MySqlDataReader, objetDataReader As MySqlDataReader
0
Rejoignez-nous