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

VB.NET Discussion :

Connexion à une base de donnée


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juillet 2010
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 16
    Par défaut Connexion à une base de donnée
    Bonjour à tous ,

    En faite, je suis en train de programmer la partie "Connexion" de mon programme, afin de protéger celui-ci, et d'y accéder aux contenus, que si l'utilisateur est bien enregistré dans ma bdd qui se trouve en ligne.
    Donc j'ai installé Mysql pour avoir (Mysql.data, etc.), et là, quand j'execute mon code, celui-ci ne veut pas se connecter, il se bloque tout simplement, et rapporte toujours un problème au niveau de la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    myData = myCommand.ExecuteReader
    Voici mon 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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    Imports MySql.Data.MySqlClient
    Public Class LoginForm1
        Private Sub OK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK.Click
            Dim conn As MySqlConnection
     
            conn = New MySqlConnection()
            conn.ConnectionString = "server=db4free.net; user id=*******; password=*********; database=********"
     
            Try
                conn.Open()
            Catch myerror As MySqlException
                MsgBox("Erreur de connection à la base de donnée")
            End Try
     
            Dim MyAdapter As New MySqlDataAdapter
     
            Dim sqlquery = "SELECT * FROM login WHERE username = '" + UsernameTextBox.Text + "' AND password= '" + PasswordTextBox.Text + "'"
            Dim myCommand As New MySqlCommand
            myCommand.Connection = conn
            myCommand.CommandText = sqlquery
     
            MyAdapter.SelectCommand = myCommand
            Dim myData As MySqlDataReader
            myData = myCommand.ExecuteReader
     
            If myData.HasRows = 0 Then
                MsgBox("Login invalide")
            Else
                MsgBox("Connexion autorisée !")
                Form1.Show()
                Me.Hide()
            End If
        End Sub
        Private Sub Cancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cancel.Click
            Me.Close()
        End Sub
     
        Private Sub LoginForm1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
     
        End Sub
    End Class
    Peut être est-ce le serveur en face qui est trop lent, je ne sais pas . Je suis encore dans mes débuts, donc .

    Je programme sous Visual Basic 2010 Express Edition, donc je ne sais pas si le code est pour cette version, ou peut être peut-on l'améliorer selon l'avancement.

    J'ai fais à partir des tutos suivant :

    [ame="http://www.youtube.com/watch?v=u1waZnO8PCk&feature=mfu_in_order&playnext=1&videos=rxWqIuO5cTQ"]http://www.youtube.com/watch?v=u1waZnO8PCk&feature=mfu_in_order&playnext=1&videos=rxWqIuO5cTQ[/ame]

    PARTIE 1 :
    [ame="http://www.youtube.com/watch?v=MAnlhHOUc3Y&feature=related"]http://www.youtube.com/watch?v=MAnlhHOUc3Y&feature=related[/ame]

    PARTIE 2 :
    [ame="http://www.youtube.com/watch?v=zSZ6Sq-yJ8s&feature=related"]http://www.youtube.com/watch?v=zSZ6Sq-yJ8s&feature=related[/ame]

  2. #2
    Membre chevronné Avatar de Jerede
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2010
    Messages
    271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mai 2010
    Messages : 271
    Par défaut
    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
     
     
    Imports MySql.Data.MySqlClient
     
        public  maCommande  as MySqlCommand
        public reader as MySqlDataReader
        public Connection  as MySqlConnection = new MySqlConnection()
     
     public Sub Connect(String DbHost, String DbTable, String DbUser, String DbPass)
            Connection.ConnectionString = String.Concat("Server=", DbHost, ";Database=", DbTable, ";User ID=", DbUser, ";Password=", DbPass)
            try
     
                Connection.Open()
                Console.WriteLine("Connexion établie !")
            catch (ex as Exception)
                Console.WriteLine("Connexion échoué !")
            End Try
    End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     Sub Request()
            maCommande =new MySqlCommand("SELECT * FROM *",Connection)
            reader = maCommande.ExecuteReader()
            While reader.Read()
               dim blabla as Integer = reader.GetInt32(0)
               dim blabla2 as String= reader.GetString(1)
            End While
            reader.Close()
      End Sub

  3. #3
    Membre averti Avatar de emiscool
    Profil pro
    architecte logiciel
    Inscrit en
    Octobre 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : architecte logiciel

    Informations forums :
    Inscription : Octobre 2006
    Messages : 45
    Par défaut
    peut tu nous donné plus de détail sur l'erreur ( message, code, ..).

    l'erreur sur la ligne myData = myCommand.ExecuteReader ne veux rien dire.


    bon courage.

  4. #4
    Membre averti
    Inscrit en
    Juillet 2010
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 16
    Par défaut
    Citation Envoyé par emiscool Voir le message
    peut tu nous donné plus de détail sur l'erreur ( message, code, ..).

    l'erreur sur la ligne myData = myCommand.ExecuteReader ne veux rien dire.


    bon courage.
    Il n' y rien dans la case erreur, mais voici une image :


    Je pense peut être à un temps de réponse trop lent de la part de l'hébergeur (il est aussi possible que je me trompe)

  5. #5
    Membre émérite
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2007
    Messages
    693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 693
    Par défaut
    Bonjour,

    Euh tu as bien un détail sur l'erreur, il y a écrit :
    Connection must be valid and open.
    Donc soit elle est invalide, soit elle n'est pas ouverte avec le ExecuteReader.

    Et j'en profite encore pour dire qu'il faut utiliser les requêtes paramétrées.

  6. #6
    Membre averti
    Inscrit en
    Juillet 2010
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 16
    Par défaut
    Citation Envoyé par ostenhard Voir le message
    Bonjour,

    Euh tu as bien un détail sur l'erreur, il y a écrit :

    Donc soit elle est invalide, soit elle n'est pas ouverte avec le ExecuteReader.

    Et j'en profite encore pour dire qu'il faut utiliser les requêtes paramétrées.
    C'est à dire pour les requêtes paramétrées ?

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

Discussions similaires

  1. Pool de connexion à une base de données en java
    Par ppaul127 dans le forum JDBC
    Réponses: 3
    Dernier message: 15/12/2005, 18h03
  2. Réponses: 1
    Dernier message: 25/09/2005, 17h18
  3. ERREUR DE CONNEXION à une base de donnée ACCESS protégée
    Par unionriton dans le forum Bases de données
    Réponses: 4
    Dernier message: 09/05/2005, 10h35
  4. Delphi Connexion à une base de donnée distante par TCP/IP
    Par viecel dans le forum Bases de données
    Réponses: 1
    Dernier message: 12/01/2005, 20h19
  5. Réponses: 3
    Dernier message: 29/03/2004, 19h02

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