On-Line Chat v PHP 4.
V posledním díle seriálu se podrobněji podíváme na zbývající dva php skripty a těmi jsou: chatbox.php a chatroom.php. Soubor chatbox.php se bude starat o zobrazení a vyhodnocení formuláře, do nějž bude uživatel psát své příspěvky. Druhý soubor již bude zobrazovat samotné okno chatu s příspěvky patřící aktuálnímu uživateli.
V posledním díle seriálu se podrobněji podíváme na zbývající dva php skripty a těmi jsou: chatbox.php a chatroom.php. Soubor chatbox.php se bude starat o zobrazení a vyhodnocení formuláře, do nějž bude uživatel psát své příspěvky. Druhý soubor již bude zobrazovat samotné okno chatu s příspěvky patřící aktuálnímu uživateli.
chatbox.php
- Nejprve skript ověří platnost hesla a id uživatele funkcí kontrola().
- Pokud skriptu přijdou z formuláře odeslaná data, vyhodnotí je. Pokud je zpráva určena konkrétnímu uživateli (je pod zámkem), skript nejdříve zjistí, zda je tento uživatel ještě aktivní. Pokud ano, bude se do tabulky chatroom vkládat i nick příjemce. Pokud takový uživatel nebude nalezen, bude zpráva určena všem chatujícím. Nakonec se do tabulky active k přispívajícímu uživateli uloží aktuální čas.
- Po tom co skript vyhodnotí případná příchozí data, zobrazí HTML stránku obsahující formulář pro odesílání příspěvků.
Nyní následuje výpis zdrojového kódu skriptu chatbox.php:
|
chatroom.php
A na závěr si popíšeme funkčnost skriptu chatroom.php, který se stará o zobrazení samotného okna s příspěvky uživatelů – tudíž tím nejpodstatnějším. Skript plní nejdůležitější roli, ale je ve skutečnosti nejjednoduchším z dosud uvedeným.
- Nejprve se ověří heslo a id uživatele, tak jak tobu bylo v předchozích skriptech.
- Poté skript vybere z databáze maximálně dvacet posledních zpráv, které jsou:
- určeny všem uživatelům
- určeny pouze uživateli, který o skript požádal
- uživatel žádající o skript je autorem zamčené zprávy
a pokud takové najde, zobrazí je na výstupní HTML stránce.
Výpis zdrojového kódu souboru chatroom.php:
|
Závěrem článku upozorňuji na fakt, že článek není příliš vhodný pro uplné začátečníky v jazyce PHP. Článek vyžaduje alespoň jeho základní znalosti, stejně jako základní znalosti jazyka SQL potažmo znalostí MySQL databáze. Článek měl sloužit jako návod jak vytvořit vlastní náročnější webové aplikace, popsat Vám jak vlastně chat funguje, neměl sloužit jako „stavebnice“ konkrétního chatu a to už jen pro to, že je opravdu hodně prostý. Mírnou modifikací zde uváděných skriptů však můžete docílit opravdu kvalitního chatu. Je však třeba přidat podporu neregistrovaných nicků, možnost používat více místností, možnost definice vlastností jednotlivých roomů atd. Vše závisí jen na Vaši fantazii a schopnostech.
Berte prosím tento seriál s nahledem, byl psán před více jak jedenácti lety. Dnes je běžné, že podobné chat aplikace se píší bez ukládání dat v databázi – využívají sdílené paměti.