şifre işlemi

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
ishak27
Üye
Mesajlar: 21
Kayıt: 01 Nis 2007 11:58
Konum: Gaziantep
İletişim:

şifre işlemi

Mesaj gönderen ishak27 »

Öncelikle Böyle mini bir Form Oluşturdum

Resim

Daha Sonra

Button1 olan Tamam Butonuna Şu Kodları yazdım

Kod: Tümünü seç

procedure TForm1.Button1Click(Sender: TObject);
begin
if edit1.Text='demo'  then
if edit2.Text='123456' then
showmessage('Tebrikler Kullanıcı Adınızı ve Şifrenizi Başarı İle Girdiniz.'); 
begin
if edit1.Text='' then
if edit2.Text='' then
showmessage('Lütfen Kullanıcı Adı ve Şifrenizi Giriniz');
end;
end;
end.
Daha sonra ana form açıldığında kullanıcı için şifre değiştirmesi ile ilgili bir form oluşturdum yapamadığım olay şu

(Edit48.text) Eski Şifre :123456
(Edit49.text )Yeni Şifre : Kullanıcı Belircilicek
(Edit50.text) Yeni Şifre Tekrar : Kullanıcı Belirlicek

kullanıcının yazmış olduğu şifreyi nasıl ilk girişte kontrol ettiricem şimdiden tşk ederim (SQL yok)
Delhici
Üye
Mesajlar: 176
Kayıt: 20 Eyl 2003 09:04

Re: şifre işlemi

Mesaj gönderen Delhici »

Bunun için ya bir veritabanı kullanman gerecek yada bir ini dosyası.

Önce Şifreni criptolayıp bir ini dosyasında tutarsın. Daha sonra şifre değiştirilmek istendiğinde de edit48 kutusuna yazdığın değeri, bu ini dosyasından kontrol ettirirsin.

En sonra da

edit49 ve edit50 kutularına da yeni şifreyi yazıp bu ini dosyasına tekrar kaydettirirsin.

Kolay gelsin.
http://www.bargem.info
Yaşıyorum..... İnadına değil yaptıklarım. Herşey istediğim için oluyor. İstediğim için türkü dinliyorum. İstediğim için çalışıyorum. İstediğim için yaşıyorum ve istediğim için seni seviyorum...
Kullanıcı avatarı
freeman35
Admin
Mesajlar: 2356
Kayıt: 12 Haz 2003 04:05
Konum: merkez camii yanı

Re: şifre işlemi

Mesaj gönderen freeman35 »

yeni öğrenmeye başlamışsın önce kod yazma alışkanlığı edin bence,ileride çok faydasını görürsün
edit1, edit2 vs yerine kendine bir yapı sabitle,örnek olsun diye benim mantığım şöyle
Edit ler için EDT_
Label lar için LBL_ yani genelde ilk üç harfi bana class ı hakkında ip ucu veriyor, sonrasına EDT_Kullanici_Adi , EDT_Sifre şeklinde ismlendirmeye git.Yazdığın kod basit olduğundan karmaşa gibi gelmez ama editler labeler çoğaldığında aranır durursun.
diğer konuysa şu bilgisayarın aklı olsaydı senden program istemezdi değil mi? :) Yazdığın her kodu yazmadan önce kafanda bilgisayarın çalıştıracığı şekilde çalıştır yani önce kafanda kurgula, sonra yazmaya başla, IDE sana yazılım hatalarında zaten yardım edicektir. sorunda cevaplarken şöyle düşün, kullanıcı adını girsin sonrada şifresini girdikten sonrada tamam desinki bende girişin bittiğini anlayıp doğrumu karşılaştırayım,Tamam a bastı ee önce adını kontorl edeyim boşmu girmiş ozaman "adam gibi adını gir,dellendirme beni" de tekrar adını sor,ha adını girdiyse şifresine bak,şifre boş girlmnesine izin vereyim mi? evet ozaman şifrede boşsa burda işim bitti girişi onaylıyorum, hayırsa girilen şifre doğrumu? evetse işim bitti hayırsa yanlış şifre girdi tekrar sor .......
işte programın kurgulanmasının en basit hali :) gerisi bu aklındakini aptal bilgisayarın anlıyacağı şekilde tercüme edip yazmazk.

sorunda " şifreyi nasıl ilk girişte kontrol ettiricem" yukarıda yazdım, zaten sende yazdığın kodda yapmışsın, sadece biraz daha dikkat et herşeyin 2 olasılığı vardır, asla bunu unutma aklına gelenin mutlaka terside olabilir.
if edit1.Text='' then begin
if edit2.Text='' then begin
end;
end;
senin yadığında çalışır ama bu şekilde alışırsan daha net görürsün

Kod: Tümünü seç

if Trim(EDT_Kullanici_Adi.Text)='' then begin//Kullanıcı adı girmediyse

   if Trim(EDT_Sifre.Text)='' then begin//Şifreyi girmediyse

   end else begin//Şifre girildiyse

   end;
end else begin //Kullanıcı adı girildiyse

end;
trim e helpten bakarsın ne işe yaradığına

gelelim ne ile değiştirdiğine daha doğrusu değiştirse ne yapıcaz, Komut yada özel isimleri Türkçeleştirmek bu gibi durumlarda işe yarıyor, şöyleki, değiştirdiğin şifreyi HAFIZA sında tutsun ki daha sonra hatırlayıp girdiğiyle karşılaştırabileyim.Demek ki değişikliği bi yere KAYIT etmem gerek, nereye? önce olasılıklar neler onu tespit et sonra kötü seneryolarla onların içinde sana faydalı olanı kullan, işte burda işe tecrübe girer.ini ye yazarsa okunması kolay olur ini silinir başka makinaya kopyalanır registry ye yazarsa formattan sonra uçar, exe başka makinaya kopyalanırsa bunlarda daha yazarken aklıma gelen olasılıklar.
Umarım fikir vermiştir

Kolay gele
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5

Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Cevapla