anoniem Geplaatst: 20 oktober 2010 Delen Geplaatst: 20 oktober 2010 Hallo Allemaal ik ben (ook) bezig met het maken van een rpg game, maar dan [color=red:9ce0eecf2f]NIET[/color:9ce0eecf2f] op een site. Ik wil deze maken in vb (visual basic) het login systeem heb ik al (hieronder ziet u een code van het login systeen) Maar ik heb nog een paar probleempjes omdat ik nog niet precies weet hoe ik met een (online) database moet werken, Beneden staat de hele uitleg [code:1:9ce0eecf2f] Try ProgressBar1.Value = 10 mysqlconnection = New MySqlConnection mysqlconnection.ConnectionString = "server=*****;Port=3306; User ID=******; password=******; database=******" mysqlconnection.Open() Dim MyAdapter As New MySqlDataAdapter Dim SqlQuary = "SELECT * From Users WHERE Username='" & UsernameTextBox.Text & "' AND password = '" & PasswordTextBox.Text & "';" Dim Command As New MySqlCommand ProgressBar1.Value = 20 Command.Connection = mysqlconnection ProgressBar1.Value = 30 Command.CommandText = SqlQuary ProgressBar1.Value = 50 MyAdapter.SelectCommand = Command ProgressBar1.Value = 70 Dim Mydata As MySqlDataReader ProgressBar1.Value = 85 Mydata = Command.ExecuteReader ProgressBar1.Value = 100 If Mydata.HasRows = 0 Then MsgBox("Sorry you have a wrong loginname of password") ProgressBar1.Value = 0 Else Form1.Show() Me.Close() End If Catch ex As Exception mgsbox("Er heeft mogelijk een fout voorgedaan hierdoor kon uw geen verbinding maken met onze server. ga naar het FAQ van de site voor een oplossing") End Try[/code:1:9ce0eecf2f] Het inlog systeem is af dat is het probleem niet :roll: maar ik moet nog een registratie systeem en een systeem die gegevens laad de profiel pagina van deze persoon of hoeveel geld deze persoon op z'n bank heeft staan. Ik zal even een pagina van het profiel geven [img:9ce0eecf2f]http://img710.imageshack.us/img710/4229/sodjasodasd.png[/img:9ce0eecf2f] Dus even een samenvatting van m'n vraag - Hoe haal ik gegevens uit een online database en zet deze bijvoorbeeld in een label.text - Hoe maak ik een register pagina waar mensen zich kunnen registreren (vooral het script) - Hoe kan ik de gegevens in de database veranderen via dit programma bijvoorbeeld met het verdienen van geld in het spel :-) - Kan ik ergens mijn database extern gratis laten hosten want bij [url]http://www.db4free.net/[/url] kun je je database alleen testen dus ik denk dat het dan niet voor groot gebruik is ;-) Waarschijnlijk kan iemand wel goed met databases overweg Ik hoop dat iemand me kan erg kan helpen. [color=red:9ce0eecf2f] [size=24:9ce0eecf2f]ALVAST BEDANKT ;-*)[/size:9ce0eecf2f][/color:9ce0eecf2f] Als iemand dit misschien nodig heeft dit is mijn database (hij is nog niet uitgebreid alleen de basis login staat er in) [code:1:9ce0eecf2f]-- phpMyAdmin SQL Dump -- version 3.3.7 -- http://www.phpmyadmin.net -- -- Machine: **************:3306 -- Genereertijd: 20 Oct 2010 om 21:01 -- Serverversie: 5.1.51 -- PHP-Versie: 5.3.3 SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; -- -- Database: `************` -- -- -------------------------------------------------------- -- -- Tabelstructuur voor tabel `Users` -- CREATE TABLE `Users` ( `ID` int(255) NOT NULL AUTO_INCREMENT, `Username` varchar(25) NOT NULL, `Password` varchar(25) NOT NULL, PRIMARY KEY (`ID`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ; -- -- Gegevens worden uitgevoerd voor tabel `Users` -- INSERT INTO `Users` VALUES(1, 'gebruikernaam', '*********'); [/code:1:9ce0eecf2f] [color=red:9ce0eecf2f] [size=24:9ce0eecf2f]ALVAST BEDANKT ;-*)[/size:9ce0eecf2f][/color:9ce0eecf2f] Quote Link naar reactie
anoniem Geplaatst: 21 oktober 2010 Auteur Delen Geplaatst: 21 oktober 2010 Iemand? ik wil alleen gegevens uit een database kunnen halen en een registratie pagina :? Quote Link naar reactie
anoniem Geplaatst: 21 oktober 2010 Auteur Delen Geplaatst: 21 oktober 2010 Misschien zou je wat minder opdringerig kunnen zijn. En laten zien wat je zelf al geprobeerd hebt en waar je tegen problemen aanloopt. Mensen willen best helpen met het leren van iets maar voorkauwen doen we niet. Van VB heb geen verstand maar heb sterk de indruk dat de code die je nu hebt ergens op het net hebt gevonden. Quote Link naar reactie
anoniem Geplaatst: 21 oktober 2010 Auteur Delen Geplaatst: 21 oktober 2010 [quote:8f49fb58ac="vuurtoren"]Misschien zou je wat minder opdringerig kunnen zijn. En laten zien wat je zelf al geprobeerd hebt en waar je tegen problemen aanloopt. [/quote:8f49fb58ac] Zorrie dat ik dan zo over kwam, ik ben een beetje te enthousiast over het idee :? Zoals ik hierboven al zij ben ik bezig met een rpg (maar geen crimesoure). maar deze is niet gebaseerd op een site. Het probleem is dat ik een aardig eind met vb maar ik ben nu aan het proberen met een online database verbinding te maken. Het klopt dat deze code gedeeltelijk van internet is. Maar Helaas kan ik geen informatie vinden hoe ik een registratie form moet maken :( of hoe ik gegevens uit een database moet halen dus ik hoopte dat iemand me kan helpen. Omdat IK geen info kon vinden heb ik helaas ook geen codes. Ik weet niet of ik iets aan deze code heb [code:1:8f49fb58ac]# Dim conn As ADODB.Connection # Dim dbRecset As ADODB.Recordset # Dim sSQL As String # Dim l As Long, l2 As Long # # 'Connect to MysSQL server using MysSQL ODBC 3.51 Driver # 'Change the settings as needed # Set conn = New ADODB.Connection # # conn.ConnectionString = "DRIVER={MySQL ODBC 3.51 Driver};" & _ # "SERVER=YourServer_address;" & _ # "PORT=3306" & _ # "DATABASE=Your_databasename;" & _ # "UID=YourName;PASSWORD=YourPassword;OPTION=3" # # 'Create sSQL string - change this as needed # sSQL = "SELECT * FROM MyDB.MyTable;" # # 'Open the connection # conn.Open # # 'Create a recordset and set the CursorLocation property for record navigation # Set dbRecset = New ADODB.Recordset # dbRecset.CursorLocation = adUseClient # # 'Fetch data # dbRecset.Open Source:=sSQL, ActiveConnection:=conn, CursorType:=adOpenForwardOnly, _ # LockType:=adLockReadOnly, Options:=adCmdText # # 'Move to the first record # dbRecset.MoveFirst # # 'Cycle through all the fields and write name to worksheet # 'You could omit this step if you just want data # For l = 1 To dbRecset.Fields.Count # Worksheets(1).Cells(1, l).Value = dbRecset.Fields(l - l).Name # Next l # # 'Write all data to your worksheet # For l2 = 1 To dbRecset.RecordCount # For l = 1 To dbRecset.Fields.Count # Worksheets(1).Cells(l2 + 1, l).Value = dbRecset.Fields(l - 1).Value # Next l # dbRecset.MoveNext # Next l2 # # 'Close connection again # dbRecset.Close # conn.Close # # 'Tidy up # Set dbRecset = Nothing # Set conn = Nothing # End Sub [/code:1:8f49fb58ac] Quote Link naar reactie
anoniem Geplaatst: 21 oktober 2010 Auteur Delen Geplaatst: 21 oktober 2010 [quote:e2d2dcf14e="vuurtoren"]Misschien zou je wat minder opdringerig kunnen zijn. En laten zien wat je zelf al geprobeerd hebt en waar je tegen problemen aanloopt. Mensen willen best helpen met het leren van iets maar voorkauwen doen we niet. Van VB heb geen verstand maar heb sterk de indruk dat de code die je nu hebt ergens op het net hebt gevonden.[/quote:e2d2dcf14e] Het grote probleem is dat ik geen source code kan vinden voor m'n project :cry: :? Quote Link naar reactie
anoniem Geplaatst: 21 oktober 2010 Auteur Delen Geplaatst: 21 oktober 2010 Nou ik ben al uit het register systeem maar nu de rest nog :P Quote Link naar reactie
anoniem Geplaatst: 21 oktober 2010 Auteur Delen Geplaatst: 21 oktober 2010 Hi allemaal ik heb nu deze code maar ik krijg alsnog een foutmelding wie kan me helpen? Ik krijg de melding : [color=red:a32522121f]Key cannot be null. Parameter name: key[/color:a32522121f] [code:1:a32522121f] Dim connection As MySqlConnection 'connect to database' connection = New MySqlConnection mysqlconnection.ConnectionString = "server=XXXX;Port=3306; User ID=XXXX; password=XXXX; database=XXXX" 'see if connection fail' Try connection.Open() Catch myerror As MySqlException MsgBox("error") End Try 'sql query' Dim myadapter As New MySqlDataAdapter Dim sqlquery = "SELECT * FROM login Where username = '" + UsernameTextBox.Text + "'" Dim myCommand As New MySqlCommand myCommand.Connection = connection myCommand.CommandText = sqlquery 'start query' myadapter.SelectCommand = myCommand Dim myData As MySqlDataReader myData = myCommand.ExecuteReader() 'see if user already exist' If myData.HasRows = 0 Then connection.Close() connection.Open() Dim registerfina As New MySqlDataAdapter Dim SqlQuary = "INSERT INTO Users Set Username='" & UsernameTextBox.Text & "' AND password = '" & PasswordTextBox.Text & "';" myCommand.Connection = connection myCommand.CommandText = sqlquery 'start query' registerfina.SelectCommand = myCommand myData = myCommand.ExecuteReader() MsgBox("Gelukt") Me.Hide() Else MsgBox("Gebruikersnaam is al in gebruikt") End If[/code:1:a32522121f] Quote Link naar reactie
anoniem Geplaatst: 22 oktober 2010 Auteur Delen Geplaatst: 22 oktober 2010 Geen idee, je moet opnieuw napluizen op welke regel het fout gaat. Een bepaalde variable zal niet geinitialiseerd zijn wat wel zou moeten, omdat je die ergens gebruikt. even een algemeen advies: Haal anders even een boek uit de bibliotheek en ga daar eens mee aan de slag. Maak de oefeningen en probeer te begrijpen hoe het programmeren werkt. Het kopieren en plakken van code en dan vervolgens gaan vragen waarom het niet werkt, dat schiet niet erg op ;) Je leert namelijk niet veel van code plakken, want je snapt nog steeds de betekenis niet. Ik ben ook ooit op 15 jarige leeftijd begonnen met visual basic. Het duurt een tjjdje maar als je eenmaal door hebt, dan wordt het pas echt leuk ;) Quote Link naar reactie
anoniem Geplaatst: 22 oktober 2010 Auteur Delen Geplaatst: 22 oktober 2010 Haha ik heb nu de register gehele code herschreven Deze werkt nu Maar nu wil ik nog de data van de database willen halen en ik heb nu nog geen idee hoe dat dan moet Ik wil het net zo maken bijvoorbeeld als je inlogt dat je je inlog naam ziet en bijvoorbeeld je rank Weet iemand iets Quote Link naar reactie
anoniem Geplaatst: 23 oktober 2010 Auteur Delen Geplaatst: 23 oktober 2010 Alsjeblieft, lees mijn bericht nog een keer, want ik krijg het idee dat je er niet naar wilt luisteren. Als je informatie kan opslaan, is het ook makkelijk om informatie op te halen. Als je zelfs al kan inloggen, wat gewoon inhoudt: informatie ophalen. Dan kan je toch ook andere informatie ophalen. Je stelt vragen, die als echt zelf de code geschreven had, niet had hoeven stellen. Ik kan je bijna niet helpen, je bent namelijk alleen geholpen als ik letterlijk de code ga uitschrijven en jij deze zo in je programma kan plakken. Quote Link naar reactie
anoniem Geplaatst: 24 oktober 2010 Auteur Delen Geplaatst: 24 oktober 2010 Zorrie maar deze code heb ik wel zelf geschreven [quote:af3e35bf8d="ohdude"] [code:1:af3e35bf8d] Dim connection As MySqlConnection 'connect to database' connection = New MySqlConnection mysqlconnection.ConnectionString = "server=XXXX;Port=3306; User ID=XXXX; password=XXXX; database=XXXX" 'see if connection fail' Try connection.Open() Catch myerror As MySqlException MsgBox("error") End Try 'sql query' Dim myadapter As New MySqlDataAdapter Dim sqlquery = "SELECT * FROM login Where username = '" + UsernameTextBox.Text + "'" Dim myCommand As New MySqlCommand myCommand.Connection = connection myCommand.CommandText = sqlquery 'start query' myadapter.SelectCommand = myCommand Dim myData As MySqlDataReader myData = myCommand.ExecuteReader() 'see if user already exist' If myData.HasRows = 0 Then connection.Close() connection.Open() Dim registerfina As New MySqlDataAdapter Dim SqlQuary = "INSERT INTO Users Set Username='" & UsernameTextBox.Text & "' AND password = '" & PasswordTextBox.Text & "';" myCommand.Connection = connection myCommand.CommandText = sqlquery 'start query' registerfina.SelectCommand = myCommand myData = myCommand.ExecuteReader() MsgBox("Gelukt") Me.Hide() Else MsgBox("Gebruikersnaam is al in gebruikt") End If[/code:1:af3e35bf8d][/quote:af3e35bf8d] Quote Link naar reactie
anoniem Geplaatst: 24 oktober 2010 Auteur Delen Geplaatst: 24 oktober 2010 Dus je hebt dit geschreven, je begrijpt precies wat het doet. Waarom kan je dit dan niet omtoveren tot iets wat je wel wilt? Ik bedoel met zelf schrijven: Het uitdenken, coden en testen. Dus niet overschrijven van andere code... [quote:9672210713="ohdude"] [code:1:9672210713] Dim sqlquery = "SELECT * FROM login Where username = '" + UsernameTextBox.Text + "'"[/code:1:9672210713][/quote:9672210713] Quote Link naar reactie
anoniem Geplaatst: 25 oktober 2010 Auteur Delen Geplaatst: 25 oktober 2010 De code klopt nu wat betreft het registratie formulier Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen