Kullanıcının kendi şifresini daha sonra değiştirebilmesi - Baskı Önizleme +- AccessTr.neT (https://accesstr.net) +-- Forum: Microsoft Access (https://accesstr.net/forum-microsoft-access.html) +--- Forum: Access Cevaplanmış Soruları (https://accesstr.net/forum-access-cevaplanmis-sorulari.html) +--- Konu Başlığı: Kullanıcının kendi şifresini daha sonra değiştirebilmesi (/konu-kullanicinin-kendi-sifresini-daha-sonra-degistirebilmesi.html) |
Kullanıcının kendi şifresini daha sonra değiştirebilmesi - hasanzengi - 22/07/2009 Merhaba kullanıcı şifreli giriş ve yetkilendirmeyi yaptım, kullanıcı daha sonra kendi şifresini nasıl değiştirecek bunu nasıl yapabilirim yardımcı olabilirmisiniz. Teşekkürler. Cvp: Kullanıcının kendi şifresini daha sonra değiştirebilmesi - esrefigit - 22/07/2009 Örneğinizi ekleyin ya da; Elinizdeki mevcut şifre giriş formunu kopyalayın. Fark olarak buna 3 tane metin kutusu koyun 1. Eski Şifre ( kullanıcının buraya mevcut şifresini yazması gerekli ki gerçekten o olduğunu bilelim) 2. Yeni Şifre 3. Yeni Şifre Tekrarı ( 2.si ile aynı olup olmadığını kontrol edeceğiz. Şifresini yanlış girmemesi için son kontrol) Tamam dediğinde ; 1. Eski şifresini doğru yazmış mı? Farklıysa uyarı verin 2. Yeni şifre ve eski şifre aynı mı? Aynıysa uyarı verin. 3. Yeni şifre ve yeni şifre tekrarı aynı mı? Farklıysa uyarı verin Yukarıdaki uyarılardan geçerse kullanıcı şifresini ado ile kaydedebilirsiniz. strSQL = "SELECT * FROM kullanıcılar " Set rstkayit = New ADODB.Recordset rstkayit.Open strSQL, CurrentProject.Connection, adOpenKeyset, adLockOptimistic With rstkayit .Find "[kullanıcıid]=" & Me.kullanıcı.Column(1) .Fields("sifre")=me.yenisifre .Update End With Cvp: Kullanıcının kendi şifresini daha sonra değiştirebilmesi - Bilgisayarcı - 22/07/2009 Bu kadar düzgün türkçeyle yazılmış bir esrefigit cevabı için teşekkür ederiz Cvp: Kullanıcının kendi şifresini daha sonra değiştirebilmesi - esrefigit - 22/07/2009 teşekkür ederim Cvp: Kullanıcının kendi şifresini daha sonra değiştirebilmesi - hasanzengi - 23/07/2009 Çok teşekkürler, şifre sorğulamaları yaptım ama sadece yeni şifreyi tabloya update edecek komutları tam yaptıramadım, yardımcı olabilirmisiniz. Sub YeniŞifreupdate() Dim rstkayit As String If Not IsNull(rstkayit![KULLANICIŞİFRESİ]) > 0 Then Set rstkayit = CurrentDb.OpenRecordset("select * from KULLANICILAR where ID=" + str(Me.ID.Value) + " ;") rstkayit.Edit rstkayit![KULLANICIŞİFRESİ] = LCase$(strKULLANICIŞİFRESİ) rstkayit.Update rstkayit.Close End If End Sub Private Sub Command5_Click() If IsNull(Me.Kullanıcı) Or Me.Kullanıcı = "" Then MsgBox "Lütfen Kullanıcı Adı Giriniz.", vbOKOnly + vbInformation, "Bilgilendirme Penceresi" Me.Kullanıcı.SetFocus Exit Sub End If If Me.Şifre.Value = Dlookup ("KULLANICIŞİFRESİ", "KULLANICILAR", "[ID]=" & Me.Kullanıcı.Value) Then ID = Me.Kullanıcı.Value YeniŞifretekrarı Else MsgBox "Hatalı Şifre! Lütfen Tekrar Deneyiniz", vbOKOnly + vbCritical, "Bilgilendirme Penceresi" End If intLogonAttempts = intLogonAttempts + 1 If intLogonAttempts > 3 Then MsgBox "KAPATILACAK.", vbCritical, "Bilgilendirme Penceresi" Application.Quit End If End Sub Private Function YeniŞifretekrarı() If [Yenişifre] = [Şifre] Then MsgBox "Yenişifre ile Eskişifre Farklı olmalıdır" DoCmd.GoToControl "Yenişifre" Else If IsNull([Yenişifre]) Or IsNull([Şifretekrarı]) Then MsgBox "Yeni şifre ve Yeni şifre tekrarını girmelisiniz." DoCmd.GoToControl "Yenişifre" Else If [Yenişifre] <> [Şifretekrarı] Then MsgBox "Yenişifre ile Yenişifre Tekrarı aynı olmalıdır" DoCmd.GoToControl "Yenişifre" Else If [Yenişifre] = [Şifretekrarı] Then MsgBox "Şifreniz değiştirilmiştir" DoCmd.OpenForm "SİFREGİRİŞ" DoCmd.Close acForm, "SİFREDEĞİŞTİRME" YeniŞifreupdate End If End If End If End If End Function Cvp: Kullanıcının kendi şifresini daha sonra değiştirebilmesi - hasanzengi - 24/07/2009 Arkadaşlar, update kısmında takıldım, bana yardımcı olabilirmisiniz, örneği ekleymiyorum aşağıdaki komutu çalıştıramıyorum, formun olayına Option Compare Database Public rstkayit As ADODB.Recordset Dim strSQL As String bunu yazdığımda aşğıdaki hatayı veriyor, This error occurs when an event has failed to run because Microsoft Office Access cannot evaluate the location of the logic for the event. For example, if the OnOpen property of a form is set to =[Field], this error occurs because Access expects a macro or event name to run when the event is fired. Sub şifreupdate() strSQL = "SELECT * FROM KULLANICILAR " Set rstkayit = New ADODB.Recordset rstkayit.Open strSQL, CurrentProject.Connection, adOpenKeyset, adLockOptimistic With rstkayit .Find "[ID]=" & Me.Kullanıcı.Column1() .Fields("KULLANICIŞİFRESİ") = Me.Yenişifre .Update End With End Sub |