XML HTTP Request: Ornek Uygulama II
xmlhttprequest, daha yaygin bilinen adiyla ajax…
Ozel Pinar Ilkogretim Okulu‘nun duzenledigi bir seviye tespit sinavi icin online basvuru yapilabilecek bir uygulama istenmisti benden. bir kac saatlik bir calisma sonucu xmlhttprequest nesnesini kullanarak hazirladigim bu online kayit uygulamasini demo icin biraz kirpip herkesin yararlanabilmesi icin xmlhttprequest-ajax/php-integration/ altina koydum.
uygulamayi kisaca anlatmak gerekirse:
oncelikle, sinav icin kayit yaptirmak isteyen kullanicinin ad soyad telefon sinif vb. bilgilerinin alindigi formumuzu hazirladik.
- kullanici bilgilerini bu forma girdikten sonra gonder butonuna bastiginda xmlhttprequest objemiz olusturuluyor
- formu POST metodu ile sunucu tarafinda bulunan ve gorevi formdan gonderilen verileri
islemek olan php dosyamiza gonderiyor. - php dosyamiz ilk once formun post edilip edilmedigini kontrol ediyor.
- gonderilen form alanlarindaki verilerden bos olmamasi gerekenlerin bos olup olmadigini kontrol ediyor.
- eger bos olanlar varsa bunlari ekrana basiyor.
- xmlhttprequest-ajax objemiz bu ciktiyi alip formda belirtilen yere belirtilen formatta basiyor.
- eger bos alan yoksa, php dosyamiz bu sefer veritabanina bu bilgileri kaydedecek ve sonucu bize dondurecek olan php fonksiyonumuzu cagiriyor.
- buradan donen sonuc -olumlu veya olumsuz-, xmlhttprequest fonksiyonumuzda tanimlanan mesajimiz sayfada belirtilen yerde basiliyor.
uygulamanin ozelliklerine gelince:
- form xmlhttprequest-ajax modelinde sadece responseText ozelligini kullaniyor. yani burada kullandigimiz ve xmlhttprequest objesini olusturan kodumuz responceXML ozelligini desteklemiyor. bunu destekleyen kod icin bir onceki ornek uygulamama bakabilirsiniz.
- form validation sunucu tarafinda yapiliyor ve sorunlu bir alan varsa js ile ekrana basiliyor. sunucu tarafinda yapiliyor olmasi guvenligin yukseltilmesini saglamakta..
- form bilgilerini, xmlhttprequest objesinde POST yontemini kullanarak gonderiyoruz
uygulamanin daha da gelistirilebilecek ozellikleri:
- kayit basarili ise form alanlari bosaltilabilir
- sunucu tarafinda mukerrer kayit kontrolu yapilabilir (bu demo uygulamada yok!)
- kayit oncesinde sorun yoksa, kullaniciya onizleme yaptirilabilir. boylece kayit bilgilerini gozden gecirebilir ve bilgilerini degistirme firsati da sunulmus olur asil kayittan once…
her ne kadar basit bir uygulama olsa da xmlhttprequest objesinin formlarda post methodunu kullanmasi, php ile entegrasyonu, responseText ozelliginin kullanilmasi, basit dhtml/js fonksiyonlari acisindan bu yeni teknolojiye merakli arkadaslar icin yararli olacagini dusunuyorum..
sorulariniz ve yorumlariniz icin -yorumlar kismini kullanabilirsiniz…
ps: kodlarin aciklamasini ayrica bu yaziya ek olarak veya farkli bir yazida ozel olarak yapacagim…