Mailinglisten-Archive |
Hallo, plage mich gerade mit mir unbekannten Socketverbindungen rum. Hier mal mein Quelltext: <? function lookup($fp,$lookup) { if (!$fp) { echo $errno.$errstr; } else { $lookup.="\r\n"; fputs($fp,"$lookup"); $data=fgets($fp); } return $data; } $fp=fsockopen("hitserver.hi-tier.de",2223,&$errno,&$errstr,45); socket_set_blocking($fp,false); echo lookup($fp," *1:XS:LOGON/BNR15;PIN;MELD_WG:276050000000001;900005;1")."<br>"; echo lookup($fp," *2:RS:GEBURT/*:")."<br>"; echo lookup($fp," *3:XS:LOGOFF:")."<br>"; fclose($fp); ?> Er gibt mir zurück das ich im System bin , aber irgendwie nimmt er die Befehle nicht bzw. liefert nichts gescheites zurück. Fogendes schrieb mir der Admin: grundsätzlich sollten Sie mal versuchen: - zur Ausgabe eine Funktion zum "zeilenweise" schreiben zu verwenden und/oder testweise CR und/oder LF am Ende setzen um irgendwie sofortiges Absetzen des Netzpuffers zu erreichen. - beim Lesen auch "readline" oder so was und nicht read-block mit 16384 bytes - dann muss nach dem open connect, erst Lesen erfolgen bis die Antworten vollständig (d.h. die Zeile mit "=" beginnt) - dann wieder senden, - und dann sofort wieder zeilenweise lesen bis alle Antworten eingelesen, also wieder "=" als Kenner für letzte Zeile der Antwort Mehr infos unter: http://212.18.9.61/entwicklung/konzept/hitp/feink040.html#Antwortaufbau Gruss Burkhard
php::bar PHP Wiki - Listenarchive