Negin Nickparsa
2014-08-20 02:48:39 UTC
I am struggling with my code and I cannot figure out what I have done which
it tells me Notice
here is my server.php:
<?php
set_time_limit(0);
$stock=array("hi"=>"hi","name"=>"negin","question"=>"answer");
$address="127.0.0.1";
$port="127";
$sock= socket_create(AF_INET,SOCK_STREAM, getprotobyname("tcp"));
socket_bind($sock, $address,$port);
socket_listen($sock);
$client= socket_accept($sock);
$input=socket_read($client, 1024);
echo "you entered ".$input;
if($stock[$input]!=NULL)
{
$answer=$stock[$input];
socket_write($sock,$answer, $port);
}
else{
echo socket_strerror(0);
}
socket_close($sock);
?>
and here is my client.php:
<?php
$address="127.0.0.1";
$port="127";
$sock= socket_create(AF_INET,SOCK_STREAM, getprotobyname("tcp"));
echo "enter your data:";
$input= fgets(STDIN);
socket_connect($sock, $address,$port);
socket_write($sock,$input ,strlen($input));
$dt=socket_read($sock, 1024);
echo $dt;
?>
I really cannot undrestand why the output is this on server side:
c:\wamp\www\phpzend>php -f server.php
you entered salam
Notice: Undefined index: salam
in C:\wamp\www\phpzend\server.php on line 12
Call Stack:
0.0010 232328 1. {main}() C:\wamp\www\phpzend\server.php:0
The operation completed successfully.
but it doesn't write on my client side so this notice completely is a big
issue I var_dumped the $input and it is string I have no idea what's wrong
here
it tells me Notice
here is my server.php:
<?php
set_time_limit(0);
$stock=array("hi"=>"hi","name"=>"negin","question"=>"answer");
$address="127.0.0.1";
$port="127";
$sock= socket_create(AF_INET,SOCK_STREAM, getprotobyname("tcp"));
socket_bind($sock, $address,$port);
socket_listen($sock);
$client= socket_accept($sock);
$input=socket_read($client, 1024);
echo "you entered ".$input;
if($stock[$input]!=NULL)
{
$answer=$stock[$input];
socket_write($sock,$answer, $port);
}
else{
echo socket_strerror(0);
}
socket_close($sock);
?>
and here is my client.php:
<?php
$address="127.0.0.1";
$port="127";
$sock= socket_create(AF_INET,SOCK_STREAM, getprotobyname("tcp"));
echo "enter your data:";
$input= fgets(STDIN);
socket_connect($sock, $address,$port);
socket_write($sock,$input ,strlen($input));
$dt=socket_read($sock, 1024);
echo $dt;
?>
I really cannot undrestand why the output is this on server side:
c:\wamp\www\phpzend>php -f server.php
you entered salam
Notice: Undefined index: salam
in C:\wamp\www\phpzend\server.php on line 12
Call Stack:
0.0010 232328 1. {main}() C:\wamp\www\phpzend\server.php:0
The operation completed successfully.
but it doesn't write on my client side so this notice completely is a big
issue I var_dumped the $input and it is string I have no idea what's wrong
here