Skip to main content

AccessTr.neT M.


Acemiler İçin Uygulamalar: Kullanıcı giriş ve şifre formu. Yetkilendirmeye göre işlem

Acemiler İçin Uygulamalar: Kullanıcı giriş ve şifre formu. Yetkilendirmeye göre işlem

#1
ACEMİLER İÇİN UYGULAMALAR 1
KULLANICI ADI VE ŞİFRE FORMU. YETKİYE GÖRE AÇILAN FORM.

Arkadaşlar merhaba
Herkesin sürekli soru olarak sorduğu şu kullanıcı ve şifre girişli ve yetkiye göre açılan form uygulaması konusuna el atmak istedim. Bu konuda adım adım uygulaması yapıyoruz.

A)Birinci adımda tablomuzu tasarlayalım ve tabloya şu alanları açalım:
1-Kullanıcı id (Otomatik sayı)
2-Kullanıcı adı (Metin)
3-Şifre (metin)
4-Yetki (Metin)

B)Tablomuza bağlı bir form yapalım ve formda şu alanlar olsun.
1-Kullanıcı adı (Açılan kutu)
2-Şifre (Maskelenmiş metin kutusu)

C)Şimdi formumuzu tablomuza bağlıyoruz ve alanlarımızı zevkimize göre yerleştiriyoruz. Bu arada açılan kutu alanının özelliklerinden sütun sayısını 4 olarak belirleyelim ve tablomuzdaki tüm alanları 4 sütun olarak ekleyelim. Görüntü olarak sadece kullanıcı adının görünmesi için birinci sütun olan id, üçüncü sütun olan şifre ve dördüncü sütun olan yetki alanlarının cm. olarak boyutları 0 cm olmalıdır.

NOT: Kullanıcı adları için ve yetki tanımları için başka bir form yapılmasını burada anlatmıyorum.

D)Şimdi formumuzu açalım. Kullanıcı adını seçtiğimizde hemen şifre alanına odaklanması için, kullanıcı adı alanının güncelleme sonrasında olayına

Visual Basic Code
Me.sifre.SetFocus

Komutunu yerleştirdik. Böylece kullanıcı seçildiğinde şifre alanına otomatik geçilir.

E)Bu arada bir kullanıcının şifresi yazılıp daha sonra kullanıcı adı tekrar değiştirildiğinde şifrenin silinmesi için kullanıcı adı alanına girildiğinde şu komut çalışmalı:

Visual Basic Code
Me.sifre = ""


F)Formumuz üzerine bir buton koyalım. Adı Giris olsun. Bu buton normalde pasif olmalı. Bunun için buton veri sekmesindeki etkin özelliği “hayır” olarak ayarlandı. Böylece açıldığında butonumuz pasif olacak.

G)Şifre yazılacak metin kutusunun veri özelliklerinden giriş maskesine “password” yazalım ki alan şifre alanı olarak maskelensin.

H)Şifre metin kutusunun güncelleştirme sonrasında olayına şu kodları yazalım:

Visual Basic Code
If Me.sifre = Me.kullanici.Column(2) Then
Me.giris.Enabled = True
Else
Me.giris.Enabled = False
End If


Adım adım açalım.

Visual Basic Code
1
2
3
4
5
6
7
8
9
10
If Me.sifre = Me.kullanici.Column(2) Then
'(Eğer şifre, kullanıcı açılan kutusundaki 2 nolu sütun ile aynı olursa)
Me.giris.Enabled = True
'(Giris isimli buton aktif olsun)
Else
(değilse)
Me.giris.Enabled = False
'(Giris butonu pasif olsun)
End if
'(if eylemi bitti)


Bu arada şifre alanından çıkıldığında olayına da şu kodları yazalım

Visual Basic Code
If Me.sifre <> Me.kullanici.Column(2) Then
Me.Çerçeve42.SetFocus
Me.sifre.SetFocus
End If


Adım adım açalım:

Visual Basic Code
1
2
3
4
5
6
7
8
If Me.sifre <> Me.kullanici.Column(2) Then
'(Eğer sifre, kullanıcı açılan kutusunun 2.nci kolonundaki değerle aynı değilse)
Me.Çerçeve42.SetFocus
'(Form üzerinde bulunan çerçeve42’ye odaklan)
Me.sifre.SetFocus
'(Form üzerindeki sifre alanına odaklan)
End If
'(if eylemi bitti)


Bu arada dikkat edildiyse çerçeve42 alanı var. Bu alan sadece odağı değiştirmek için konuldu. Mümkün olduğunda küçülterek minik bir nokta haline getirmek veya formun kenarına süs olarak koymak sizin tercihiniz. Ama gizlemeyin, kod hata verir.

I)İşlem bu kadar. Ancak bu arada kullanıcıyı ve yetkisini programımızın bazı yerlerinde kullanmak için bir yerlere atayalım. Bunun için bir modül oluşturalım ve içine sadece şunları yazalım:

Visual Basic Code
 Global kullaniciadiD, yetkiD as string


Buradaki büyük D harflerini Değişken olduklarını göstermek için koydum. Şart değil…

J)Şimdi artık programımızın giris adlı butonuna basabilir duruma geldik. Doğru şifreyi yazdıysak giris isimli buton görünür oldu ve butona bastık. Böylece mesela adı “FRM_ANA” olan bir formumuz açılsın ve oradan programımızın diğer işlevlerine ulaşılsın.
DoCmd.OpenForm “FRM_ANA”

Ama bu arada FRM_LOGON adını verdiğim giriş şifre formumuz da kapanmalı di mi?

Visual Basic Code
DoCmd.Close acForm, "FRM_LOGON"


K) Bu arada bu kodların arkasına değişkenlerimize de değer atayalım:

Visual Basic Code
kullaniciadiD= me.kullanici
yetkiD = me.kullanici.column(3)


Artık program içindeki nereden isterseniz oradan sadece KullaniciadiD ve yetkiD yazarak sisteme giren kullanıcı adını ve yetkisini öğrenebiliriz. Bu yetkiye göre de hangi butonları veya işlevleri kullandıracaksak ona göre ayarlamalar yaparız.
Bununla ilgili olarak örnek üzerinde bazı küçük uygulamalar yaptım. Ana form üzerindeki 3 buton user oturumunda pasif oluyor, etikette duruma göre mesaj veriliyor ve “Hoş geldin” şeklinde isimle hitap ediliyor. Bunlar basit yöntemler.. Çok daha karmaşık şeyler de yapılabilir. Ancak bu dersi daha çok yeni başlayanlara düşündüğüm için, basit tuttum.

Örnek çalışma da ektedir. Güle güle kullanın.


NOT: Bu kadar aradan sonra bu konuya ekleme yapıyorum. Tarih 04.12.2015... İstek üzerine bu eski örnek çalışmaya Kullanıcı yönetimi de eklendi. O da ektedir. 

.rar örnek logon_ofis2010_MEHMETDEMİRAL.rar (Dosya Boyutu: 80,75 KB | İndirme Sayısı: 676)
.rar örnek logon_MEHMETDEMİRAL.rar (Dosya Boyutu: 83,79 KB | İndirme Sayısı: 1.502)
.rar örnek logon_Kullanıcı Yönetimli.rar (Dosya Boyutu: 79,34 KB | İndirme Sayısı: 180)
İnadına, ille de Accesstr.net...
Cevapla
#2
Sn:mehmetdemiral
Anlatım için teşekkürler.

OĞULCAN & OLCAYTUĞ

Oğulcan Excel Web Sitesi
Excel İle Programlama
Cevapla
...........
#3
Teşekkür ederim Oğulcan..

İnadına, ille de Accesstr.net...
Cevapla
#4
Sn mehmet hocam, detaylı anlatımınız ve örneğiniz için çok teşekkürler..

Cevapla
...........
#5
Sn Mehmet hocam, detaylı anlatımınız ve örneğiniz için çok teşekkürler.. Saygılar...

Bilgi paylaşıldıkça çoğalır....
Her engel, yaşam koşullarınızı daha iyileştirecek bir fırsattır.


Access için her zaman lazım olacak konu başlıkları listesi


Cevapla
#6
Mehmet hocam, anlatım ve örneğiniz için çok teşekkürler..

Cevapla
...........

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da