I'm trying to maintain a record of how many times clients connects to a server(This information is then processed further for directing the client suitably)
I'm using hashes which has the following keys: peer_address, times_connected.
so everytime a client connects to a server, its times_connected is incremented.
And the code at the server side is as below:my %has; while(1) { # waiting for new client connection. $client_socket = $socket->accept(); # get the host and port number of newly connected client. $peer_address = $client_socket->peerhost(); ## check against previous connections if (exists $has{$peer_address}) { $has{$peer_address}->{times_connect}=$has{$peer_address}->{tim +es_connect}+1; print "No. of Times it has communicated : $has{$peer_address}- +>{times_connect}"; } else { print "new connection\n"; $t=1; ++$has{$peer_address}; $has{$peer_address}->{times_connect}=$t; } }
Now when I run client script from one machine, I get a proper count of times_connect, but when I use the second machine to run the client code, the times_connect is getting mixed up.
in short, I'm not able to get times_connect for each client.
Any help you be great. ThanksIn reply to Hashes for counting by hari9
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |