Sie befinden sich hier im Forenarchiv von phpforum.de wenn Sie direkt ins Forum möchten, klicken Sie bitte hier. Zur Startseite kommen Sie hier.

FSockOpen komische sache ;)

Hey zusammen,

Ich hab ein kleines Problem: Ich versuche mit fsockopen eine verbindung zu einem Webserver zu herstellen, um dort daten per post zu posten. Funktioniert soweit alles gut ! Nun, sollte ich auch die antwort haben (html dokument). Wenn ich das nun bekomme, hat es in unregelmässigen abständen so bescheuerte Zahlenpaare drinnen, die den ganze html code unbrauchbar machen

Code:                   In Zwischenablage kopieren (nur IE)
1">

Ich sollte aber den HTML code fehlerlos haben... Nun, was mache ich falsch?

Code:                   In Zwischenablage kopieren (nur IE)
2">

Wenn ich an der Buffergrösse rumspiele, kommen einfach andere Zahlen an andern orten (was eigentlich auch bei jedem neuausführen des php scriptes der Fall ist :()

Was mach ich falsch? Kann mir jemand helfen?

Greets and Thx Sven
Hier gehts zum Orginal Eintrag "FSockOpen komische sache ;)" im Forum

Antworten

Sehr komplizierte Methode.

Warum öffnest Du die URL/Datei nicht mit fopen und fgets etc.. ?


2.

Hallo,

Danke für die antwort, aber das ist nur ein beispiel. Hast du es schon mal geschaft POST variablen (oder cookies) mit fopen zu übergeben? Wenn ja, wie?

Greets Sven


3.

Sorry hab nicht genau durchgelesen.

Warum muss es den POST sein?


4.

Hallo,

Ich versuche einen PHP Proxy zu machen... Und da gibts nun mal auch froms mit der method "POST" ;)

keine möglichkeit?

Greets Sven


5.

Und die Server einstellung ProxPass z.b. bei Apache hilft nicht weiter?


6.

Zitat:
Wenn ich an der Buffergrösse rumspiele, kommen einfach andere Zahlen an andern orten (was eigentlich auch bei jedem neuausführen des php scriptes der Fall is
Trotzdem liegt es am lächerlich kleinen Buffer. Mach mal mindestens 1024 dahin, meinetwegen auch 65536.


7.

fgets ist an der Stelle ja auch falsch. [doc]fread[/doc] wäre richtig.


8.

Zitat:
fgets ist an der Stelle ja auch falsch.
Nicht unbedingt - HTML Dateien sind ja in aller Regel Textdateien mit Carriage/Return am Ende. Nur ist es eben nicht schlau, einen Minibuffer mitzugeben.

Habe übrigens gerade noch in der Doku zu fgets() gelesen, dass der 2.te Parameter weggelassen werden kann (was mir bekannt war, Default war dann 1024), aber seit PHP 4.3.0 ist dann nicht 1024 der Default, sondern der Buffer ist dynamisch und es wird entweder bis Carriage/Return oder EOF eingelesen. Macht Sinn und würde das Problem sicher auch lösen (ein selbstgemachtes Problem!).


9.

Meiner Meinung liegt das an einem gesendeten Header:
Transfer-Encoding: chunked
Dadurch werden die zu sendenden Blöcke aufgeteilt und beim Auslesen per fsockopen treten dann besagte Ausgabe auf....
Abhilfe gibts zb hier:
http://www.phpforum.de/forum/showtopic.php?threadid=13065&highlight=chunked


10.

Zitat:
Foggy postete
Meiner Meinung liegt das an einem gesendeten Header:
Transfer-Encoding: chunked
Dadurch werden die zu sendenden Blöcke aufgeteilt und beim Auslesen per fsockopen treten dann besagte Ausgabe auf....
Abhilfe gibts zb hier:
http://www.phpforum.de/forum/showtopic.php?threadid=13065&highlight=chunked
Hey!

Hat ausgezeichnet funktioniert ! Vielen Dank!

@Rana
Hab mit verschiedenen Buffergrössen versucht (sogar ohne angabe). Bei Buffergrösse 2 wars am besten, aber immer noch schlecht. Trotzdem danke für den Hinweis!

Greets und Vielen Dank,

Sven


11.

Zitat:
Rana postete
[Nicht unbedingt - HTML Dateien sind ja in aller Regel Textdateien mit Carriage/Return am Ende. Nur ist es eben nicht schlau, einen Minibuffer mitzugeben.
Ich war mir ja nicht sicher, ob er da tatsächlich HTML lesen will, und bei Binärdaten wär das sicherlich falsch.


Hier gehts zum Orginal Eintrag "FSockOpen komische sache ;)" im Forum
 
phpforum.de | Impressum | Handy Bundles