Gelen Formdaki veriyi açık olan bir başka forma göre süzme.. Hep ilk kayıt geliyor..

Katılım
30 Ocak 2006
Mesajlar
937
Excel Vers. ve Dili
Access 2003
Arkadaşlar.. Bu gece böyle bir problemle uğraştım. Kafam ambalaj durumda. Bu hafta sonu herkesin problemine birşeyler yazdım. İnşallah birileri de benim problemime bir çözüm önerir.

Aslında kimden aldım bilmiyorum ama bu sitedeki bir arkadaşın eklediği bir örnekten hoşuma gidip bir login formu almıştım. Bu formda bir tablodaki bir kayda bakarak kullanıcı adını ve şifreyi kontrol ediyoruz. Benim problemim şifre değiştirmek veya hesap silmek isteyince bir güvenlik sorgulaması ile önce kullanıcının bu hesabı silmeye yetkisi olup olmadığını öğrenmek. Ali diye programa girmiş, Veli'nin hesabını silecek. Önce Veli'nin kullanıcı adını ve şifresini girmeli ki ondan sonra silmek veya değiştirmek için onun hesabına ulaşsın istiyorum. Örnekte daha ayrıntılı açıkladım. Aslında veri yapısında kullanıcı yetki değerleri de var. Mesela admin ile user arasında fark da olabilir. Ama ben ona gelmeden önce şu anki problemi aşmak istiyorum. Örneği inceleyen anlayacaktır. Teşekkürler...
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
Benim problemim şifre değiştirmek veya hesap silmek isteyince bir güvenlik sorgulaması ile önce kullanıcının bu hesabı silmeye yetkisi olup olmadığını öğrenmek. Ali diye programa girmiş, Veli'nin hesabını silecek. Önce Veli'nin kullanıcı adını ve şifresini girmeli ki ...
Burada mantık hatası var. Normal mantıkta, yönetici dahil hiç kimse, bir başkasının şifresini bilememeli. Şifre değiştirilecekse, kullanıcı kendi şifresini değiştirmeli.
Eğer şifresini unuttuysa, şifremi unuttum deyip yeni bir şifre edinebilmeli sistem tarafından. Tabloya bakıldığında bile şifre şifreli olmalı. md5 gibi veya başka bir sistem ile.
 
Katılım
30 Ocak 2006
Mesajlar
937
Excel Vers. ve Dili
Access 2003
Evet.. Kodlar kime ait bilmiyorum ama geliştirmek istediğimde böylesi bir problemle karşılaştım. Tablo üzerinden görülmesi çok önemli değil benim için. Yapmaya çalıştığım şey, programa bağlanan kişinin yalnızca kendi şifresini değiştirebilmesidir. Doğal olarak herkes sadece kendi kullanıcı adını ve şifresini yazacağı için kendi hesabı gelmeli. -Bu arada hoşgeldin tekrar. Özlettin kendini-
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
Hoşbulduk sağolasın.

Programa ilk girişte kullanıcı şifresi ile gireceği için, 2. kere neden kullanıcı adı şifre soruluyor? Direkt olarak şifre değiştirme ekranı gelsin. Şifreyi alsın ve update yapsın. Sıradan bir form işlemi yanlış anlamadıysam.
 
Katılım
30 Ocak 2006
Mesajlar
937
Excel Vers. ve Dili
Access 2003
Yooo. Farkeden ne ki. Zaten tıkandığım yer orası ya.. Aktif kullanıcının verilerini getiren, silmeye veya şifre değiştirmeye müsaade eden, verilerle dolu formu getiremedim. Zaten onun önünde sorulan kullanıcı adı ve şifre formu işin hikayesi. O olarak da olmadan da asıl gelmesi gereken formu nasıl dolduracağım. Bunun için ilk girişteki login formunu kapatmadan gizleyip sürekli login olan kullanıcı verisini elimin altında tutabilirim, ama başka yolu da olmalı... 1-2 yıl önce bununla ilgili bir yewrde sanırım yine modalı, siz ve ben konuşmuştuk. Orada da bir formun sürekli açık ve simge durumunda bekletilmesine gerek olmadığı, bu işi başka türlü yapabileceğimiz söylenmişti ama dedim ya, hatırlayamıyorum.. O yöntemle aktif kullanıcının verileri getirilebilir çok basit olarak. Olmazsa öyle yapmak mümkün son çare olarak....
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın mehmetdemiral,

Bir tablo oluşturabilir ve login olan kullanıcının verilerini oraya kaydedebilirsiniz. İsterseniz her defasında tabloyu imha edip her login olayında yeni bir tablo oluşturabilirsiniz.

Bu bilgileri access dışındaki bir text dosyasına kaydedebilirsiniz. Çıkarken bu bilgiler silinebilir.

İyi çalışmalar
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
Sorun ilk girişteki kullanıcı adını veya kodunu biryerde tutmaksa eğer, global bir değişkende tutulabilir. Her yerden rahatlıkla kullanabilirsin.
 
Katılım
30 Ocak 2006
Mesajlar
937
Excel Vers. ve Dili
Access 2003
Aslında sorunun kaynağını buldum.. Kodlara bakılırsa kullanıcı adına değil passworde bakarak veriyi getiriyor. O zaman da aynı passworde sahip kullanıcılardan ilkini getiriyor. Farklı passworde sahip kullanıcılarda passworde bakarak doğru çalışıyor. Ben kullanıcı adına göre kodları değiştirmeye çalışıyorum. Kodlar şöyle



If Me.txtPassword.Value = DLookup("strEmpPassword", "tblEmployees", "[lngEmpID]=" & Me.cboEmployee.Value) Then
If Me.cboEmployee.Value = DLookup("strEmpname", "tblEmployees", "[lngEmpID]=" & Me.cboEmployee.Value) Then

lngMyEmpID = Me.cboEmployee.Value


'DoCmd.Close acForm, "frmLogon", acSaveNo
DoCmd.OpenForm "şifre değişimi"

Else
MsgBox "Parola Yanlış. Lütfen Doğrulayınız", vbOKOnly, "YANLIŞ BİLGİ"
Me.txtPassword.SetFocus
End If



Özellikle şu bölüm
If Me.txtPassword.Value = DLookup("strEmpPassword", "tblEmployees", "[lngEmpID]=" & Me.cboEmployee.Value) Then
If Me.cboEmployee.Value = DLookup("strEmpname", "tblEmployees", "[lngEmpID]=" & Me.cboEmployee.Value) Then


Burada da görüldüğü gibi dlookup ile tablodan password alanına bakıyor. Orayı değiştirmek lazım. Onunla uğraşıyorum şu anda..
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
Bence bu kodlarla hiç vakit kaybetme. Sistem yanlış ve bu kodları düzeltmektense yeni bir sistemi oturtmak daha mantıklı.

Ama ille de bunu düzeltecem diyorsan:
- güvenlik ekranındaki combobox ta id bilgisi var.
- bu id bilgisini, şifre değiştirme formuna pass et. openargs ile veya demin de dediğim gibi global bir değişken ile yapabilirsin bunu.
- aslında, bu ekrana hiç parametre geçirecem diye de uğraşma. Boş bir form aç, şifre sor, bu şifreyi Docmd.runsql("update .....") ile update et.
 
Katılım
30 Ocak 2006
Mesajlar
937
Excel Vers. ve Dili
Access 2003
Sağolasın arkadaşım. Fikirlerin için teşekkür ederim. Deneyelim bakalım neler yapacağız...
 
Katılım
14 Ağustos 2007
Mesajlar
291
Excel Vers. ve Dili
office 2003, sql server
merhaba yeni54, mehmetdemiral dostlarım.. görüşmeyeli baya bi kilometreler katetmişsiniz :).. sizleri özledim dostalarım.. accesste müthiş bir projem var.. olay şöyle; ne tablo ne sorgu hiç bir veri görünmüyor.. yani kullanıcı dünyanın en professonel access ustası olsa bile verilere belirttiğim formlar dışında ulaşamayıor.. ve veriler tamamen saklı.. yani access içinde değil.. sql serverde saklı . sadece access formları çalışıyor.. yani veriler 99% güvenli gibi.. hatta direkt visual basic ile kurabiliyorsun.. çünkü visual basicte sadece formlarla çalışıyorsun.. veritabanı olarak sql server kuruyorsun.. müthiş bişi :)
saygılar..
 
Katılım
30 Ocak 2006
Mesajlar
937
Excel Vers. ve Dili
Access 2003
Sevgili dostum.. Biz de seni çok özledik, nerelerdesin. Hoşgeldin.
Proje güzel. SQL server güvenliğini kullanacaksın yani bu iş için. Ben daha önce böyle bir çalışmayı hız için yapmıştım. Access yapısına birebir benzemediği için bazı sıkıntılar yaşamıştım ama sonra Access projesini gördüm. Baktım ki boşuna uğraşmışım meğer. Bütün bu işlemleri Access Projesi oluşturunca kendisi yapıyormuş. :))) Neyse yap bakalım, elimizden gelen birşey olursa yardıma hazırız..
 
Üst