En loginformular er et must for databaser, der indeholder følsomme oplysninger. Følg nedenstående trin, så du kan oprette din egen loginformular for at beskytte din database mod ugyldig adgang.
Hent nu
Hvis du vil begynde at bruge funktionen så hurtigt som muligt, kan du:
Download eksempeldatabasen med VBA-koder nu
Ellers kan du læse indholdet nedenfor, hvis du vil gøre det selv.
Trin til at oprette en loginformular i Access
1. Opret en login-tabel
Den første ting, vi skal gøre, er at oprette en tabel, der gemmer alle loginoplysninger.
- Opret en ny tabel, og navngiv den som tbl_login.
- Åbn bordet i designvisningen.
- Tilføj følgende felter med deres tilsvarende datatyper:
| Feltnavn | Datatype |
| BrugerID | Autonummerering |
| Fornavn | Korttekst |
| Efternavn | Korttekst |
| Brugernavn | Korttekst |
| Adgangskode | Korttekst |
- Rediger adgangskodens inputmaske, så den vises som en serie af stjerner (*).
- Vælg adgangskodefeltet.
- Gå til fanen Generelt> Input Mask> ...
- Når guiden Input Mask vises, skal du vælge Adgangskode.
- Klik på Udfør.
- Åbn tabellen i dataarkvisning, og indtast den første post (dine loginoplysninger).
- Luk tabellen, og gem de foretagne ændringer.
2. Opret loginformularen
Opret en blank formular med 2 tekstfelter og 2 kommandoknapper (som vist nedenfor). Spring over kommandoknapguiden.
Vi vil henvise til disse formularkontroller i vores kode senere, så det ville være bedst at omdøbe dem, så de let kan identificeres:
- txt_brugernavn
- txt_adgangskode
- cmd_login
- cmd_annuller
Dernæst skal du ændre indtastningsmasken for adgangskodens tekstboks, så den også vises som en serie af stjerner (*).
- Mens du er i designvisning, skal du vælge adgangskodetekstfeltet.
- Åbn ejendomsarket (ALT + Enter).
- Gå til fanen Data> Input Mask.
- Vælg adgangskode, og klik på Udfør.
Nu vil vi ændre nogle af formularens egenskaber af æstetiske årsager og vigtigst af alt, for at sikre, at brugerne ikke kan omgå denne formular uden at indtaste de korrekte loginoplysninger.
- Mens du er i designvisningen, skal du vælge formularen (som vist nedenfor).
- Åbn egenskabsarket (ALT + Enter), og opdater følgende egenskaber:
- Under dannet fanen
- Billedtekst: Login
- Record Selectors: Nej
- Navigationsknapper: Nej
- Rullebjælker: Ingen af dem
- Grænsestil: Dialog
- Luk-knap: Nej
- Under Andet fanen
- Pop op: Ja
- Modal: Ja
- Genvejsmenu: Nej
- Gem formularen som frm_login.
3. Tilføj koden
Føj en On Click-begivenhed til knappen Login.
- Mens du er i designvisning, skal du vælge knappen Login.
- Gå til ejendomsarket> fanen Begivenhed> Ved klik> ...
- Type Kodebygger fra menuen Vælg bygherre og klik på OK.
- Dette åbner VBA Editor.
- Kopier koden nedenfor.
Private Sub cmd_login_Click()
Dim db As DAO.Database
Dim rst As DAO.Recordset
Dim strSQL As String
If Trim(Me.txt_username.Value & vbNullString) = vbNullString Then
MsgBox prompt:="Username should not be left blank.", buttons:=vbInformation, title:="Username Required"
Me.txt_username.SetFocus
Exit Sub
End If
If Trim(Me.txt_password.Value & vbNullString) = vbNullString Then
MsgBox prompt:="Password should not be left blank.", buttons:=vbInformation, title:="Password Required"
Me.txt_password.SetFocus
Exit Sub
End If
'query to check if login details are correct
strSQL = "SELECT FirstName FROM tbl_login WHERE Username = """ & Me.txt_username.Value & """ AND Password = """ & Me.txt_password.Value & """"
Set db = CurrentDb
Set rst = db.OpenRecordset(strSQL)
If rst.EOF Then
MsgBox prompt:="Incorrect username/password. Try again.", buttons:=vbCritical, title:="Login Error"
Me.txt_username.SetFocus
Else
MsgBox prompt:="Hello, " & rst.Fields(0).Value & ".", buttons:=vbOKOnly, title:="Login Successful"
DoCmd.Close acForm, "frm_login", acSaveYes
End If
Set db = Nothing
Set rst = Nothing
End Sub
Denne kode vil:
- Kontroller, om brugernavnet og adgangskodefelterne ikke er tomme. Hvis de er, vises der en meddelelse.
- Kontroller, om loginoplysningerne er korrekte ved at sammenligne dem med værdierne i login-tabellen (tbl_login).
- Når loginoplysningerne er bekræftet, vises en prompt, der byder brugeren velkommen.
Det næste trin er at tilføje koden til knappen Annuller, så når databasen lukkes, lukkes databasen.
- Føj en On Click-begivenhed til knappen Annuller (samme procedure som knappen Login).
- Kopier koden nedenfor.
Private Sub cmd_cancel_Click() DoCmd.Quit acQuitSaveAll End Sub
4. Indstil loginformularen som visningsformular
Til sidst skal du indstille loginformularen som den standardformular, som brugerne vil se, når de åbner databasen.
- Gå til Filer> Indstillinger> Aktuel database.
- Indstil skærmformular til frm_login.
- Klik på OK.
Du bliver nødt til at lukke databasen og genåbne den for at se, hvordan den fungerer.
Gendan din adgangsdatabase
Tillykke! Du ved nu, hvordan du beskytter din dyrebare database mod ugyldig adgang. Nu giver jeg dig et ekstra tip. Hvis din database af en uheldig årsag er blevet ødelagt, skal du IKKE gå i panik. DataNumen Inc., en ekspert inden for datagendannelsesteknologier, leverer en software, der reparerer beskadiget adgang database. Din database kan stadig gendannes.
Forfatter Introduktion:
Jayme Stack er ekspert i datagendannelse i DataNumen, Inc., som er verdens førende inden for datagendannelsesteknologier, herunder sql opsving og excel-genopretningssoftwareprodukter. For mere information besøg www.datanumen.com



