AS3 ile Flash CS3/CS4 programlarında kullanıcının makinesine çerezler bırakabilir ve bazı işlemleri otomatik yapmasını sağlayabiliriz. Örnekte önce kullanıcı adı ve şifre soruluyor (kullanıcı adı: volkan, şifre: 1234), doğru kullanıcı adı ve şifresi bilinirse 2. kareye gidiyor. Buradaki çerez olayı giriş ekranında "Beni Hatırla" checkBox ı işaretlenerek girildiğinde sayfa yenilendiğinde direkt 2. kareye gitmesi sağlanıyor. İstenirse 2. karedeki "Beni Unut" seçeneğiyle çerez hafızadan silinebiliyor.
Kodlar Aşağıdadır:
1. Frame de (karede):
stop();
//İlk inputBox a imleç konumlandırılıyor.
stage.focus=user;
//Sabit kullanıcı ve şifre oluşturuyoruz
var kullanici:String="volkan";
var sifre:String="1234";
//so isimli çerez tutacak nesne oluşturuluyor, User ismindeki klasöre yazacak
var so:SharedObject= SharedObject.getLocal("User");
//İlk çalıştırıldığında çerezde kullanıcı ve şifre bilgileri gelmişse
if(so.data.isim==kullanici && so.data.siff==sifre){
//2. kareye atla
gotoAndStop(2);
}
//so.data bilgileri undefined yada başka birşey gelmişse 1. ekran gösteriliyor
//Giriş düğmesi etkinleştiriliyor
btn.addEventListener(MouseEvent.MOUSE_UP,git);
function git(e:MouseEvent):void{
//Eğer doğru kullanıcı adı ve şifresi girilmişse 2. kareye gidecek
if(user.text==kullanici && pass.text==sifre){
//Doğru kullanıcı adı ve şifresi ile birlikte Beni hatırla CheckBox ı işaretli ise
if(check1.selected){
//Kullanıcı adı ve şifre so nesnesine aktarılıyor
so.data.isim=user.text;
so.data.siff=pass.text;
//Çerez kaydediliyor
so.flush();
}
//Doğru kullanıcı adı ve şifresi girilmesine rağmen Beni Hatırla seçilmemişse
else if (!check1.selected){
//hafızadaki so nesnesinin içindekileri temizle
so.clear();
}
//2. kareye git
gotoAndStop(2);
}
else{
//Kullanıcı adı veya şifre yanlış girilmişse ekrana yazdırılıyor.
msj.text="kullanıcı adı veya şifre yanlış";
}
}
2. Karede
stop();
//Onayla düğmesine tıklandığında
btn2.addEventListener(MouseEvent.CLICK,temizle);
function temizle (e:MouseEvent):void{
//Beni Unut checkBox ı seçili ise
if(check2.selected){
//hafızadakileri temizle
so.clear();
msj2.text="Hafızadaki bilgiler silindi, sayfayı yenileyerek giriş ekranını görüntüleyebilirsiniz.";
}else{
msj2.text="Sayfayı yenileyerek denemelere devam ediniz";
}
}
Bu Makaleyi Tweet'le
22:07
Kaydol:
Kayıt Yorumları (Atom)




0 yorum:
Yorum Gönder