Semplicemente dovrai richiamare la funzione che controlla se ci sono nuovi messaggi ogni tot di tempo, ma mi sa che questa discussione è più js che php...
Per esempio in passato, usando prototype, avevo scritto qualcosa del genere:
quindi tuo-script.php farà una query al db per vedere se ci sono messaggi più recenti dell'id dell'ultimo messaggio e restituirà i risultati in JSON. Infine prototype aggiornerà la pagina con gli ultimi messaggi...codice:/** * riceve i messaggi della chat via AJAX * richiama ricorsivamente la stessa funzione * ogni secondo per aggiornare i messaggi */ function getMessages() { new Ajax.Request('tuo-script.php', { requestHeaders: {Accept: 'application/json'}, parameters: {id_last_message : $('message_id_last_message').value, id_chatroom : $('message_id_chatroom').value }, onSuccess: function(transport){ var json = transport.responseText.evalJSON(true); //aggiorno la lista con i messaggi json.messages.each(function (n) { spanElement = new Element('span'); spanElement.update(n.username+': '); liElement = new Element('li'); liElement.update(spanElement).insert(n.data.sub(':)', ' [img]/images/smiley_30x30.png[/img]')); $('messages').insert( { bottom: liElement } ); //scrolla in basso il div $('chat').scrollTop = $('chat').scrollHeight; }); //aggiorno la chat ogni secondo window.setTimeout( getMessages, 1000 ); //aggiorno il campo hidden con l'ultimo id //se json non è vuoto if(json.messages.lenght!=0) { $('message_id_last_message').value = json.messages[0].id } }, onFailure: function(){ alert('Si è verificato un errore...'); } }); }
Vedi se può esserti utile...
![]()

Rispondi quotando