jQuery bir otomobil php dosya veritabanı getir Önlerine

2 Cevap php

Şu anda ben web sitesinde görüntülemek için mysql veri almak bir php dosyası var.

Ben göstermek için verileri belirlemek için php dosyası olarak $ _GET parametre göndermek için giriş değerini kullanıyorum.

mysql_query("SELECT * FROM messages WHERE msg_id>'$refID' ORDER BY msg_id DESC");
//$refID is input value

Yüklemek böylece bir kez,

Ben web sitesinde görüntülemek için bu jquery kodu kullanıyorum

setInterval(
function ()
{
$.get('load.php?id='+refID, function(html) { 
  $("ol#update").prepend(html);
  $("ol#update li:first").slideDown("slow");
});
}, 10000);

Benim soru nasıl i aynı mesajı tekrarlayarak devam durağı yapmak nedir? i yeni veri varsa bunu göstermek istiyorum.

2 Cevap

I doğru anlamış varsa, istediğiniz:

  1. dupe değilse yeni bir mesaj ekleyin;
  2. diğer benzersiz mesajları mantain

bu yüzden ben bu gibi düşünmek döngü gerekir:

$.get('load.php?id=' + refID, function(html) {
    var check = false;
    $("ol#update li").each(function() {
        if (this.id == refID) check = true;
    });
    if (check == false) 
    $("ol#update").prepend('<li id="' + refID + '">' + html + '</li>');
    $("#" + refID).slideDown("slow");
});

Var varsayarsak

<ol id="update">
<li id="200">The Brown Fox Jump Over the Lazy Dog</li>
....
</ol>

ve HTML tepkiyi bir <LI> etiketi içine dahil değil gel!

Update:

Nasıl tepki benziyor? Kolay yolu güncelleştirmek refID ve yanıt büyük msg_id bunu ayarlamak olacaktır. Bu şekilde, her zaman sadece yeni verileri alacak.

Ben bu formatta HTML kodu üretir PHP kodu düzenlemek olacaktır:

<li id="msg-msg_id"><div>user avatar </div><div> user posted msg</div></li> 

Eğer gerçek kimliği ile msg_id olarak değiştirin varsa nerede mesajı (örneğin 200), örneğin

<li id="msg-200"><div>avatar</div><div>my message</div></li> 

Sonra jQuery ile aşağıdakileri yapabilirsiniz:

$.get('load.php?id='+refID, function(html) {
  if(html) { // html will be empty (I guess?) if there are no new messages
      refID = $('<div>' + html + '</div>').find('li:first').attr('id').split('-',2)[1];
      $("ol#update").prepend(html);
      $("ol#update li:first").slideDown("slow");
  }
});

Bu refID şu anda alınan mesajın ve fonksiyonları üzerinde bu kimlikten mesajlarınızı alacaktır idam olur sonraki zaman kimliği güncellenir.


(Old answer didn't help)