Kendi kendini yenileyen ve her seferinde php işlevini çağıran çevrimiçi bir kullanıcı içeriği oluşturmaya çalışıyorum. Aynı sayfada yenileme div için .load() nasıl kullanılır?
Ben<div class="onlineFriends">
<?php
$members = find_online_friends($_SESSION['id']);
foreach($members as $member):?>
<div class="user" href=<?php echo ($member['f_id']); ?> rel="popup_name" >
<img src=<?php
$avatars = find_avatar($member['f_id']);
foreach($avatars as $avatar)
echo ($avatar['src']) ?>
/>
</div>
<?php endforeach; ?>
</div>
<script>
$(function(){
var refreshId = setInterval(function() {
$('.onlineFriends ').load("# .onlineFriends ").fadeOut("slow", function() {
$(this).fadeIn("slow");
});
}, 50000);
});
</script>
Bu iyi çalışır kullandı. Ama .load() işlevi bence tüm sayfanın tamamını yükler ve sonra .onlineFriends'ı çağırır. Konsolda firebug ile görebiliyorum. tüm sayfa kaynak kodunu GET cevabı olarak döndürür. Sorum şu ki yavaşlayacak mı? Çünkü bu yöntemi diğer div içerikleri için 5 kez kullanacağım ve her seferinde her işlev tam sayfa yükleyecektir.
Ayrıca ayrı bir .php dosyası oluşturmaya çalıştım ancak php kodunda bazı bağımlılıklar var ve bu işlevi başka bir dosyada çalıştıramıyorum.
ancak $ .get() veya $ .post() yöntemleri de .php dosyasını çağırır ve tüm sayfayı döndürür. – Ercan
Her isteği, örneğin, '? R = ajax' olarak yapabilirsiniz ve PHP'yi tüm sayfayı değil sadece istenen verileri gönderebilirsiniz. –