Cum de a face chat-ul cppcomet

Acest articol discută despre problema creării unui chat în cazul în care toți utilizatorii să comunice într-o cameră comună. Dacă aveți nevoie de o cameră de chat pentru comunicarea personală între utilizatori (singur chat-dialoguri) vă mai adecvat de comunicare de chat plug-personale între utilizatori

Toate mesajele trimise de la toți utilizatorii într-un canal web_chat_pipe comun.

Structura mesajului conține textul mesajului și numele care a trimis mesajul.

Toți utilizatorii care participă la chat abonat la canalul de chat. Și derivate din acestea mesaje apar în dialogul de film.

Notă: În exemplele vor fi utilizate JQuery bibliotecă.

Să examinăm mai întâi modul în care un script simplu chat online. Aici este tot codul o dată și apoi Să-l examinăm în detaliu. Primul lucru de remarcat este faptul că, în acest chat oamenii comunică folosind doar server de comete. Ea are o serie de neajunsuri, care face ca modelul de formare în curând iertat de chat.

Nu există nici o modalitate de a interzice omului

potses Ușor de instalare de chat pe site-ul

demo on-line

Ei bine, acum uita-te la piesele de lucru on-line script de chat:

Funcția web_send_msg trimite un mesaj la chat.

Aici puteți specifica faptul că linia: $ ( «# WebChatFormForm») adăuga ( «.

»+ Nume +«: »+ Text +«

„); adaugă un mesaj tipărit în banda noastră de chat, astfel încât atunci a fost convenabil să re-citit mesajul.

Dar CometServer apel () web_pipe_send ( «web_chat_pipe»,) .; Ea produce trimiterea direct mesajul nostru către toți ceilalți participanți la chat online. Primul argument este numele canalului la care vom trimite un mesaj. Al doilea argument este mesajul care conține numele expeditorului textului și a mesajului.

Să examinăm a doua jumătate a script-ul de chat:

Codul de mai jos este executată o dată când se încarcă pagina. În ea, ne-am abona la canal pentru a primi mesaje de la funcția de chat și atribui un handler pentru un raport cu privire la livrarea mesajului.

se conectează la serverul de cometa. Ca dev_id trebuie să treacă cheia sa de dezvoltator publice.

Codul de mai jos atribuie un handler funcție care va fi numit de fiecare dată când canalul web_chat_pipe va veni un mesaj. Primul argument este numele canalului, iar al doilea este handler funcției.

Funcția handler este trecut la primul parametru al unui obiect care conține informații despre mesaj și mesajul în sine.

Aici este formatul mesajelor primite. Câmpul de date conține datele pe care am trimis ca mesaj. Un câmp server_info conține informații care se adaugă la noastre comete de server post.

În acest caz, nu va veni la noi, ne așteptăm ca acest mesaj este pentru o discuție pe care am învățat pentru a trimite apelul

Eroare de manipulare va pleca pentru mai târziu, astfel încât să nu se umfla codul de probă.

Codul de mai jos atribuie o funcție de procesare pentru un raport cu privire la livrarea mesajului.

Aici, primul argument este un șir de caractere cu primul caracter # și urmat de numele raportului despre canalul de livrare mesaj în care ne așteptăm. În trailer, nu este nevoie de a procesa un raport de livrare. Din ea putem învăța cât de mulți oameni primit mesajul nostru și dacă eventualele erori au avut loc.

Utilizatorul se conectează la server prin comete webSocets și îl trimite cheie și id-ul ei.

Totul. Astfel, utilizatorul nu poate falsifica datele și să aleagă numele altcuiva în chat-ul, deoarece a face acest lucru trebuie să știți parola altcuiva.

Exemplul de cod în PHP chat-

Acum, toate exemplele de cod în PHP chat-ul, apoi îl vom examina în detaliu:

Acum ia în considerare codul în php chat-ul în detaliu:

conexiune de cod de la php la serverul de cometa. Specificați cheia și parola pentru comete de server.

Utilizatorul codul de procesare de ieșire din php de chat:

Atunci când o persoană face clic pe un link pentru a ieși dintr-un chat distrugem sesiunea și trimite un mesaj tuturor celorlalți participanți de acest lucru. Există numele canalului loginPipe, și că evenimentele numele userexit pe canal. Pentru comoditate, puteți trimite printr-un singur canal de evenimente cu nume diferite.

Trebuie remarcat faptul că respectivul canal pentru notificarea de contact într-un chat numit loginPipe, adică nu conține «web_» prefix, ceea ce înseamnă că este posibil de a trimite un mesaj numai prin prezența unei chei secrete dezvoltator CometQL.

Variabila $ userCometHash cheie de 32 de caractere generate. Aici e cheia avem în următoarea linie de cod pe care îl trimite server de comete, împreună cu ID-ul de utilizator.

Aceasta este, în general, tot ceea ce am văzut un exemplu de a crea un simplu chat-ul pe php. serverul Comet va simplifica foarte mult crearea de chat pe php.

Salvați mesaje în baza de date

Vă mulțumim pentru o descriere excelenta. Din păcate, după conectarea script-ul de chat pe site-ul HTML-paginile unde sunt afișate numai înregistrările sale și o altă sursă de înregistrare, care este prezent în acest moment pe site-ul nu sunt afișate pe pagina site-ului. Ce lipsește atunci când încorporarea script-ul la pagina. Al tău! Aș fi recunoscător pentru oricine poate ajuta.

Bună ziua, după cum puteți-dacă puse în aplicare, deși cele mai primitive, chat (fara inregistrare) pe php pur, fără nici biblioteci terțe părți și PL?