PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP für Fortgeschrittene und Experten (http://www.selfphp.de/forum/forumdisplay.php?f=13)
-   -   "Instant Messenger" möglich mit php und JavaScript? (http://www.selfphp.de/forum/showthread.php?t=9658)

dirter 31.01.2005 21:15:18

"Instant Messenger" möglich mit php und JavaScript?
 
Nabend zusammen!

Ich möchte mal folgende Überlegung verbreiten bzw vorstellen:

Man hat eine Seite mit einer Userverwaltung, alle nötigen dinge vom user wie zb, sid, ip usw schreibt man in ein session array.
Nun hat man eine Anzeige, die zeigt, welcher User online ist.
Und da denke Ich mir, ist es möglich eine Art Instant Messenger zu programmieren, der zb beim klick auf den Namen ein Fenster öffnet (JavaScript), man dort eine Nachricht eingibt und die mitfhilfe von PHP (ich denk da immer an fsockenopen , ich kenn diese Funktion jedoch nicht, weiß nur, dass man mit ihr eine Verbindung zwischen 2 Rechnern (Client->Client ?) herstellen kann. Ist es also möglich, diese Nachricht an diesen User zukommen zulassen?

Kann ich also mit PHP einen gezielten Clienten ansprechen?

Vorgestellt hatte ich es mir zum beispiel so:

Man überprüft Empfänger wie Absender ip, und mithilfe von if's regelt man den output.

Es müsste doch möglich sein, oder?


viele grüße

Gweilo 31.01.2005 23:16:17

Das Problem ist das Senden an den 2. User. Man müsste entweder periodisch die Seite refreshen lassen, oder halt erst eine Nachricht zukommen lassen, wenn er sich auf der Seite bewegt (wohl eher nicht die Idee).

Mit Java zum Beispiel wäre das lösbar (ähnlich, wie ein Chat-Applet), da habe ich mich aber auch noch nie damit beschäftigt, dass ich mehr darüber sagen könnte.

dirter 01.02.2005 16:01:31

haben nicht mehr Leute eine Meinung dazu?

oder ist meine idee einfach totaler "stuss"?

also ich programmiere das nicht zur zeit und such nach einer lösung für ein problem, sondern ich will einfach nur mal ein paar meinungen einholen, u.U. Gründe finden, warum dies nicht machbar ist, usw...

viele grüße

xabbuh 01.02.2005 16:22:07

Mit PHP wirst du das wohl kaum hinbekommen, wenn du dem User nicht zumuten möchtest, dass die Seite alle paar Sekunden (Minuten) neu geladen wird.

c4 01.02.2005 16:24:02

Es gibt Chats die mit PHP funktionieren. Einfach mal anschauen wie es dort gemacht wird.

xabbuh 01.02.2005 16:53:43

Zitat:

Original geschrieben von _c_4_
Es gibt Chats die mit PHP funktionieren. Einfach mal anschauen wie es dort gemacht wird.
Und die kommen ohne Refresh der Seite aus?

c4 01.02.2005 16:57:20

Soll es geben, ja. Da wird einfach ewig versucht eine Datei zu öffnen, die kein EOF (end of file) besitzt. Kommt was neues hinzu wird's angezeigt. Oder so ähnlich.

Kannst es auch selber testen: ein Skript schreibt hin und wieder etwas in eine Datei und ein anderes Skript liest diese Datei aus. Hab's mal versucht und bin gescheitert.
Solltest Du das hinbekommen...
a) bist Du mein persönlicher Held (ich sammel sowas)
b) will ich wissen wie's geht

Gweilo 01.02.2005 18:09:10

Und dann wird mit flush() einfach die Ausgabe an den Browser gesendet, der bis jetzt vorhanden ist, und später wieder gesendet, wenn was neues gekommen ist, oder wie soll das gehen?

Wenn ja, wäre:
1) das Ausgegebene HTML nicht valid, da ja zB kein </body></html> vorkommt (vorkommen kann, da ja immer was angefügt werden können soll [oder so]).
2) Müsste der Server eine sleep() schlaufe haben, eventuell auch der Client, falls der Inhalt per JS etwas tuen soll (weil man den JS sonst nicht triggern könnte, oder wird das ausgeführt, wenn mans einfach nachschickt?).

Probleme über Probleme, sicher nicht die eleganteste Lösung ... ein chat mit PHP zu programmieren ist sowieso eine Spielerei und nicht wirklich empfehlenswert.

c4 02.02.2005 09:54:35

Nein, nix flush() Wenn's neuen Text gibt, dann wird der in die Datei geschrieben. Gleichzeitig wird diese Datei ausgelesen. Da sie ja nie abgeschlossen wird hört auch das Auslesen nicht auf. Zwei Endlosschleifen sozusagen.

1) Korrekt. Würde mich bei einem Chat aber nicht interessieren.
2) Siehe oben.

Und Recht hast Du: ein Chat mit PHP ist nicht das Wahre.


Alle Zeitangaben in WEZ +2. Es ist jetzt 19:24:00 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.