Tek Satır Kod ile Ajax Kullanımı
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.
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 ?
PHP deki include() fonksiyonu ile sayfayı index.php dosyanıza çağırabilirsiniz.
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
Kontrol edip kısa zamanda sizi bilgilendireceğim.
çok teşekkürler
hocam bu şekilde javascript kodları çalışmıyor sebebi nedir acaba
Ajax ile getirdğiniz sayfada hemen çalışacak kodlar var ise çalışmaz.
Jquery'nin Ajax fonksiyonunu kullanmanızı öneririm.
hocam örnek dosya link i çalışmıyor yenileyebilir misinz?
Güncelledim, indirebilirsiniz.
Güzel çalışma.teşekkürler:)