chisto_tolyan
Враг народа
Траблы с сокетами(
Вот кусок кода "скрипта-сервера":
socket_set_nonblock($socket);
do{
if (($msgsock = socket_accept($socket)) < 0) {
echo "socket_accept() failed: reason: " . socket_strerror ($msgsock) . "\n";
break;
}
$msg = "HTTP/1.1 200 OK \n\n\r";
$msg .= "Content-Type: text/html \n\n\r";
$msg .= "Hello world!";
socket_write($msgsock, $msg, strlen($msg));
flush();
sleep(5);
}
while(true);
по идее он должен отправлять Hello World! всем,кто обратитса браузером в 127.0.0.1:8080. Вместо этого сервер грязно ругаетса:
Warning: socket_accept() [function.socket-accept]: unable to accept incoming connection [0]: Операция на незаблокированном сокете не может быть завершена немедленно. in t:\home\midleage.ru\www\chat\server.php on line 31
Warning: socket_accept() [function.socket-accept]: unable to accept socket connection [0]: Операция успешно завершена. in t:\home\midleage.ru\www\chat\server.php on line 31
Warning: socket_write() expects parameter 1 to be resource, boolean given in t:\home\midleage.ru\www\chat\server.php on line 40
А в браузер нефига невыводит. Помоему проблемка в socket_write(),а в чем конкретно?. В чем кривость этого скрипта?)))
Вот кусок кода "скрипта-сервера":
socket_set_nonblock($socket);
do{
if (($msgsock = socket_accept($socket)) < 0) {
echo "socket_accept() failed: reason: " . socket_strerror ($msgsock) . "\n";
break;
}
$msg = "HTTP/1.1 200 OK \n\n\r";
$msg .= "Content-Type: text/html \n\n\r";
$msg .= "Hello world!";
socket_write($msgsock, $msg, strlen($msg));
flush();
sleep(5);
}
while(true);
по идее он должен отправлять Hello World! всем,кто обратитса браузером в 127.0.0.1:8080. Вместо этого сервер грязно ругаетса:
Warning: socket_accept() [function.socket-accept]: unable to accept incoming connection [0]: Операция на незаблокированном сокете не может быть завершена немедленно. in t:\home\midleage.ru\www\chat\server.php on line 31
Warning: socket_accept() [function.socket-accept]: unable to accept socket connection [0]: Операция успешно завершена. in t:\home\midleage.ru\www\chat\server.php on line 31
Warning: socket_write() expects parameter 1 to be resource, boolean given in t:\home\midleage.ru\www\chat\server.php on line 40
А в браузер нефига невыводит. Помоему проблемка в socket_write(),а в чем конкретно?. В чем кривость этого скрипта?)))