Tek Satır Kod ile Ajax Kullanımı

04 Ağu 2010 Çar 6 yorum

Kendimin yazmış olduğu ve sitelerimde kullandığım AJAX fonksiyonumu kullanarak sitenizdeki gereksiz sayfa yenilemelerine son verebilirsiniz.

Ajax'ın temel mantığı istekleri sunucuya sayfayı yenilemeden göndermek. İlk olarak Google'ın kullandığı ve şu an çok popüler olan bu yöntem ile, kullanıcıların daha rahat gezebileceği siteler oluşturabilirsiniz.

Buradaki dosyayı sitenizin kök klasörüne kopyalayın ve sayfanızın <head></head> etiketlerinin arasına şu satırı yazarak çağırın.

<script type='text/javascript' src='ajax.js'></script>

Bu sayede sayfanızda ajax.js dosyasındaki ajaxla(); fonksiyonunu kullanabileceksiniz. ajaxla(); fonksiyonunun parametreleri şu şekilde:

ajaxla([gönderilecek değişkenler],[bekleme yazısının gösterileceği yerin id'si],[bekleme yazısı],[sunucudan çektiğimiz dosyanın gösterileceği yerin id'si],[çekeceğimiz dosya],[metod]);

Method GET veya POST olabilir. İkisinin kullanımı da aynı. Yalnız POST kullanacaksanız ? kullanmanyacaksınız.

Örnek Kullanım:

Örneğimizde linke tıklandığında "Merhaba AJAX" yazısını id'si "yazi" olan div elementine yazdıracağız. "Merhaba AJAX" yazısını GET ile gönderelim. Not: Kullandığınız PHP sunucunun açık ve çalışıyor olduğundan emin olun.

HTML dosyası içeriği:

<div id="yazi"></div>

<a href="javascript:void(0)" onclick="ajaxla('?metin=Merhaba AJAX','yazi','Bekleyiniz...','yazi','merhaba.php','GET');">Yazıyı getir</a>

PHP dosyası içeriği (merhaba.php):

<? echo $_GET["metin"]; ?>

Burada bekleme sırasında gösterilecek metin ile sunucudan gelen yanıtı aynı yerde gösterdim. Sunucudan yanıt geldiğinde "Bekleyiniz..." yazısı otomatik olarak kaybolacaktır.

Eğer POST metodu ile göndermeyi seçseydik linkimiz ve PHP dosyamız şu şekilde olacaktı.

HTML dosyası içeriği:

<div id="yazi"></div>

<a href="javascript:void(0)" onclick="ajaxla('metin=Merhaba AJAX','yazi','Bekleyiniz...','yazi','merhaba.php','POST');">Yazıyı getir</a>

PHP dosyası içeriği (merhaba.php):

<? echo $_POST["metin"]; ?>

Birden fazla değişlen göndermek için değişkenlerin arasına & işareti koyabilirsiniz. Örneğin;

ajaxla('metin1=Merhaba&metin2=AJAX','yazi','Bekleyiniz...','yazi','merhaba.php','POST');

PHP dosyanızda da gönderdiğiniz değişken ismine ve türüne göre değiişiklikler yapmak durumundasınız.

Örnek dosyayı indirmek için tıklayın.

26457 kez okundu.

6 Yorum Var

  1. delice demiş ki

    Hocam lütfen yardım eder misiniz.Kod çok güzel fakat benim şöyle bir sıkıntım var:
    Diyelim ki benim 3 tane php sayfam var.
    sayfa1.php
    sayfa2.php
    sayfa3.php
    Vermiş olduğunuz bu kod ile bunları index.php nin bir köşesine yazdıracağım.Yaptım olduda.Yalnız index.php ye girince bu kısım tamamen boş çıkıyor.Sadece linklere tıklayınca içerik ile dolmaya başlıyor.
    Benim istediğim index.php ye ilk girdiğimde burada sayfa1.php nin içeriği görünsün.Daha sonra linklere tıklayınca tıklanan linklerin sayfa içeriği görünsün.
    Koda ihtiyacım var düzenleme yapıp yazabilir misiniz ?

    • Ahmet Soyarslan demiş ki

      PHP deki include() fonksiyonu ile sayfayı index.php dosyanıza çağırabilirsiniz.

  2. sedat demiş ki

    Hocam merhabalar bu linki yeni gördüm fakat galiba daha öncelerden konulmuş bir yazı. Bu indirilen dosyayı şuan kontrol ettim, fakat çalışmıyor. Bir daha kontrol edermisiniz

  3. yunus dirican demiş ki

    çok teşekkürler

  4. yunus dirican demiş ki

    hocam bu şekilde javascript kodları çalışmıyor sebebi nedir acaba

    • Ahmet Soyarslan demiş ki

      Ajax ile getirdğiniz sayfada hemen çalışacak kodlar var ise çalışmaz.

      Jquery'nin Ajax fonksiyonunu kullanmanızı öneririm.

  5. eser demiş ki

    hocam örnek dosya link i çalışmıyor yenileyebilir misinz?

  6. Hakan demiş ki

    Güzel çalışma.teşekkürler:)



Yorum Yazın