08. januar 2003 - 09:52Der er
12 kommentarer og 1 løsning
Password login
Hej allesammen
Da min VB programmering nu begynder at dreje over mod lidt database adgang er jeg løbet ind i et lille problem som jeg håber i kan hjælpe mig med. Jeg har ingen problemer med at skrive til min database, men nu vil jeg gerne læse fra den. Jeg vil lave en login form, som kontrollere om brugernavn og password stemmer overens med hvad der er i min database. Men kan som sagt ikke få det til at virke. I min form har jeg brugt følgende: 2 tekst felter, kaldet txtBrugernavn, og txtPassword. Og en knap kaldet cmdOk Min database hedder User.mdb, og er en Access database. Tabelen hedder users, og feltnavne er henholdvis brugernavn og password.
"problemer med at skrive til min database" - af den sætning antager jeg, at du allerede HAR oprettet forbindelse. Ellers kik på følgende kode, du kan tilføje i funktionen KontrolAfLogon:
Dim recBruger As Recordset Dim m_DB as Database '<- NY linie Set m_DB = Workspaces(0).OpenDatabase("C:\User.mdb") '< NY linie Set recBruger = m_DB.OpenRecords.....
He he - jeg mente i svaret 12:21:55 "jeg har INGEN problemer med at skrive til min database" - - af den sætning antager jeg, at du allerede HAR oprettet forbindelse
Else txtPassword.Text = "" txtPassword.SetFocus End If
End Sub
Public Function KontrolAfLogon(strBrugerID As String, strBrugerPW As String) As Boolean
KontrolAfLogon = False
Dim recBruger As Recordset Dim m_DB As Database Set m_DB = Workspaces(0).OpenDatabase("C:\projectx\projectx6_0\User.mdb") Set recBruger = m_DB.OpenRecordset _ ("SELECT brugernavn, password FROM users ORDER BY brugernavn", dbOpenSnapshot)
Do While Not recBruger.EOF If strBrugerID = recBruger!Brugernavn Then If strBrugerPW = recBruger!Password Then KontrolAfLogon = True End If End If recBruger.MoveNext Loop
recBruger.Close End Function
Den database kontrol jeg har, loades først efter man har logget ind :(
Hvad mener du? Får du en fejl, hvilken fejl og hvor?
I tilfælde af at du ingen fejl får, men der blot ikke sker noget, vil jeg henlede opmærksomheden på, at hvis du indtaster et korrekt password, har du valgt at VB absolut intet skal foretage sig?
Prøv at ret til
If KontrolAfLogon(strBrugerID, strBrugerPW) Then MsgBox "Password korrekt" Else MsgBox "Password forkert" txtPassword.Text = "" txtPassword.SetFocus End If
Og husk at lukke spørgsmålet, og giv mig points :o)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.