php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2008

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 27.11.2008, 18:15  
Neuer Benutzer
 
Registriert seit: 27.11.2008
Beiträge: 14
soulan befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] Problem: PHP Selbe Datei mehr als 1 Mal

Ich wünsche einen guten Abend,

ich hab michs chon so ziemlich den ganzen Tag mit dem Problem befasst, gegooglet und den Server eingestellt. leider alles ohne Ergebnis

Das Problem is folgendes:

Ich Programmiere einen Chat, der Server ist soweit auch funktionstüchtig, in dem Chat geht es um Pen and Paper rollenspiel, das heißt es kann vorkommen das sich die Leute mehrmals einloggen (über den selben Browser versteht sich)

Also hab ich in PHP etwas erzeugt (über socktes) das auf meinem Programmierten Java-Server horchen kann.

Das funktioniert auch alles, nun etwas näher zum Problem:

Ich stellte fest das ich das PHP-Document nur ein einziges mal aufrufen kann (solange ich den selben Brwoser auf dem selben Computer benutze). Daadruch das das Empfangen vom Javaserver über eine Schleife geschehen muss damit die vorgegangenen Texte nicht gelöscht werden, wird aber die Chat-Datei (also der Raum) nie beendet. Dadurch kann man nicht ien zweites mal ind en Chat, weil PHP wartet, bis die erste Datei fertig abgerufen wurde (geht nicht durch die While schleife)

ich vermute das ist schwer nach zu vollziehen darum erläutere ich mein Problem anhand eines Beispiels:

http://soulan.game-host.org/chatserver/otertest.php

diese Datei ist so eingestellt das sie nach 10 Sekunden "jo" ausgibt (ist halt ganz simple zum erläutern des beispiels). Wenn ihr dies nun 2 mal aufruft werdet ihr merken das in eurem 1. Fenster nach 10 Sec, und im zweiten Fenster nach 20 sec (bei relativ zeitgleichem aufruf) erst die Nachricht kommt. Warum? Naja PHP oder Apache warten eben bis das Document das erste mal abgearbeitet ist bevor scheinbar der selbe Browser/PC/User es nochmal aufrufen kann...

nun meine Frage... wie kann ich PHP oder dem Server beibringen das diese Datei mehrmals gleichzeitig aufgerufen werden darf? wenn das nicht geht wie könnte man das Problem umgehen ohne direkt Java oder Flash als Client zu nutzen (durch Einbindung).

Warum ich das möchte? Es geht prinzipiell darum das die Leute weder Java noch Flash oder dergleichen brauchen um mit dem Chat arbeiten zu könne (also das dies ganz nromal über den Browser funtkioniert)

Ich hoffe jemand hat eien Idee, ich erläutere es soweit möglich auch gerne noch etwas mehr falls es zu schwer nach zu vollziehen ist.

Mit freundlichen Grüßen

Soulan
soulan ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 27.11.2008, 19:31  
¯\_(ツ)_/¯
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.814
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Also ich würde da einen Ansatz mit AJAX verfolgen wenn du auf Flash und Java komplett verzichten möchtest. NUR in PHP das zu erledigen finde ich keine gute Lösung, aber mit AJAX kannst du relativ schöne Chats programmieren.
__________________
▇█▓▒░◕‿‿◕░▒▓█▇
Flor1an ist offline  
Alt 27.11.2008, 20:21  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.798
PHP-Kenntnisse:
Fortgeschritten
robo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblick
Standard

Stell dich aber auch schonmal darauf ein, dass du für sowas nen eigenen V/Root/Managed-Server brauchst, weil die meisten normalen Webhoster dich mit so nem Script in kürzester Zeit kicken werden, weil das mit steigender User-Zhahl massivst Server-Last erzeugt. (bzw. viele Hoster sowas eh explizit nicht erlauben)
robo47 ist offline  
Alt 27.11.2008, 20:52  
Neuer Benutzer
 
Registriert seit: 27.11.2008
Beiträge: 14
soulan befindet sich auf einem aufstrebenden Ast
Standard

ich habe einen eigenen V-Server das ist nciht das Problem, so hoch wird die Last slebst auch nicht werden eigentlich da ich einen Java Server benutze der wohl recht gutd ie Daten und Threads sortiert und editiert, aber in weiser Vorraussicht hab ich eben schon einen V-Server der mir auch genug Speicher dafür zur Verfügung stellt, ich kann nur am Server selbst nicht weiter arbeiten solange das Problem nicht gelöst ist.

Woher weiß PHP/Apache denn genau das der selbe Browser von der selben IP die Datei 2 mal öffnet und wieso blockiert dies? Gibt es dort keien Serversettings oder eine Möglichkeit die Headerinformationen oder Browserinformationen so an zu passen das PHP Apache das nicht erkennen oder es ihnen egal ist?

Geändert von soulan (27.11.2008 um 20:54 Uhr). Grund: wegen Rechtschreibfehlern (nicht alle behoben ich weis)
soulan ist offline  
Alt 27.11.2008, 21:41  
Erfahrener Benutzer
 
Benutzerbild von phpdummi
 
Registriert seit: 06.06.2008
Beiträge: 1.631
PHP-Kenntnisse:
Anfänger
phpdummi ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Wenn du auf PHP-Seite nicht abfragst ob der Request von einer IP kommt die bspw. in der Session liegt, wird die Anfrage auch nicht geblockt.
Von so einem Verhalten habe ich noch nie gehört ..
__________________
"Nobody is as smart as everybody" - Kevin Kelly
— The best things in life aren't things
phpdummi ist offline  
Alt 27.11.2008, 21:42  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 34.256
PHP-Kenntnisse:
Fortgeschritten
nikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz sein
Standard

Kann mir eigentlich auch nur denken, dass Java da irgendwas veranstaltet.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline  
Alt 27.11.2008, 21:51  
Neuer Benutzer
 
Registriert seit: 27.11.2008
Beiträge: 14
soulan befindet sich auf einem aufstrebenden Ast
Standard

Ok wenn ihr euch meinen obersten Thread und mein Beispielt mit dem Link ausführt merkt ihr das es sicher nicht java ist der das ablehnt, versucht es ruhig, öffnet die datei 2 mal zur gleichen zeit.

der intervall sind 10 sekunden bis "jo" ausgegeben wird

aber wenn ihr das 2 mal gleichzeitig öffnet dauert es beim 2. fenster 20 sekunden...

das liegt ja wohl nicht an java, da dieses File ja nix mit dem Server zu tun hat, sondern PHP (oder Apache) lässt von einem Browser aus (auch wenn das mehrere Tabs sind (mit fenstern nochnicht probiert) das die datei 1 mal zur gleichen zeit abgerufen wird, requestet man die Datei 2 mal wo wird einfach gewartet bis der erste aufuruf fertig ist

apache und/oder PHP müssen das ja irgendwo her wissen das der gleiche browser in einem anderen Tab die Datei aufruft... also durch irgendwelche ID oder sonstige Informationen

____

okay hab es getestet.. definitiv erkentn Java das ich vom selben Computer aus mit dem selben browser 2 mal diese Datei requeste...

und nach dem 2. öffnen lässt er mich eben warten bis der 1. request abgeschlossen ist (trotz neuem Fenster)

und genau das Apache das mitkriegt will ich verhindern (oder PHP) ich weis nicht genau wer von beiden schuld ist...

dadurch das der Chat per PHP zum requesten ja eine While schleife benötigt (die niemals endet) kann ich den Chat eben nur einmal gleichzeitig aufrufen, und es soll aber möglich sein diesen mehrmals auf zu rufen...

mit dem selben browser (wenn man im übrigen den link 2 mal in verschiedenen browsern auf dem selben PC öffnet geht es problemlos, dann wird in beiden browser nach 10 sec "jo" ausgegeben nicht erst anch 20, das problem tritt definitiv nur auf wenn man den selben browser auf dem selben PC nutzt)
soulan ist offline  
Alt 27.11.2008, 21:55  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.798
PHP-Kenntnisse:
Fortgeschritten
robo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblick
Standard

Hast du mal andere Browser getestet ? Ist das vielleicht irgendeine Einstellung des Browsers ? Ne Extension die nen request sendet und solange nicht noch ein öffnen der Gleichen url zulässt bis der erste request durch ist ?
robo47 ist offline  
Alt 27.11.2008, 22:01  
Neuer Benutzer
 
Registriert seit: 27.11.2008
Beiträge: 14
soulan befindet sich auf einem aufstrebenden Ast
Standard

TATSACHE!!!! es liegt am Browser

danke vielmals.. muss nur gucken bei wievielen browsern das auftritt und wie ich das umgehen kann o.o

Also bei Firefox tritt das Problem auf, der IE hatte keine Probleme

Geändert von soulan (27.11.2008 um 22:02 Uhr). Grund: zusätzliche Informationen
soulan ist offline  
Alt 27.11.2008, 22:04  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.798
PHP-Kenntnisse:
Fortgeschritten
robo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von soulan Beitrag anzeigen
TATSACHE!!!! es liegt am Browser

danke vielmals.. muss nur gucken bei wievielen browsern das auftritt und wie ich das umgehen kann o.o

Also bei Firefox tritt das Problem auf, der IE hatte keine Probleme
Hast du irgendwelche Erweiterungen installiert ?
robo47 ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Problem Upload mehrere Dateien und schreiben in DB Lapje PHP Tipps 2008 1 22.10.2008 13:12
[Erledigt] Problem mit tpl Datei dic4444 PHP Tipps 2008 3 03.10.2008 12:14
Problem mit swfobjects R4v3r JavaScript, Ajax und mehr 8 21.09.2008 14:17
Datei einlesen und mit Editor bearbeiten - Problem perpicx PHP Tipps 2008 11 18.09.2008 15:33
Upload Problem einer ZIP Datei sven2oo8 PHP-Fortgeschrittene 4 23.07.2008 23:54
Problem mit einer auslesen.php datei my_self PHP Tipps 2008 3 02.11.2007 00:09
[Erledigt] Problem mit der Ladezeit - JS Datei zu groß, PHPcacheing? PHP Tipps 2006 1 30.03.2006 16:50
Session Problem R4v3r PHP Tipps 2007 3 30.11.2005 23:25
Problem mit OOP PHP Tipps 2005-2 5 01.09.2005 19:37
Problem beim Schreiben in eine Datei PHP-Fortgeschrittene 2 17.08.2005 16:26
XML Datei mit PHP Parsen - Problem mit Zeichencodierung DonTermi PHP-Fortgeschrittene 7 10.08.2005 11:36
sehr merkwürdiges Problem mit require_once PHP Tipps 2005-2 3 16.07.2005 13:42
Problem mit Datei Upload Server, Hosting und Workstations 6 06.09.2004 04:58
Problem beim schreiben in Datei PHP Tipps 2004 5 20.08.2004 14:06
[Erledigt] altes neues problem von datei upload!!! PHP Tipps 2004 3 28.06.2004 19:06

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
\diese datei ist so eingestellt\, file() probleme php, php datei wird mehrmals aufgerufen, php datei zeitgleich mehrfach aufrufen, 2 mal die selbe datei auf dem pc, apache php wird mehrmals aufgerufen, php gleiche datei nochmals aufrufen, mit php gleiche datei nochmal aufrufen, apache php 2 mal, größe php datei egal serverlast, php selbe datei aufrufen, http://soulan.game-host.org/, mehrmaliges laden einer php datei verhindern, php seite beim zweiten mal aufrufen fehlerhaft, http://www.php.de/php-tipps-2008/49383-erledigt-problem-php-selbe-datei-mehr-als-1-mal.html, ie header selbe url wird mehrfach aufgerufen, rollenspiel soulan, php selbe datei, firefox php probleme wenn apache auf demselben rechner läuft, firefox request php mehrmals

Alle Zeitangaben in WEZ +1. Es ist jetzt 21:19 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum