Bu makalemizde PHP-FLASH etkileşimini kullanarak basit bir düzeyde ziyaretçi defteri yapacağız

guest.fla’nın oluşturulması

* File-New(Ctrl+N) ile yeni bir flash dosyası oluşturun.
* Insert-New Symbol’e(Ctrl+F8) tıklayın.
* Çıkan pencerenin Name kısmına guestform yazın, Movie Clip’i seçin OK’e basın.
* Ctrl+F7 (Window-Components)’e basın.
* Ekrana 4 Label, 3 TextInput, 1 TextArea, 2 Button’ı Resim 1’deki gibi yerleştirin.
* Label’ların değerlerini labellar seçili iken sahnenin alt tarafında bulunan (varsayılan) Parameters – Text kısmından değiştirebilirsiniz.
* TextInputların Instance Name’lerini ad, soyad, eposta olarak oluşturun.

Php Flash kullanarak ziyaretçi defteri yapımı

* TextArea’ya mesaj ismini verin.
* Butonlardan birine gonder diğerine temizle ismini verin.
* İlk frame’i seçin F9(Window-Actions)’a basın.

Php Flash kullanarak ziyaretçi defteri yapımı

* Aşağıdaki kodları girin.

function tikla(){
kaydet=1;
gonderad=_root.guestwindow.ad.text;
gondersoyad=_root.guestwindow.soyad.text;
gondereposta=_root.guestwindow.eposta.text;
gondermesaj=_root.guestwindow.mesaj.text;var hatam:Hata = new Hata();
if(hatam.epostaHatasi(gondereposta)==1) kaydet=0;
if(hatam.boslukHatasi(gonderad,gondersoyad,gondermesaj)==1) kaydet=0;
if (kaydet==1) {
_root.guestwindow.loadVariables(“kaydet.php?ad=”+gonderad+
“&soyad=”+gondersoyad+
“&eposta=”+gondereposta+
“&mesaj=”+gondermesaj,”post”);

}
}
function temiz(){
_root.guestwindow.ad.text=””;
_root.guestwindow.soyad.text=””;
_root.guestwindow.mesaj.text=””;
_root.guestwindow.eposta.text=””;
}
_root.guestwindow.onData = function() {
var basari:Hata = new Hata();
basari.kayitDurumu(durum);
}

_root.guestwindow.temizle.addEventListener(“click”,temiz);
_root.guestwindow.gonder.addEventListener(“click”,tikla);

* Scene 1’e tıklayıp ana sahneye dönün.
* Ctrl+F8’e(New Symbol) basın.
* Çıkan pencerenin Name kısmına show yazın, Movie Clip’i seçin OK’e basın.
* Components penceresinden bir label ve bir TextArea ekleyin.(Resim 2)
* Label’ı mesaj olarak isimlendirin ve TextArea’ya pano ismini verin.
* Birinci Frame’e tıklayın ve aşağıdaki kodları girin.

_root.guestshow.onData=function(){
_root.guestshow.pano.text=kayitlar;
}

* Scene 1’e tıklayıp ana sahneye dönün ve Components’ten(Ctrl+F7) 2 tane buton ekleyin.
* Button’ların instance name’lerini gonder ve ekle olarak belirleyin.
* Button’ların label’larını Kayıtları Göster ve Yeni Kayıt Ekle olarak değiştirin.(Butonlardan herhangi biri seçili iken Parameters-Label)
* Resim1 veya Resim2’deki gibi sağ tarafa yerleştirin.
* Ana sahnede iken ilk frame’i seçin ve aşağıdaki kodları girin.

_root.guestwindow._visible=false;
_root.guestshow._visible=false;function kayitGoster(){
_root.guestwindow._visible=false;
_root.guestshow._visible=true;
_root.guestshow.loadVariables(“guest.php”,”post”);

}

function kayitEkle(){
_root.guestwindow._visible=true;
_root.guestshow._visible=false;
}
_root.goster.addEventListener(“click”,kayitGoster);
_root.ekle.addEventListener(“click”,kayitEkle);
_root.loadVariables(“guest.txt”);

* Şimdi Library(Ctrl+L)’den guestform ve show pencerelerini ana sahneye yerleştirin.
* guestform penceresinin Instance Name’ine guestwindow yazın.
* show penceresinin Instance Name’ine guestshow yazın.
* File-Save-guest.fla olarak kaydedin
* Publish etmek(yayınlamak) için (guest.html ve guest.swf oluşturmak için ) shift+F12’ye basabilirsiniz(sayfalar otomatik olarak kendinden oluşur) yada File-Publish ayarlarından da yapabilirsiniz.
* Dikkat: Bir sonraki adım olan “Hata.as ın oluşturulması” nı guest.fla’yı oluşturmadan önce yaparsınız süreç içerisindeki muhtemelen oluşabilecek hatalardan uzak kalırsınız.

Hata.as’ın oluşturulması

* “as” uzantılı dosyalar Flash içinde kullanılan Action Script dosyalarıdır. Burada oluşturduğum dosya aslında bir class’dır.
* Yukarıda oluşturduğumuz dosyanın bir yerinde şu kodlar vardı; “var hatam:Hata = new Hata();”
* Buradaki Hata bir class(sınıf)’ dır.
* Peki buna neden ihtiyaç duyduk? Profesyonel programcılıkta çok iyi bir hiyerarşik örgütlenme becerileriniz olmalı. Burada da buna örnek vermek istedim. Çünkü kodlar arttıkça sorunlar ve hatalar artar. Düzeltmeler bir hayli zaman alır. Program yavaş çalışır ve daha çoğaltabileceğimiz bir çok soruna davetiye çıkartırız. Bunları engellemek için ve yavaş yavaş daha üst düzey programlar yazmaya başladığımız için bu becerileri kazanmamız gerektiğini düşünüyorum.
* Şimdi Flash programı içerisinden New -ActionScript File’ı seçin ve aşağıdaki kodları yapıştırın.

class Hata {
var epostaHatasi=function(posta:String){
if (posta.indexOf(“@”,0)==”-1″) {
mx.controls.Alert.show(“Yanlış bir eposta adresi girdiniz.Lütfen tekrar giriniz”,”E-Posta Hatası”);
break;
return 1;
}
};
var boslukHatasi=function(ad:String,soyad:String,mesaj:String){
if ((ad==””) || (soyad==””) || (mesaj==””)) {
mx.controls.Alert.show(“Boş alan bırakamazsınız.Lütfen alanları doldurunuz!”,”Boşluk Hatası”);
break;
return 1;
}
};
var kayitDurumu=function(durum:String){
if (durum==”basarili”) {
mx.controls.Alert.show(“Kayıt başarılı”,”Kayıt”);
} else {
mx.controls.Alert.show(“Kayıt başarısız”,”Kayıt”);
}};
}

* Save-Hata.as olarak kaydedin ve burada Hata.as’ın “H” harfinin büyük olduğuna dikkat edin.

guest.txt’nin oluşturulması

* Bir metin belgesi oluşturun.

Php Flash kullanarak ziyaretçi defteri yapımı

* Kodlamasını UTF-8 yapın böylelikle Türkçe karakterleride kullanabilirsiniz.
* Diğer dosyaların bulunduğu klasöre guest.txt olarak kaydedin.

guest.php’nin oluşturulması

* guest.php dosyası oluşturun ve aşağıdaki kodları girin.

<?
$dosyaAdi=”guest.txt”;
$dosyaAc=fopen($dosyaAdi,”r”);
while (!feof($dosyaAc)){
$satir = fgets ( $dosyaAc, 10000 ) ;
$satir=trim($satir);
$metin.=$satir;
}fclose($dosyaAc);
echo “&kayitlar=$metin”;

?>

* Dosyayı aynı dizine kaydedin.

kaydet.php’nin oluşturulması

* kaydet.php dosyası oluşturun ve aşağıdaki kodları girin.

<?
$metin=”<b>Adi:</b>$ad<br><b>Soyadi:</b>$soyad<br><b>E-Posta:</b><i><font color=’#993333′>$eposta</font></i><br><b>Mesaj:</b>$mesaj<br><br>”;$dosyaAdi=”guest.txt”;
$dosyaAc=fopen($dosyaAdi,”a”);

if(fwrite($dosyaAc,$metin)){
echo “&durum=basarili”;
} else {
echo “&durum=basarisiz”;
}
fclose($dosyaAc);

?>

* Dosyayı aynı dizine kaydedin.

Nasıl Çalışıyor

* Çalışma ilkesini temel olarak aşağıdaki resimle ifade etmeye çalıştım.

Php Flash kullanarak ziyaretçi defteri yapımı

* Kodları yazarken açıklamalarda bulunmadım(yorum satırları gibi). Program yazmanın ara koşullardan birini ihmal etmiş oldum aslında. Bu benim için bir dezavantaj sizin içinse bir avantaj. Çünkü öğrenme kendine özgüdür, herşeyin hazır verilmesi anlamlı öğrenmeyi zorlaştırır ve öğreneni ezberlemeye iter. Açıklama yapmayı size bıraktım.Yorum satırlarını sizin yazabilmeniz sizin bu işi kavradığınızı gösterir.

EKRAN ÇIKTILARI

Resim 1: Kayıt Formu

Php Flash kullanarak ziyaretçi defteri yapımı

Resim 2: Kayıtların Gösterimi

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir