ciao a tutti
ho sviluppato una chat che utilizza xmlhttprequest in congiunta con php e mysql.
Ho un paio di domande al quale non riesco a trovare una risposta; o meglio, immagino che sia quello ma non ne sono sicuro.
La mia chat è composta da 3 files:
1) chat.php (si incarica di crearmi il form di invio messaggio più altri controlli)
2) XmlHttpRequest.js (si incarica di ricevere e spedire le richieste al file php e di stampare il risultato nel div interessato)
3) handleChat.php (mi preleva i dati dal db e li restituisce al file XmlHttpRequest)
Gli utenti sono memorizzati nel db, come anche i messaggi da loro scritti.
Adesso....
La chat non è ancora finita, ma le basi sono finite e così com'è funziona come chat base.
Prima domanda:
Quando avvio la pagina ed inizio ad utilizare la chat, mi accorgo che mi utilizza il 100% della CPU e occupa una bella fetta di RAM.
Presumo che questo sia dovuto al continuo richiamo di due funzioni che si chiamano a vicenda per controllarmi se ci sono nuovi messaggi. Una funzione chiama il file php che interroga il db e mi ritorna i risultati, per poi chiamare il settimeout.
Seconda domanda:
Ho aggiunto al tag body la funzione onunload, che richiama window.open, che a sua volta mi apre uno script php che ha il compito di cancellare dal db l'utente che ha appena lasciato la chat per poi chiamare l'evento javascript window.close().
Il problema è che con un pc la cosa mi funziona, ma con altri no, e non capisco il perchè.
Di seguito trovare il link al codice dei tre file.
1) chat.php
1) XmlHttpRequest.js
1) handleChat.php
Vi ringrazio in anticipo per il vostro aiuto.