php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 04.12.2008, 04:43  
Neuer Benutzer
 
Registriert seit: 27.11.2008
Beiträge: 14
soulan befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] Problem beim beenden des Browsers

Einens chönen guten Abend,

Also ich in ja derjenige der einen Chatserver mit PHP client programmiert hat *g*

Ich hab jetzt schon den ganzen Abend versucht herauszukriegen was die Ursache für folgendes Problem ist:

Mein Server pingt den Client regelmäßig an.

Wenn ich meinen PHP-Client über meinen PC hier über apache und co aufrufe, den Browser schließe dann bleibt PHP beim 1. besten Flush stehen, weil es wartet das es etwas auf dem Browser ausgeben kann und wird natürlich weil es stehen bleibt vom Server entfernt wegen eines Ping Timeout (so ist das auch geplant und auf meinem PC funktioniert es super)

Nun hab ich den PHP-Client auf meinen Webserver (Mit linux) kopiert, wenn ich ihn aber dort ausführen und den Browser schließe arbeitet PHP im Hintergrund munter weiter und ihn interessiert es nicht das der Browser schon zu ist, auch die Funktion connection_aborted() ziegt keinerlei Wirkung als würde es PHP garnicht interessieren...

ich habd ie PHP.ini schon größtenteils an die auf meinem PC angeglichen also scheint es daran ncith zu liegen (außer ich hab vielleicht was übersehen) vllt isses auch apache schuld, ich würd gern wissen ob jmd eine Idee hat wie ich PHP begreiflich mache das der Browser zu ist so das er das script stoppen kann

(der Client muss in einer Endlosschleife laufen weil ja PHP den inhalt einer Seite nur ändern kann solange sie läuft, ausgabe funktioniert eben mit Flush(); aber wie gesgat er scheint auf garnichts zu reagieren...)

Ich hoffe jemand weis rat
soulan ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 04.12.2008, 11:57  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.988
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

PHP != Chatlösung. Wieso machst Du keine Ajaxanfragen? Die bleiben aus, sobald der Browser zu ist.
__________________
--
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 gerade online  
Alt 04.12.2008, 13:13  
Neuer Benutzer
 
Registriert seit: 27.11.2008
Beiträge: 14
soulan befindet sich auf einem aufstrebenden Ast
Standard

Weil isch mich dann in Ajax einlesen müsste *g*

Mal abgesehend avon das ich weis das Ajax besser ist ich es aber nunmal gerne mit PHP versuchen möchte was soweit auch super klappt

Ich frage mich nur warum der flush() auf mienem Heim-PC mit Windows einen Timeout erzeugen kann

aber auf dem Server mit Linux ignoriert wird
soulan ist offline  
Alt 04.12.2008, 13:48  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.988
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Dann mach halt. Sind ja Deine Probleme
__________________
--
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 gerade online  
Alt 04.12.2008, 14:37  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
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

Zitat:
Zitat von soulan Beitrag anzeigen
Weil isch mich dann in Ajax einlesen müsste *g*
Der Grund ist aber echt schlecht.

1. AJAX ist so einfach wenn du ein JS Framework (z.B. jQuery) nutzt!!

2. Ist dein Argument etwa so wie: Ich will mein Auto aber mit eckigen Rädern bauen anstatt mit runden weil ich keine Lust hab erst zu lernen wie man runde Räder baut!

Es gibt einfach Techniken die NICHT für bestimmte Sachen geeignet sind! Wir helfen dir gerne wenn du bestimmte Probleme hast. Wenn du aber experimentierst mit Techniken die nicht geeignet sind dann wird dir wohl kaum einer groß helfen wollen.
Flor1an ist offline  
Alt 04.12.2008, 15:31  
Neuer Benutzer
 
Registriert seit: 27.11.2008
Beiträge: 14
soulan befindet sich auf einem aufstrebenden Ast
Standard

Ich habs mit Ajax probiert aber ich find nichts was mir hilft eine schöne socket connectin aufzubauen außer XMLSocket zeugs und das funktioniert aus welchem grund auch immer nicht richtig ôo also da passiert garnichts

Code:
<html>
	<head>
		<script>
		// just an example
		var connected = false;
		onload = function() {
			var xmls = new XMLSocket();
			xmls.init("xmlsocket-div");
			
			// if you need to connect directly use a delay
			// function because swf that's will be add
			// inside div should be totally downloaded.
			// Max 700 bytes of swf requires
			// about 1 or 2 seconds to be downloaded.
			function connect() {
				xmls.onConnect = function(success) {
					if(success)
						connected = true;
						alert("geht");
					else
						connected = false;
						alert("geht nich");
				};
				xmls.connect('localhost', 9000);
			};
			setTimeout(connect(), 3000);
		};
		</script>
	</head>
	<body>
		<div id="xmlsocket-div"></div>
		
	</body>
</html>
zudem weiß ich ja das es Funtioniert, es funktioniert ja auf meinem PC nur aufm Linux server nicht und die Versionen der WebServer sind nahezu gleich

hab das ganze idng aufgebaut und es zum laufen gebracht und nun muss ich es nochmal auf einer mir nicht ganz bekannten Sprache machen (ich hab nichtmal eine Dokumentation der Befehle gefunden für Socketkram nur einzelne seiten) nur weil der Server meint "ach ist mir egal ob flush() geht oder nich" begeistert bin ich von dem vorschlag nicht wenn ich es schon fast fertig hab

zumal "PHP != chatlösung geeignet" es funktioniert, es verbraucht nicht annähernd soviel Speicher wie vllt manch einer Denken mag was an meiner schleifenkonstruktion liegen kann.. gerade mal knapp 100kb ram per client...

und nun muss ich das verwerfen weil der flush() auf mienem Server nicht so reagiert wie auf meinem Home-Server.

Ich mein Er aktualisiertd ie Seite mit flush(); aber is ihm egal ob das klappt oder nicht


Zudem wollt ich vermeiden das ein user zusätzliche Plugins braucht um am Chat teilnehmen zu können

Geändert von soulan (04.12.2008 um 15:43 Uhr). Grund: Anmerkung
soulan ist offline  
Alt 05.12.2008, 00:45  
Neuer Benutzer
 
Registriert seit: 27.11.2008
Beiträge: 14
soulan befindet sich auf einem aufstrebenden Ast
Standard

Habe das Problem Serverseitig und Clientsietig gelöst trotzdem danke
soulan 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
[Erledigt] Problem: PHP Selbe Datei mehr als 1 Mal soulan PHP Tipps 2008 13 28.11.2008 22:51
Problem Upload mehrere Dateien und schreiben in DB Lapje PHP Tipps 2008 1 22.10.2008 13:12
utf8 Problem (Daten aus DB auslesen) go1denboy PHP Tipps 2008 1 23.09.2008 12:19
Problem mit swfobjects R4v3r JavaScript, Ajax und mehr 8 21.09.2008 14:17
[Erledigt] Galerie Problem... coraplanet PHP Tipps 2008 4 06.06.2008 13:42
For schleife beenden Toby PHP Tipps 2008 32 15.10.2007 11:57
datensätze defekt oder problem mit dem einlesen? Ministry Datenbanken 4 06.07.2006 18:42
mail() und boundary Problem Gef PHP Tipps 2006 4 02.03.2006 00:47
Verbindung des Browsers beenden aber Script soll weiterlaufe PHP-Fortgeschrittene 7 22.02.2006 13:34
problem!!! PHP Tipps 2006 6 08.02.2006 11:06
[Erledigt] wieder ein Problem bei phpmailer und smtp PHP Tipps 2006 24 07.02.2006 01:07
Smarty und PHP-Skript Problem PHP Tipps 2004-2 2 03.12.2004 22:27
Problem mit alter JavaScript-Funktion woods PHP Tipps 2004 1 13.08.2004 13:34
[Erledigt] Problem mit Timestamp! PHP Tipps 2004 24 08.06.2004 19:51
Login Problem PHP Tipps 2004 4 04.06.2004 18:46

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php beim verlassen des browsers, browser per php schließen, js xmlsocket

Alle Zeitangaben in WEZ +2. Es ist jetzt 17:38 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