PHP套接字读取错误

sum*_*ang 5 html javascript php html5

我的html页面中有三个按钮连接到php脚本,它们使用套接字连接将命令发送到另一个应用程序。

1)当接收命令的应用程序和xampp服务器在本地主机上运行时,它工作正常,但是当我尝试在网络上发送命令时,它有时会工作,有时却不起作用。

2)这可能是什么原因。

button1的代码

<?php
// Fill up array with names
$q=$_GET["q"];



$sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
$host = $_GET["vz"];
$port=6100;
$buffer=$q ."\0";
$len= strlen($buffer);

socket_connect($sock, $host, $port);
socket_sendto($sock, $buffer, $len, 0 , $host, $port);


$buffer='COMMAND HERE';
$len= strlen($buffer);


socket_sendto($sock, $buffer, $len, 0 , $host, $port);

echo( socket_read($sock, 65535) );

socket_close($sock);


?>
Run Code Online (Sandbox Code Playgroud)

按钮2的代码

?php


$sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
$host = $_GET["x"];
$port=6100;
$buffer='COMMAND HERE';

$len= strlen($buffer);

socket_connect($sock, $host, $port);
socket_sendto($sock, $buffer, $len, 0 , $host, $port);



$len= strlen($buffer);


socket_sendto($sock, $buffer, $len, 0 , $host, $port);

echo( socket_read($sock, 65535) );

socket_close($sock);


?>
Run Code Online (Sandbox Code Playgroud)

按钮3的代码

<?php


$sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
$host = $_GET["x"];
$port=6100;
$buffer='COMMAND HERE';

$len= strlen($buffer);

socket_connect($sock, $host, $port);
socket_sendto($sock, $buffer, $len, 0 , $host, $port);



$len= strlen($buffer);


socket_sendto($sock, $buffer, $len, 0 , $host, $port);

echo( socket_read($sock, 65535) );

socket_close($sock);


?>
Run Code Online (Sandbox Code Playgroud)