Jump to content

Archived

This topic is now archived and is closed to further replies.

andyk

fsock problem - need help

Recommended Posts

hello everyone.

I have a problem with a paticular php file, that displays
information from another server. uses the fsock function to
connect, though it doesn't connect. I only get this following error:


[code]Warning: fsockopen() [function.fsockopen]: unable to connect to 202.60.74.149:27034
(Connection refused) in /home/******/public_html/teamspeak/ts_status.php on line 27
Cannot connect[/code]


The server IP Address to connect is : 202.60.74.149
and the port is 27034. we have double checked this numerous times.
We have tried this on 2 different servers. 1 server with PHP version 4.3.11 and the other with the latest, 5.X. no difference.

Is there something I have to enable or my host to enable?
Im quite baffled here. Hope someone can help.

Thanks

Andy

Share this post


Link to post
Share on other sites
My favorite code for checking server status's that i came across a while back is:

[code=php:0]
$IP = array(
  "server1" => "<serv1_ip>:<serv1_port>",
  "server2" => "<serv2_ip>:<serv2_port>",
);
while(list($ServerName,$Host)=each($IP))
{
  list($IPAddress,$Port)=explode(":",$Host);
  if($fp=fsockopen($IPAddress,$Port,$ERROR_NO,$ERROR_STR,(float)0.5))
  {
  $server[$ServerName]=1;
  fclose($fp);
  }
  elseif($fp=fsockopen($IPAddress,$Port,$ERROR_NO,$ERROR_STR,(float)0.5))
  {
  $server[$ServerName]=1;
  fclose($fp);
  }
  else{
  $server[$ServerName]=0;
  }
}
[/code]

Then if $server['server1'] is 0 the server is down and 1 its up.

Share this post


Link to post
Share on other sites
Im not a full programmer. Only know bits and pieces.
What do I do with this code?

Edit:

I've done this.

[code]<?php $IP = array(
  "server1" => "<202.60.74.149>:<27034>",
  "server2" => "<serv2_ip>:<serv2_port>",
);
while(list($ServerName,$Host)=each($IP))
{
  list($IPAddress,$Port)=explode(":",$Host);
  if($fp=fsockopen($IPAddress,$Port,$ERROR_NO,$ERROR_STR,(float)0.5))
  {
   $server[$ServerName]=1;
   fclose($fp);
  }
  elseif($fp=fsockopen($IPAddress,$Port,$ERROR_NO,$ERROR_STR,(float)0.5))
  {
   $server[$ServerName]=1;
   fclose($fp);
   }
  else{
   $server[$ServerName]=0;
  }
}

Then if $server['server1'] is 0 the server is down and 1 its up.?>[/code]

And get this error:

[code]Parse error: syntax error, unexpected T_IF in /home/******/public_html/teamspeak/test.php on line 30[/code]

Share this post


Link to post
Share on other sites
hi

just a point: are you trying to connect to a secure server?

you may need to

fsockopen("ssl://202.60.74.149","27034"....
or
fsockopen("https://202.60.74.149","27034"....

cheers,
tdw

Share this post


Link to post
Share on other sites

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.