PHP Sayfa Değişmeden Veri Çekme

Yazılarımız ve Makalelerimiz.

Anasayfa Blog Blog PHP Sayfa Değişmeden Veri Çekme
0 Yorum 150 Okuma

Facebook vb. sitelerde sayfa değişmeden içeriğin güncellenmesi gibi olaylar özelleştirilmiş javascript kütüphaneleriyle ve AJAX ile sağlanır. En ünlü javascript kütüphanesi olan jquery, bu iş için en az uğraş gerektiren kodlamayı bize sağlayabilir.

JQUERY Nedir?

İnternet Explorer 6 vb. tarayıcılarının uyumsuzluğunun giderilmesi için çözümler üreterek gelişmiş bir kütüphane sistemidir. Bu şekilde yaratılan bu kütüphane google desteği ile birlikte webmasterların gözdesi olmuş durumda. Bizleri uzun kod satırların kurtaran bir kullanım kolaylığı vardır. $(“#menu”).show(); gibi kısa bir kod ile birlikte visible değişikliğini sağlayabilmemiz, kütüphanenin her geçen saniye güncellenmesi veya yeni sürümünün çıkması, geri dönük desteğin kesin olarak sağlanması gibi sebepler, en ünlü websitelerini bile bu kütüphaneyi kullanmaya itmiştir. Bugün bu kütaphanenin olmadığı site bulmak yok denecek kadar azdır.

 Şimdi 2 adet dosya oluşturalım. Birisine index.php diğerine veriler.php dosyaları adını koyalım.

İndex.php dosyasına aşağıdaki kodu kopyalayalım.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Jquery Veri Çekme</title>
<script src="http://code.jquery.com/jquery-1.9.1.min.js" type="text/javascript"></script>
<script>
$(document).ready(function() {
        $("#result").load("veriler.php");
});

setInterval(function() {$("#result").load('veriler.php');}, 1000);
</script>
</head>
<body>
<div id="result"></div>
</body>
</html>

Burada <script src="http://code.jquery.com/jquery-1.9.1.min.js" type="text/javascript"></script>

<script>kısmı ile kodumuza jquery kütüphanesini dahil etmiş oluyoruz. Dilerseniz jquery-1.9.1.min.jsdosyasını yerel dizine aktararak da kullanabilirsiniz.

Script tagları arasında ise$(document).ready(function() {

        $("#result").load("veriler.php");

});

Kodu ile veriler.php içeriğini çekerek #result divinin içini günceller.

setInterval(function() {$("#result").load('veriler.php');}, 1000); kodu ileyse 1000 milisaniyede bir veriler.php dosyasını çeker ve result içini günceller. Bu şekilde o dosyada güncelleme olduğu an ekrana yansıması sağlanmış olur.

Veriler.php içeriğine ise aşağıdaki kodu ekleyin.

<?php


try {
     $db = new PDO("mysql:host=localhost;dbname=test", "root", "");
} catch ( PDOException $e ){
     print $e->getMessage();
}


$sth = $db->prepare("SELECT * FROM kullanicilar");
$sth->execute();

if ( $sth ){
$result = $sth->fetchAll();

print_r($result);
}

?>

Burada ise veritabanından verilere çekerek ekrana basıyoruz. Şimdi test amaçlı olarak index.php dosyasını çağıralım. İçerik kısmı yüklendi ise işlem başarılıdır. Şimdi print_r($result); satırını veriler.php dosyasından silelim. Eğer ekran boş olarak güncelleniyor ise herşey tıkır tıkır çalışıyor demektir. Scroll ile güncellemek isterseniz scroll position kıstasına göre yenileme sağlayabilirsiniz. Örnek olarak scroll position sayfanın toplam yüksekliğine 100px kadar yanaşırsa 100px lik alan kaplayacak bir div içini doldurabilirsiniz

Okuyucu Yorumları

0 Yorum