Formularz logowania jest konieczny w przypadku baz danych zawierających poufne informacje. Wykonaj poniższe czynności, aby utworzyć własny formularz logowania w celu ochrony bazy danych przed nieprawidłowym dostępem.
Pobierz teraz
Jeśli chcesz zacząć korzystać z tej funkcji jak najszybciej, możesz:
Pobierz teraz przykładową bazę danych z kodami VBA
W przeciwnym razie, jeśli chcesz wykonać majsterkowanie, możesz przeczytać poniższą zawartość.
Kroki, aby utworzyć formularz logowania w programie Access
1. Utwórz tabelę logowania
Pierwszą rzeczą, którą musimy zrobić, jest utworzenie tabeli, która będzie przechowywać wszystkie dane logowania.
- Utwórz nową tabelę i nadaj jej nazwę tbl_login.
- Otwórz tabelę w widoku projektu.
- Dodaj następujące pola z odpowiadającymi im typami danych:
| Nazwa pola | DataType |
| ID użytkownika | Numer samochodu |
| Imię | Krótki tekst |
| Nazwisko | Krótki tekst |
| UserName | Krótki tekst |
| Hasło | Krótki tekst |
- Edytuj maskę wprowadzania hasła, aby była wyświetlana jako seria gwiazdek (*).
- Wybierz pole Hasło.
- Przejdź do karty Ogólne> Maska wprowadzania>…
- Gdy pojawi się Kreator maski wprowadzania, wybierz opcję Hasło.
- Kliknij Zakończ.
- Otwórz tabelę w widoku arkusza danych i wprowadź pierwszy rekord (dane logowania).
- Zamknij tabelę i zapisz wprowadzone zmiany.
2. Utwórz formularz logowania
Utwórz pusty formularz z 2 polami tekstowymi i 2 przyciskami poleceń (jak pokazano poniżej). Pomiń kreatora przycisków poleceń.
Zamierzamy później odwołać się do tych kontrolek formularza w naszym kodzie, więc najlepiej byłoby zmienić ich nazwy, aby można je było łatwo zidentyfikować:
- txt_nazwa użytkownika
- txt_hasło
- cmd_login
- cmd_anuluj
Następnie zmień maskę wprowadzania hasła w polu tekstowym, aby było ono również wyświetlane jako seria gwiazdek (*).
- W widoku projektu zaznacz pole tekstowe hasła.
- Otwórz arkusz właściwości (ALT + Enter).
- Przejdź do zakładki Dane> Maska wprowadzania.
- Wybierz Hasło i kliknij Zakończ.
Teraz zmienimy niektóre właściwości formularza ze względów estetycznych, a co najważniejsze, aby mieć pewność, że użytkownicy nie będą mogli ominąć formularza bez podania poprawnych danych logowania.
- W widoku projektu wybierz formularz (jak pokazano poniżej).
- Otwórz arkusz właściwości (ALT + Enter) i zaktualizuj następujące właściwości:
- Pod Format: .
- Podpis: Zaloguj się
- Selektory rekordów: Nie
- Przyciski nawigacji: Nie
- Paski przewijania: żadne
- Styl obramowania: okno dialogowe
- Przycisk zamykania: nie
- Pod Inne .
- Pop Up: Tak
- Modalne: tak
- Menu skrótów: Nie
- Zapisz formularz jako frm_login.
3. Dodaj kod
Dodaj zdarzenie On Click do przycisku Login.
- W widoku projektu wybierz przycisk Zaloguj.
- Przejdź do arkusza właściwości> karty Zdarzenie> Po kliknięciu>…
- Wybierz Konstruktor kodu z menu Wybierz konstruktora i kliknij OK.
- Otworzy się edytor VBA.
- Skopiuj poniższy kod.
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
Ten kod:
- Sprawdź, czy pola nazwy użytkownika i hasła nie są puste. Jeśli tak, pojawi się monit.
- Sprawdź, czy dane logowania są poprawne, porównując je z wartościami w tabeli logowania (tbl_login).
- Po zweryfikowaniu danych logowania pojawi się monit powitalny użytkownika.
Następnym krokiem jest dodanie kodu przycisku Anuluj, aby po jego kliknięciu baza danych została zamknięta.
- Dodaj zdarzenie On Click do przycisku Cancel (ta sama procedura z przyciskiem Login).
- Skopiuj poniższy kod.
Private Sub cmd_cancel_Click() DoCmd.Quit acQuitSaveAll End Sub
4. Ustaw formularz logowania jako formularz wyświetlania
Na koniec ustaw formularz logowania jako domyślny formularz, który użytkownicy zobaczą po otwarciu bazy danych.
- Przejdź do Plik> Opcje> Bieżąca baza danych.
- Ustaw Formularz wyświetlania na frm_login.
- Kliknij przycisk OK.
Będziesz musiał zamknąć bazę danych i ponownie ją otworzyć, aby zobaczyć, jak to działa.
Odzyskaj swoją bazę danych dostępu
Gratulacje! Teraz wiesz, jak chronić swoją cenną bazę danych przed nieprawidłowym dostępem. Teraz dam ci dodatkową wskazówkę. Jeśli z niefortunnego powodu Twoja baza danych została uszkodzona, NIE panikuj. DataNumen Inc., ekspert w dziedzinie technologii odzyskiwania danych, dostarcza oprogramowanie, które naprawia uszkodzony Access Baza danych. Twoja baza danych nadal może zostać odzyskana.
Wprowadzenie autora:
Jayme Stack jest ekspertem w dziedzinie odzyskiwania danych w DataNumen, Inc., która jest światowym liderem w technologiach odzyskiwania danych, w tym odzyskiwanie sql i doskonałe oprogramowanie do odzyskiwania. po więcej informacji odwiedź www.datanumen.com



