| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |

29-10-2004, 20:11
|
|
lobendank
Newbie
|
|
Registriert seit: Sep 2004
Ort: Frangen ;-)
Beiträge: 7
|
|
Streaming messages
Hallo zusammen,
ich bin relativ unbedarft in PHP, außer einem kleinen CMS hab ich noch nix besonderes Zusammengebastelt. Nun lese ich zufällig bei den Script, Voodo-chat mit streaming messages, so wie ich das verstehe, quasi ne standleitung zum Server. Die schreiben da von allen möglichem Zeug.. kein durchblick.. aber nun meine Frage:
Ist es möglich, in Php ein textfile laufend in Echtzeit auszulesen, ohne Reload und Geflimmer, oder brauch ich da Servlets, Applets, Flash oder sonst was?
Ich möchte ein Spiel bauen, bei dem die Spieler einen Button drücken und ein textfile mitzählt. Das schaff ich, is ja ned schwer, aber wie stelle ich das so dar, dass alle User immer den aktuellen Stand sehen?? Hat einer ne Idee?
Danke im Vorraus,
Jürgen
|

29-10-2004, 22:05
|
|
Moqui
Master
|
|
Registriert seit: Jun 2002
Ort: Nehren, BW
Beiträge: 854
|
|
Hallo
also ich verstehe das jetzt so:
ein user macht etwas, und solange die seite offen ist, soll z. B. jede sek was in ne Textdatei geschrieben werden.
Das kannst so machen, dass du ne Ausgabe machst, was auf seinem Bildschirm erscheinen soll (echo etc), das script allerdings hat unendliche Ausführungszeit. Jede Sekunde schreibt das Script was in die Datei und sobald der User die Seite wechselt, beendet das Script.
__________________
tata
moqui
Ich will keine unaufgeforderten Mails über PHP Fragen. Es gibt ein Forum hier! Und ich bin nicht Scripter für jeden, der mir ne Mail schreibt!
|

29-10-2004, 23:41
|
|
lobendank
Newbie
|
|
Registriert seit: Sep 2004
Ort: Frangen ;-)
Beiträge: 7
|
|
hmm es ist eher so gedacht:
beispiel:
4 Spieler an unterschiedlichen Rechnern. Jeder hat die gleiche Seite offen.
Das Spiel dauert 2 min. Ziel des Spiels, ähnlich einer Auktion, am Ende den letzten Erhöhungsschritt zu tätigen.
Erhöht wird immer um 1 Punkt bei Betätigen des "Biet-buttons". Der Gewinner erhält die gesamte Punktzahl des Spieles.
Anders als bei einer Auktion, kann immer nur ein Punkt erhöht werden, und es gibt keinen Bietassisteten.
Deshalb ist es so wichtig, dass der Punktestand immer aktuell ist, auch wenn alle 4 Spieler wie blöd auf den Knopf einclicken. Also irgendwie live.
Das Spiel ist natürlich weitaus komplizierter, mir geht es aber rein um diese Funktion. Ich hab mal nen Livecounter in Flash probiert, mit ner Refreshrate von 0,2 sek., aber der hatte Aussetzer, wären php in die txt schrieb und deshaölb die Datei nicht geladen werden konnte, zumindest war das die ofizielle Erklärung eines Flashmannes.
Und dann kenn ich Livecharts und Livechats in Java, ich glaub mittels Servlets, und Applets als Ausgabe. Die Frage ist, geht das ned irgendwie in PHP, denn sonst könnt ichs gleich vergessen, bin am PhP lernen und 2 weitere Sprachen sind einfach zuviel. ..
|

30-10-2004, 23:12
|
Shurakai
Master  
|
|
Registriert seit: May 2004
Ort: Bergisch Gladbach
Beiträge: 3.090
|
|
Naja, irgendwie muss der Server ja mitbekommen dass du den Button gedrückt hast -> Daten müßen abgeschickt werden (an ein Script) und somit würde sich der Browser reloaden...
Würde ich jetzt mal so dazu sagen
|

31-10-2004, 00:14
|
|
sagg
PHP Junior
|
|
Registriert seit: May 2004
Ort: Offenburg
Beiträge: 582
|
|
kurz um: ein php-chat ohne reloaden (geflacker) der seite ist nicht möglich (sonst würde ja kein mensch java-chats programmieren  )
|

31-10-2004, 07:58
|
|
lobendank
Newbie
|
|
Registriert seit: Sep 2004
Ort: Frangen ;-)
Beiträge: 7
|
|
@shurakai: ja schon klar, aber wer sagt meinem browser, dass jemand anderes den Button drückt? Es gibt ca. 4 Mitspieler. Jeder hat nur eine gewisse Zahl an Punkten, die er mögl. klug abgeben soll, damit er am Ende den "Checkpot" ersteigert. Deshalb muss jeder spieler immer den genauen Stand wissen.
@sagg: Danke, genau das wollt ich wissen. 
Hmm mal angenomen das Geflacker stört nicht, wie schnell (wie oft pro sek.)könnte man denn mit PHP refreshen, wenn jeweils nur 1 Zahl aus einem textfile ausgelesen werden muss, z.B. 12345 ? Oder wäre da ein Meta-Refresh schneller? Ich bräuchte ja nur die TXT includen. Es greifen ja max. 4 Leute auf die Seite zu.(begrenzte Spieleranzahl)
Also, mir geht es nicht darum, dass jemand für mich scripted, ich möchte nur gerne vorher wissen, ob es realisierbar ist, bevor ich mir die Nächte um die Ohren hau, und dachte, dass evtl. jemand damit schon Erfahrungswerte hat.
Danke derweil.
__________________
Der Klügere gibt solange nach, bis er selbst der Dumme ist
Geändert von lobendank (31-10-2004 um 08:19 Uhr)
|

31-10-2004, 10:25
|
|
asp2php
Banned
|
|
Registriert seit: Feb 2004
Beiträge: 11.746
|
|
dann, mach 2 Frames
1. Frame mit META-Refresh darin liest und zeigt das Script den Wert an
2. Frame ein Button fürs Bieten, bei jedem Klick die Daten an den Server senden.
ist easy, geschätzte Aufwandzeit < 10 Min.
|

31-10-2004, 19:35
|
|
lobendank
Newbie
|
|
Registriert seit: Sep 2004
Ort: Frangen ;-)
Beiträge: 7
|
|
Hi hab ich grade ausprobiert, is zu lahm und nervt tierisch..
Muss mich dann wohl doch nach Java umtun..
Danke für eure Hilfe,
Jürgen
__________________
Der Klügere gibt solange nach, bis er selbst der Dumme ist
|

01-11-2004, 00:12
|
|
Flooooo
Newbie
|
|
Registriert seit: Oct 2004
Beiträge: 16
|
|
rein theoretisch könnte es gehen, wenn man ne "unendliche" for-schleife macht, und jedesmal prüft ob die dateigröße sich geändert hat, wenn ja wird die nächste zeile aus der txt datei ausgegeben... aber der arme server
|

01-11-2004, 00:28
|
|
sagg
PHP Junior
|
|
Registriert seit: May 2004
Ort: Offenburg
Beiträge: 582
|
|
Und genau diese Schleife lastet den Server so lange aus, bis er abschmiert und alle Luken dicht macht.
Und ausserdem, der Client muss die Streaming messages, und da kann der Server gar nix machen, der kann dem keinen Befehl schicken der ihm sagt "reloade mal bitte, jemand hat was geschrieben" oder "schreib ne neue zeile", php ist rein Serverseitig.
Ohne reloaden ist da nix zu machen.
byez - sagg
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|