Wie Du selbst schon geschrieben hast ist es wohl mehr als nur suboptimal den Chat mit PHP zu realisieren, da PHP eine rein serverseitige Sprache ist.
Fuer so einen Chat wirst Du um eine clientseitige Voraussetzung wohl nicht herumkommen.
Das wird dann aber wohl weniger JavaScript sein, denn JavaScript wird kaum flexibel genug sein um die ganze Kommunikation zu regeln, sonder eher Java, was Dir eigentlich nicht passt da jeder User Java haben muss.
Ich versuche eigentlich auch weitestgehend clientseitige Voraussetzungen (z.B. Cookies, JavaScript, Flash) zu vermeiden, jedoch denke ich, dass man in Anbetracht des Zwecks (Chat) auch mal etwas voraussetzen kann (Java).
Ich habe vor kurzem auch einen kleinen Teil mit JavaScript realisiert, welcher jedoch fuer die allgemeine Nutzung der Website nicht wichtig ist, also find ich ist es okay das mit JavaScript zu machen.
Da Du schreibst, dass Du einen Chat auf Deiner Seite brauchst, und nicht schreibst, dass Du ihn willst, gehe ich davon aus, dass dies ein wichtiger Bestandteil Deiner Seite sein wird. Grundsaetzlich vertrete ich den Standpunkt, dass man wichtige Komponenten ohne jede clientseitige Voraussetzung nutzen koennen soll.
Ein Chat jedoch ist etwas wesentlich komplexeres als einfach nur eine Website, und das sollte auch dem User klar sein. Auch das macht es eher vertretbar auf der Clientseite etwas vorauszusetzen.
Weiterhin ist hier ganz klar die Usability und der Komfort anzusprechen, was ja besonders fuer den User nicht unwichtig ist.
Daher denke ich, dass es, fuer diesen Zweck (Chat), durchaus gerechtfertigt ist Java vorauszusetzen.
Aber ansonsten sollte man dann doch eher Abstand nehmen von solchen Sachen, und wenn dann zusaetzliche Funktionen in JS oder ueber Cookies realisieren und nichts was fuer die Nutzung der Seite wichtig ist.
Um mal wieder meine Site als Beispiel heranzuziehen:
Da ich Sessions fuer das Login nutze habe ich mich auch damit auseinandergesetzt wie ich die Sessions zum laufen kriege wenn der User keine Cookies annimmt. Dafuer habe ich ein kleines Script eingebaut welches prueft ob Cookies akzeptiert werden.
Wenn Cookies akzeptiert werden laeuft die Session ueber die Session-Cookies, ansonsten wird die SessionID im URL uebergeben.
Ausserdem wird, wenn Cookies akzeptiert werden, auf der Login-Seite eine zusaetzliche Checkbox dargestellt um die Moeglichkeit zu bieten einen Cookie zu setzen um auch bei einem erneuten Besuch eingeloggt zu sein.
Wie ich bereits sagte habe ich einen sehr kleinen Teil mit JavaScript realisiert, genauer gesagt handelt es sich um eine Buttonleiste aehnlich der Leiste die wir hier angeboten bekommen wenn wir unsere Beitraege schreiben. Sie dient dem gleichen Zweck, und zwar der Formatierung des Texts.
Das Script um zu pruefen ob JavaScript aktiviert ist habe ich gestern geschrieben, muss es aber noch in meine Seite einbinden, damit diese Leiste nur angezeigt wird wenn JavaScript auch aktiv ist.
Dieses, zugegebenerweise etwas langes Beispiel, soll klarmachen, dass ich nur unwichtige, aber dennoch nette, Zusatzfunktionen ueber JavaScript und Cookies realisiere, und es mir wichtig ist, dass die Website auch ohne diese in vollem Umfang benutzbar ist.
Ich habe aber keinen Teil der heftige Client-Server-Kommunikation nutzt, sondern entweder rein serverseitige Funktionen, oder rein clientseitige Funktionen.
Da ein Chat staendig Daten zwischen Client und Server austauscht ist es mehr als nur angemessen, wenn nicht sogar noetig, eine Software vorauszusetzen die dies in einer akzeptablen Art und Weise realisieren kann.
Mensch, ich red zuviel. Naja, das war's dann auch, ich denke mein Standpunkt ist klar.