IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Dotnet Discussion :

Aide: fonction login toute simple


Sujet :

Dotnet

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur frontend
    Inscrit en
    Octobre 2013
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur frontend

    Informations forums :
    Inscription : Octobre 2013
    Messages : 75
    Par défaut Aide: fonction login toute simple
    Bonjour à tous,

    en dernier recours je m'en remets à vous car je n'arrive pas à me débuguer.
    Voici mon problème: je cherche à faire une fonctions qui va comparer une paire login/mot de passe. J'ai déjà fait l'expérience de ma démarche en procédural qui fonctionne comme je le souhaite.
    Je tente aujourd'hui de créer une classe afin d'y abriter notamment cette fonction et là ça ne fonctionne plus: j'ai une erreur "Tentative non valide de lecture lorsque qu'aucune donnée n'est présente"
    J'ai déjà vérifier la connexion, ma requête, le peuplement de ma base ainsi que ma démarche mais là je bloque sérieusement; si une âme charitable pouvait me donner un petit coup de pouce ce serait vraiment apprécié!
    Voici le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    26
    27
    28
    29
    30
    31
     
     Public Function userCheck(login As String, pass As String)
     
            acces.Open() 'ma connexion
            'ma requete et la connexion dans la commande
            Dim commande As New SqlCommand(userCheckQuery, acces)
            commande.ExecuteNonQuery()
     
            Dim reader As SqlDataReader = commande.ExecuteReader()
            reader.Read()
     
            Try
     
                MsgBox(reader.GetString(0))
     
                If reader.GetString(0) = login And reader.GetString(1) = pass Then
     
                    MsgBox("Bonjour " + login + ", vous êtes connecté ")
                    reader.Close()
                Else
     
                    MsgBox("Autre chose")
                End If
     
            Catch ex As Exception
                MsgBox(ex.Message)
            End Try
     
            acces.Close()
            Return False
        End Function

  2. #2
    Invité
    Invité(e)
    Par défaut
    Peut-être que c'est lier à la ligne suivante commande.ExecuteNonQuery() je ne vois pas à quoi elle sert si ta requête doit remonter des données surtout que tu fais correctement avec la ligne Dim reader As SqlDataReader = commande.ExecuteReader().

    Supprime la ligne inutile et réessaye pour voir.

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur frontend
    Inscrit en
    Octobre 2013
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur frontend

    Informations forums :
    Inscription : Octobre 2013
    Messages : 75
    Par défaut
    Citation Envoyé par h2s84 Voir le message
    Peut-être que c'est lier à la ligne suivante commande.ExecuteNonQuery() je ne vois pas à quoi elle sert si ta requête doit remonter des données surtout que tu fais correctement avec la ligne Dim reader As SqlDataReader = commande.ExecuteReader().

    Supprime la ligne inutile et réessaye pour voir.
    Merci pour la réponse h2s84, j'ai essayé mais cela n'a rien changé, j'ai toujours la même erreur

  4. #4
    Membre confirmé
    Homme Profil pro
    Développeur frontend
    Inscrit en
    Octobre 2013
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur frontend

    Informations forums :
    Inscription : Octobre 2013
    Messages : 75
    Par défaut
    En fait c'est résolu grâce à un collègue, le problème venait d'une déclaration d'attributs qui avait la même dénomination que mes paramètres...OUF
    Merci en tout cas

  5. #5
    Invité
    Invité(e)
    Par défaut
    En fait il se peut que ton DataReader ne renvoie pas résultat et du coup t'essaie d'accéder à des données inexistantes

    Tu dois interroger la propriété HasRows de ton DataReader. Si c'est true alors tu fais appel à la méthode Read. Si c'est false c'est que le couple login/mdp nexiste pas dans ta bdd.

  6. #6
    Membre confirmé
    Homme Profil pro
    Développeur frontend
    Inscrit en
    Octobre 2013
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur frontend

    Informations forums :
    Inscription : Octobre 2013
    Messages : 75
    Par défaut
    Jabbal'H: en fait c'est le nom de ma requête SQL, le soucis c'est que des attributs Private portaient le même nom que mes paramètres...Je débute c'est ma première classe
    Merci à h2s84 et à toi pour le coup de main c'est sympa
    Bonne soirée

  7. #7
    Membre chevronné Avatar de Jabbal'H
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2004
    Messages
    403
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2004
    Messages : 403
    Par défaut
    [Edit] oups j'avais pas raffraichie !
    Que vaut "userCheckQuery" ?

    Tu plante à quel endroit exactement ?

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

Discussions similaires

  1. erreur dans une fonction javascript toute simple
    Par totoAussi dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 18/10/2009, 12h19
  2. Petite fonction toute simple, mais
    Par renaud26 dans le forum Général JavaScript
    Réponses: 46
    Dernier message: 21/07/2006, 14h34
  3. probleme avec une fonction enable() toute simple !!
    Par K_!!! dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 19/05/2006, 15h10
  4. [RegEx] Aide sur une expression régulière toute simple
    Par tchoumak dans le forum Langage
    Réponses: 3
    Dernier message: 29/11/2005, 15h46
  5. creation d'une procedure ou fonction toute simple?
    Par atlas2003 dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 16/11/2005, 14h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo