Autor | Zpráva | ||
---|---|---|---|
LiborZ Profil |
#1 · Zasláno: 27. 9. 2007, 19:28:13 · Upravil/a: LiborZ
V php jsem začátečník a potřeboval bych poradit.
Připojuji se ke vzdálenému zařízení a posílám mu řetezec znaků a a očekávám konkrétní odpověď. Problém je v tom, že někdy mi přijde jako odpověď jen jeden znak, někdy jen část řetězce, někdy polovina, ale nikdy celý. Vždy chybí první část přijatého řetězce. Délka přijatého řetězce by měla být přesně 42 znaků a zachycená část má jen 1, 9 nebo 20 znaků - jak, kdy. $fp = fsockopen (IP adresa, port, $errno, $errstr, 30); //odeslání řetězce "AAAA010000000000000155" $command = Chr(170); $command .= Chr(170); $command .= Chr(1); $command .= Chr(0); $command .= Chr(0); $command .= Chr(0); $command .= Chr(0); $command .= Chr(0); $command .= Chr(0); $command .= Chr(1); $command .= Chr(85); FPutS($fp, $command); //příjem odpovědi $characters1 = fread($fp, 8192); //vypíše délku přijatého řetězce echo "delka retezce je ".strlen($characters1)."znaku.<br />"; //zobrazení přijatých znaků echo "1. znak je ", ord(substr($characters1, 1, 1)).".<br />"; echo "2. znak je ", ord(substr($characters1, 2, 1)).".<br />"; echo "3. znak je ", ord(substr($characters1, 3, 1)).".<br />"; echo "4. znak je ", ord(substr($characters1, 4, 1)).".<br />"; echo "5. znak je ", ord(substr($characters1, 5, 1)).".<br />"; .... fclose ($fp); Co mám špatně? |
||
Časová prodleva: 17 let
|
0