Frage zu vb..../problem mit vb

02/24/2011 19:57 KingZuck#1
hi leuts,

Als ich habe folgendes problem ich habe etwas in vb geschrieben mit mysq...
also login + regi...

dann ahbe ich es an ein freund geschick bei dem folgends beim regiestrien kommt...


nun meine frage wie mache ich es das er es auch öffnen/benutzen kann?


MFG
Kingzuck
02/24/2011 20:12 Ronox#2
Hi,

ich würde sagen dein Freund hat die ODBC Verbindung nicht eingerichtet und oder er hat keinen aktuellen MySql Connector drauf, und verwendet eine ältere Version als du.
02/24/2011 20:16 KingZuck#3
das heißt jeder der das krigt muss ein mysql connectort drauf haben?
02/24/2011 21:16 Ronox#4
Theoretisch ja, praktisch kann es aber auch sein das es reicht wenn man die MySql.Data.dll mitgibt, und basierend auf dieser dann die ODBC Verbindung erstellt.
02/25/2011 14:49 KingZuck#5
hmm werde ich mal versuchen danke..
/edit geht nicht bzw habe nur die dll reingezogen reicht das?
02/25/2011 15:07 Ronox#6
Er muss natürlich noch die ODBC Verbindung einrichten, wenn es nicht klappen sollte musst du halt den MySQL Connector installieren.
Wenn beides nicht funktioniert solltest du vielleicht Quellcode Posten der Zeigt wie du das ganze implementiert hast.
Und hinzu kommt du musst doch wissen was du alles bei dir Eingerichtet hast um die Verbindung bei dir zum laufen zu bringen?
02/25/2011 16:32 KingZuck#7
also wie richte ich den die ODBC verbindung ein o.O?

hier mal der quellcode von meiner regi:
Code:
Imports MySql.Data.MySqlClient
Public Class Regi
    Dim mysqlconnection As MySqlConnection
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        LoginForm1.Close()
        Me.Close()

    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        If TextBox3.Text.Contains("@") Then

            'Dim mysqlquery1 = "INSERT INTO User (username, passwort, email, geburtsjahr) VALUES ('" & TextBox1.Text & "', '" & TextBox2.Text & "', '" & TextBox3.Text & "', '" & TextBox4.Text & "')" ';"

            Dim connection As MySqlConnection
            connection = New MySqlConnection
            connection.ConnectionString = "server=geheim;" & "user id= 	geheim;" & "password=geheim;" & "database=geheim;"
            Try
                connection.Open()
            Catch Errormeldung As Exception
                MsgBox("Fehler! Irgendetwas stimmt mit der Datenbank nicht: " & Errormeldung.Message.ToString)
            End Try

            Dim Apdapter As New MySqlDataAdapter
            Dim Abfrage As String = "Select * from user Where Benutzername='" + TextBox1.Text + "'" '
            Dim Command As New MySqlCommand
            Command.Connection = connection
            Command.CommandText = Abfrage

            Apdapter.SelectCommand = Command
            Dim Daten As MySqlDataReader
            Daten = Command.ExecuteReader

            If Daten.HasRows = 0 Then
                connection.Close()
                connection.Open()
                Dim registrierer As New MySqlDataAdapter
                Dim passwort As String = MD5Text(TextBox2.Text)
                Command.CommandText = "INSERT INTO user(Benutzername, Passwort, Email)" _
                                    & "VALUES('" & TextBox1.Text & "', '" & passwort & "', '" & TextBox3.Text & "')"
                Command.ExecuteNonQuery()
                MsgBox("Der Account " + TextBox1.Text + " wurde erfolgreich registriert!", MsgBoxStyle.Information)
                connection.Close()
            Else
                MsgBox("Dieser Account existiert bereits!", MsgBoxStyle.Critical)
            End If
        Else
            MsgBox("Ungültige Email-Adresse!", MsgBoxStyle.Critical)
        End If
    End Sub

    Private Sub Regi_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

    End Sub
End Class
02/25/2011 16:53 Ronox#8
[Only registered and activated users can see links. Click Here To Register...]

Da steht es, für soweit ich es gesehen habe alle Systeme.
Ich denke es gibt auch eine Möglichkeit die benötigten Dateien mit im Projekt einzulagern, aber bei dem Punkt kann ich dir leider nicht weiterhelfen, weil ich es selbst noch nie benötigt habe.

Ich würde dir auch Empfehlen den Aufbau der Datenverbindung in einer Funktion auszulagern, solltest aber auch darauf achten das beim Programm schließen diese getrennt wird.

Ein weiterer Tipp für deine E-Mail, Informiere dich mal über Regex, damit kannst du eine Abfrage einbauen die genauer Prüft ob diese E-Mail überhaupt Machbar ist. Jetzt könnte der Benutzer ja auch einfach @ eingeben in deiner TextBox3 und es wäre richtig.