şifre formu

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
onur301
Üye
Mesajlar: 34
Kayıt: 31 Ara 2004 01:03
Konum: Tokat

şifre formu

Mesaj gönderen onur301 »

selam arkadaşlar

benim bir şifre formu yapmam lazım şöyleki;
bir tamam ve iptal butonu düşünürsek birde doğal olarak şifre gireceğimiz bir edit olacak... :) asıl problemse şu...

edit1 girilen şifre en az 8 karakter olacak ve ilk 3 karakter rakam olmak zorunda.. lütfen yardım. acil.

Teşekkürler
Kullanıcı avatarı
karflake
Üye
Mesajlar: 222
Kayıt: 15 Haz 2003 03:57

Mesaj gönderen karflake »

Şifre sordurmak için (Delphi7'de) File-New-Other ile açılan pencerenin dialogs sekmesindeki Password Dialog'u kullanabilirsiniz.

Ancak şifrenin en az 8 karakter ve ilk 3 karakterinin rakam olmak zorunda olması gerekliliğinin ne gibi bir soruna yol açacağını anlayamadım :?: . Zaten girilen şifre doğru değilse işlemi yaptırmazsınız, şifrenin hangi biçimde olacağı neden önemli ki? Şifrenin formatını yukarıdaki gibi belirtmek kırılmasını kolaylaştıracaktır.
Kullanıcı avatarı
muskut
Kıdemli Üye
Mesajlar: 1118
Kayıt: 22 Ara 2003 09:50
Konum: Sandalyemden
İletişim:

Mesaj gönderen muskut »

algoritma basit:

1. text'in uzunluğunu kontrol edeceksin,
2. uzunluğun 3 ve 3 ten küçük olduğu durumlar için sadece karaketer olarak asscii tablosundan rakamların olduğu aralığı alacaksın. Burada unutmaman gereken önemli bir nokta kullanıcının Del ve Backspace tuşlarınıda kullanabilmesidir.
3. karakter uzunluğu 3 ten büyük ve 9 dan küçük olduğu durumlardada herşeyi yazmasına izin vereceksin.

denemedim ama inş. çalışır :)
Kullanıcı avatarı
Fatih!
Kıdemli Üye
Mesajlar: 1172
Kayıt: 26 Kas 2004 10:46
Konum: Malatya
İletişim:

Mesaj gönderen Fatih! »

:ara yanlış hatırlamıyorsam daha önce sorulmuştu
Kullanıcı avatarı
macsonfor
Üye
Mesajlar: 118
Kayıt: 14 Haz 2004 04:59

Mesaj gönderen macsonfor »

Muskut arkadaşıma katılıyorum hem birde ilk 3 karakter neden rakam olmak zorunda yani ne getirisi olacak...
Interbase-Firebird için ;
veritabanınızda bir tablo oluşturun ve parola adında bir varchar alan tanımlayın boyutu size bağlı sonra kısaca örnek verecek olursak:

Kod: Tümünü seç

//Eğer Boşsa
if edit1.text='' then showmessage('şifre giriniz')
else
//Eğer Yanlışsa
if edit.text <> Password.FieldByName('Parola').asstring then
showmessage('parola yanlış)
else
//Eğer Doğruysa
if edit1.text = Password.FieldByName('Parola').asstring then
Anaform.Show;
PasswordForm.Hide;
Şahsım adına bu şekilde kullanıyorum zaten bu şifrenin amacı yönetici haricinde herkesin programa girmesini engellemek.
Kolay Gelsin...
Bilgi Paylaşıldıkça Çoğalır
Hakan Can
Üye
Mesajlar: 634
Kayıt: 04 Mar 2005 04:27
Konum: Ankara

Mesaj gönderen Hakan Can »

Edit'in OnChange event'ine şu kodları yazarsanız işiniz görülebilir:

procedure TForm1.Edit1Change(Sender: TObject);
var
St: string;
begin
St := Edit1.Text + 'AAA';
Button1.Enabled := (Length(St) >= 8 + 3) and (St[1] in ['0'..'9']) and (St[2] in ['0'..'9']) and (St[3] in ['0'..'9']);
end;
Kullanıcı avatarı
onur301
Üye
Mesajlar: 34
Kayıt: 31 Ara 2004 01:03
Konum: Tokat

Mesaj gönderen onur301 »

üstad çok saol parmaklarına sağlık. bu olay ne kadar kolaymış.. ben de farklı yoldan denemiştim ama iç içe for döngülerinden çıkamamıştım... :)
Çok Saol Tekrardan...
Cevapla