[PHP] Kan niet connecten naar server?

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Saven
  • Registratie: December 2006
  • Laatst online: 21-09 18:37

Saven

Administrator

Topicstarter
Hallo, even een kort probleem.
Ik heb een server waarvan ik een online/offline status wil maken zegmaar.
De server is online en met de chatbox zelf kan ik ook connecten, alleen php geeft aan dat ie niet kan connecten en geeft de server dus als offline aan :S

code:
1
2
3
4
5
Warning: fsockopen() [function.fsockopen]: unable to connect to savenchat.mooo.com:1337 (Connection timed out) in /xx.php on line 51

Warning: fsockopen() [function.fsockopen]: unable to connect to savenchat.strangled.net:1337 (Connection timed out) in /xx.php on line 51

Warning: fsockopen() [function.fsockopen]: unable to connect to 213.93.236.250:1337 (Connection timed out) in /xx.php on line 51


Iemand een idee waardoor dit komt?

Code:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
<?php

//----------------------------------------
// Chatstatus class
//----------------------------------------
class Chatstatus
{
    //----------------------------------------
    // Welke servers checkt ie
    //----------------------------------------
    private $servers = array();
    
    //----------------------------------------
    // Server poort
    //----------------------------------------
    private $poort;
    
    //----------------------------------------
    // Online en Offline images
    //----------------------------------------
    private $onlineimg;
    private $offlineimg;
    
    //----------------------------------------
    // Server status
    //----------------------------------------
    private $status = 'off';
    
    //----------------------------------------
    // Huidige image holder
    //----------------------------------------
    private $image;
    
    //----------------------------------------
    // Constructor
    //----------------------------------------
    public function __construct($servers, $poort, $onlineimg, $offlineimg)
    {
        $this->servers = $servers;
        $this->poort = $poort;
        $this->onlineimg = $onlineimg;
        $this->offlineimg = $offlineimg;
        
        $this->getstatus();
    }
    
    private function getstatus()
    {
        foreach( $this->servers as $server )
        {
            $socket = @fsockopen($server, $this->poort, $errno, $errstr, 5);
            
            if( !$socket )
            {
                $this->status = 'off';
            }
            else
            {
                $this->status = 'on';
                fclose($socket);
                break;
            }
        }
    }
    
    public function show()
    {
        if( $this->status === 'on' )
        {
            $this->image = imagecreatefrompng($this->onlineimg);
        }
        else
        {
            $this->image = imagecreatefrompng($this->offlineimg);
        }
        
        header("Content-type: image/png");
        imagepng($this->image);
    }
    
    //----------------------------------------
    // Afbreken van het plaatje
    //----------------------------------------
    public function __destruct()
    {
        imagedestroy($this->image);
    }
}

//----------------------------------------
// Servers die die checkt
//----------------------------------------
$servers   = array();
$servers[] = 'savenchat.mooo.com';
$servers[] = 'savenchat.strangled.net';
$servers[] = '213.93.236.250';

//----------------------------------------
// Chatstatus laden..
//----------------------------------------
$chatstatus = new Chatstatus($servers, 1337, 'chatonline.png', 'chatoffline.png');

//----------------------------------------
// Chatstatus weergeven
//----------------------------------------
$chatstatus->show();

?>

Acties:
  • 0 Henk 'm!

  • Alm4riC
  • Registratie: Februari 2005
  • Laatst online: 17-09 22:16
weetje zeker dat fsockopen is toegestaan op je server?

Acties:
  • 0 Henk 'm!

  • Herko_ter_Horst
  • Registratie: November 2002
  • Niet online
Is het wel TCP wat die server praat?

"Any sufficiently advanced technology is indistinguishable from magic."


Acties:
  • 0 Henk 'm!

  • Saven
  • Registratie: December 2006
  • Laatst online: 21-09 18:37

Saven

Administrator

Topicstarter
@Alm4riC:
Volgensmij wel toch, anders gaf hij wel error dat ie die functie niet kent/toegestaan is :P

@Herko_ter_Horst:
Ja :)

Acties:
  • 0 Henk 'm!

  • Herko_ter_Horst
  • Registratie: November 2002
  • Niet online
Firewall die iets blokkeert? Kun je vanaf de command line van de webserver bijv. telnetten naar die server:poort?

"Any sufficiently advanced technology is indistinguishable from magic."