# Script um Online Status einer Seite anzuzeigen



## nixPeiler (3. April 2003)

sers!

erstmal: hab keine ahnung von php!

hab mir ein server gebaut und da der wahrscheinlich nicht immer online ist, will ich eine Seite erstellen die den online status anzeigt!

Die Seite soll dann auf einen Server der immer on is drauf!

Es soll einfach z.b. ein Bild angezeigt werden wo "online" drauf steht wenn der server online ist!
Und wenn der SErver nicht erreichbar ist soll da was kommen wo "Offline" steht!

Hab gehört das kann man mit php realisieren!

Könnte mir das jemand machen wenns net so schwer is, oder mir sagen wie es geht???

THNX
CU


----------



## alexorg (3. April 2003)

probiers mal hier mit:


```
<?
$fp = fsockopen("dein-webserver.tld",80,&$errno,&$errstr,2);
if(!$fp)
   {
   echo "[offline]";
   }
else
   {
   echo "[online]";

}
fclose($fp);
?>
```


----------



## nixPeiler (3. April 2003)

ok,
ich hab mal en bissel rumgewurschtelt! 

Was muss ich in "dein-webserver.tld" eintragen? ich hab jetzt einfach mal meine domain eingetragen!

Ich wollte zuerst des script in eine html datei einbinden hat aber irgendwie net geklappt! 
siehe hier:

```
<html>
<head>
<title>status</title>
</head>
<body text="#000000" bgcolor="#ffffff" link="#FF0000" alink="#FF0000" vlink="#FF0000">
Status der WEbseite:


<?php
$fp = fsockopen("http://kamikaze.dyndns.org",80,&$errno,&$errstr,2);
if(!$fp)
   {
   echo "[offline]";
   }
else
   {
   echo "[online]";

}
fclose($fp);
?>

</body>
</html>
```
Da hat er nur den des zeug von html ausgegeben! (irgendwie falsch eingebunden!?!?!?)


Dann hab Ich den Code von dir einfach in eine Datei gesetzt und die status.php genannt!

Hat soweit gefunzt dass er was ausgegeben hat.

siehe HIER 

wenn die dns umleitung net klappt dann die IP Hier 217.227.154.45
(hält noch ca. bis morge abend)

Aber der gibt da offline aus! was aber eigentlich net stimmt!
liegt bestimmt an dem was ich eingegeben hab, oder?  

alla thnx
CU


----------



## alexorg (3. April 2003)

> Was muss ich in "dein-webserver.tld" eintragen?



da kommt die addresse von dem server rein den du überprüfen willst... und die status.php datei musst du auf nen richtigen webserver laden...
diese fehlermeldung kommt bei mir auf meinem eigenen webserver auf meinem pc auch aber auf den "richtigen" webservern von den providern gehts ...
also einfach mal hochladen....
und dann schauen...

//edit:

ach ja und das es mit der html datei nicht funktioniert hat liegt daran, das die datei die endung PHP haben muss und nicht HTM oder HTML 

ach ja und das er offline ausgibt liegt wohl daran, dass deine dynip addresse nicht erreichbar ist... also bei mir kommt da zumindest Seite nicht gefunden" über die ip gehts aber!


----------



## Neuk (3. April 2003)

> Was muss ich in "dein-webserver.tld" eintragen?


[Klugscheisser-Modus]
Ich schätze das .tld hat dir Probleme bereitet, das heisst nix anderes als Top-Level-Domain (z.b. .de, .com, .org), so meinte alexorg richtigerweise das du hier deine Webadresse eingeben solltest.
[/Klugscheisser-Modus]


----------



## alexorg (3. April 2003)

gg....

nein das war jetzt nicht so gemeint das ich klugscheissen wollte 
ich dachte nur das kennt eigentlich jeder 

na gut dann halt so:


```
<?
$fp = fsockopen("dein-name.dyndns.org",80,&$errno,&$errstr,2);
if(!$fp)
   {
   echo "[offline]";
   }
else
   {
   echo "[online]";

}
fclose($fp);
?>
```

g so sollte es aber jeder vestehen 

noch mal zur erklärung:

die 80 ist der port, normalerweise bei webservern 80 und die 2 gibt die zeit in sekunden an wie lange das script probieren soll den server zu erreichen... kannst also auch 30 eingeben dann probiert er es 30 sekunden... allerdings dauert es dann falls der server offline ist auch 30 sekunden bis die seite angezeigt wird... also der wert 2 ist schon gut so brauchste eigentlich nichts zu verstellen 

mfg,

alex


----------



## nixPeiler (3. April 2003)

ok thnx, hat so einiger maßen geklappt!

wenn ich die ip in das script eingeben funzt es und er sagt online!

funzt halt irgendwas mit der scheiss dns weiterleitung net! 

naja trotzdem thnx


----------



## Neuk (3. April 2003)

@alexorg:
ich wollte dich auch net der klugscheisserei beschuldigen... ich wollte auch nur meinen senf dazugeben

btwnixpeiler:
welche dns weiterleitung nutzt du denn?


----------



## alexorg (3. April 2003)

jo dann musste nochmal das mit dem dns kram hinkriegen und dann funktioniert das script auch... nur halt irgendwie nicht auf eigenen webserver... weiss nicht warum sind wohl irgendwelche einstellungen falsch bei mir kommt dann z.B immer:

Warning: fsockopen() [function.fsockopen]: php_hostconnect: connect failed in D:\wampp2\htdocs\test.php on line 2

Warning: fsockopen() [function.fsockopen]: unable to connect to freakazoit.no-ip.org:80 in D:\wampp2\htdocs\test.php on line 2
[offline]
Warning: fclose(): supplied argument is not a valid stream resource in D:\wampp2\htdocs\test.php on line 12

aufem webspace funktionierts dann aber komischerweise 

ps: hab auch ne dns bei dyndns.org nur halt mit cname von meinem webhoster auf:

http://server.al3x.org  das ist eigentlich ziemlich kewl...


----------



## nixPeiler (28. April 2003)

*sodele lange ist's her! *

alla, meine dns umleitung geht jetzt! 

hab des script ein kleines bissel erweitert aber nix eigentliches geändert!

mein prob:
auf meinem homeserver läuft es ohne probs! es wird online angezeigt!

aufm tripod server läuft es in dem sinne nicht, dass er offline anzeigt obwohl der server online ist!

wie gesagt die umleitung geht von aussen! (glaub ich zumindest!  )

Hier die links:
mein Homeserver 
Tripod server

jeweils das gleiche script! weis jemand warum des net geht?
THNX


----------



## Detanox (21. Mai 2003)

hallo nixpeiler....

Also ich finde das cript sehr schön......

Ich hab nur mal die frage wie lautet der port der MySQL Datenbank ???

und auserdem kommt bei mir immer folgende fehlermeldung:

Warning: fclose(): supplied argument is not a valid File-Handle resource in c:\server2\www\index.php on line 61

aber nur wenn der gewünschte server offline ist.....

hier mal der link: "klick" 

kannst du mir weiterhelfen oder mal deine status.php zum download bereitstellen ????

wäre net wenn mir noch jemand verraten könnte wie ich eine automatische weiterleitung eibauen kann (nach 5 sec) wenn der server Online ist....

MFG Detanox


----------



## danube (24. Mai 2003)

> _Original geschrieben von Detanox _
> *Ich hab nur mal die frage wie lautet der port der MySQL Datenbank ???*


port 3306


----------



## scancode (26. Mai 2003)

für windooze is er aber 1433   oder ?


----------



## danube (26. Mai 2003)

1433 ist MS SQL


----------



## swiss_man (16. Juni 2003)

*ip online/offline*

Hi

hab das script gesehen udn es gefählt mit nur meine frage ich möchte das online grün ist und offline rot ist kann man das einbinden im script ?

danke gruss


----------



## chrostek (16. Juni 2003)

Hi,

ich fand das Script auch gut, allerdings erzeugt es einige Fehler, wenn der Server nicht online ist. Ich habs etwas umgeschrieben, auch mit Farben:



> <?php
> 
> echo "Server ist ";
> 
> ...



MfG
Sebastian


----------



## swiss_man (16. Juni 2003)

*cool*

super, nur noch eine frage, kann man das ganze auch mit einer roten/grünen ampel versehen? 

gruss


----------



## Patrick Kamin (16. Juni 2003)

*-*

Nein, du musst dir schon selber Farben ausdenken.


----------



## swiss_man (16. Juni 2003)

ach ja was ich gesehen hab so wie bei http://nixpeiler.hn.org/status/status.php so in etwa kann jemand das script posten ? danke


----------



## chrostek (16. Juni 2003)

Hi,

hab grad gemerkt, dass das Script doch net so gut ist, nimm die Version:


```
echo "Server ist ";

if(@fsockopen("dein-server.dyndns.org",80,&$errno,&$errstr,2)){
echo "<img src=\"gruen.jpg\">";        # hier kannst du dann fast normalen html code einfügen, also auch ein bild für eine ampel, du musst nur vor " ein \ setzten, damit die " vom echo net beendet werden, ansonsten einfach html code reinschreiben
}
else{
echo "<img src=\"rot.jpg\">";          # und hier genauso für rot
}
```

MfG
Sebastian


----------



## swiss_man (16. Juni 2003)

*danke*

hmm bei mir geht das irgend wie ned

http://privat-support.com/test/ip/status.php


----------



## chrostek (16. Juni 2003)

also die anfangs und endtags vom php brauchst du schon:


```
<?php
echo "Server ist ";

if(@fsockopen("62.202.4.70",21,&$errno,&$errstr,2)){
echo "<img src=\"http://www.privat-support.com/test/ip/online.jpg\">";
}
else{
echo "<img src=\"http://www.privat-support.com/test/ip/offline.jpg\">";   
}
?>
```

außerdem müssen vor anführungszeichen slash's, damit du nicht die den echo befehl beendest


----------



## swiss_man (16. Juni 2003)

*)*

hehe ich trottel 

danke fürt deine mühe


----------



## swiss_man (16. Juni 2003)

*?*

und wie das ganze wenn ich mehrere server hab ?


----------



## chrostek (16. Juni 2003)

einfach mal nachdenken und raffinierterweise einfach mehrmals untereinander schreiben 


```
<?php

echo "Server1 ist ";

if(@fsockopen("62.202.4.70",21,&$errno,&$errstr,2)){

echo "<img src=\"http://www.privat-support.com/test/ip/online.jpg\">";

}

else{

echo "<img src=\"http://www.privat-support.com/test/ip/offline.jpg\">";

}

echo "<br>";

echo "Server2 ist ";

if(@fsockopen("ip vom 2. server",21,&$errno,&$errstr,2)){

echo "<img src=\"http://www.privat-support.com/test/ip/online.jpg\">";

}

else{

echo "<img src=\"http://www.privat-support.com/test/ip/offline.jpg\">";

}

?>
```


----------



## swiss_man (16. Juni 2003)

*..*

jo weiste ich kann kein php  darum die fragen

so noch die letzte frage:

mit der schrift grösse


----------



## chrostek (16. Juni 2003)

wie gesagt einfach html einfügen, nur bei den anführungszeichen aufpassen, daraus ergibt sich dann:


```
<?php

echo "<font size=\"+2\">Server1 ist </font>";

if(@fsockopen("62.202.4.70",21,&$errno,&$errstr,2)){

echo "<img src=\"http://www.privat-support.com/test/ip/online.jpg\">";

}

else{

echo "<img src=\"http://www.privat-support.com/test/ip/offline.jpg\">";

}

echo "<br>";

echo "<font size=\"+2\">Server2 ist </font>";

if(@fsockopen("ip vom 2. server",21,&$errno,&$errstr,2)){

echo "<img src=\"http://www.privat-support.com/test/ip/online.jpg\">";

}

else{

echo "<img src=\"http://www.privat-support.com/test/ip/offline.jpg\">";

}

?>
```

wenn du noch normalen text einfügen willst kannst du dass ja vor und hinter dem php mit ganz normalem html


----------



## ilnowa (20. September 2003)

*Welche Ports sind denn möglich*

Hallo zusammen,

ich habe eure Geschreibse bis hierhin nachvollzogen.

Ich habe auf meinem Rechner auf Port 59110 die Software Gamevoice (Sprachkommunikation) laufen, als Server versteht sich.

Ich habe dieses Skript hochgeladen und erziele jedoch nur offline Statusmeldungen. Woran liegt das Der Gamevoice Server ist definitiv erreichbar.



> <?php //PHP ADODB document - made with PHAkt 2.5.0?>
> <html>
> <head>
> <title>Untitled Document</title>
> ...


----------



## chrostek (20. September 2003)

Hi,

ich hab mal einen Portscan bei der Adresse gemach, laut dem der Port nicht offen ist. Bist du sicher, dass der Port auch aus dem Internet erreichbar ist und nicht nur aus dem internen Netzwerk ? Hast du einen Router, oder eine Firewall, oder evt. die Windows XP Firewall aktiviert ?


----------



## ilnowa (21. September 2003)

Danke für die Mühe,

ich habe einen Router der aber den Zugriff auf diesen Port zuläßt. Wenn ich den Gamevoice Server starte und meinen Clankollegen grünes Licht gebe können sie mittels der Gamevoice Software auch connecten.

Allerdings bin ich eben noch in der Testphase und lasse den Server noch nicht 24 h laufen. Möchte ich auch nicht deswegen soll ja diese Anzeige online/offline da sein.

Anderes Zeug wie Firewall benutze ich aus diesem Grund nicht.


----------



## chrostek (22. September 2003)

Hi,

hast du das Scipt auf demselben Rechner liegen, wie auch der Server ist ? Dann wäre es nämlich möglich, dass es Probleme bei der Auflösung des Hostnamen gibt.
Falls das so ist, gib als Hostnamen einfach mal localhost ein. Oder Probiere es von einem externen Server: http://chrostek.dyndns.org/test.php


----------



## ilnowa (22. September 2003)

Nein, das Skript liegt auf meinem webspace. Dort wird es aufgerufen unter :
http://www.ilnowa.de/portal/status2.php

Ist wie gesagt noch hübsch häßlich weil Testphase


----------



## SonicBe@m (22. September 2003)

Ich denke nicht das das funktionieren wird! 
Das liegt warscheinlich nur darann das er nichts auflösen kann
Ohne nem portforwarder wirste da kein ergebnis erzielen da zwar nach aussen nen Port offen ist aber der router nichts davon versteht wie man mit der PHP anfrage umgehen soll
-> Portforwarder oder router weg!


----------



## ilnowa (22. September 2003)

nix da Router weg, da hängt mein LAn hinter.

Was ist den ein Portforwarder 
Wo krieg ich so ein Ding


----------



## bossi (29. Mai 2004)

hi,
schon nen bißchen älter der beitag, aber ich habe da nochmalk ein frage :-( 
wie kann man eine fehlermeldung als antwort bekommen ?
z.b. die fehlermeldung 403 oder 404 oder oder oder  

bye
bossi


----------



## Operator_Jon (29. Mai 2004)

/€dit:
Tut mir leid, muss ein Fehler im Forum sein!
Habe diesen Post in einem anderen Thread gemacht   
Naja, in diesem Sinne...


----------



## bossi (29. Mai 2004)

im wollte eine  rüchgabe haben, die z.b.  *error 404*  lautet


----------



## dundee12 (12. Februar 2005)

Hallo das ist ja alles schonmal sehr gut. Ich möchte diesen Script auch anwenden. Nur wie macht man das wenn mein Hauptserver off ist das der auf den Zweitserver automatisch zugreift?
Würde mich sehr über eure Hilfe freuen!


----------



## Aligator (4. Mai 2005)

Guten Tag, ich möchte sowas wie hier (http://www.shellmaster.de/status.html) gerne machen, aber leider kenne ich die Ports nicht. Kann mir da evtl. einer helfen

Das sollte genau so sein, aber ich brauche nur die Ports, den rest habe ich schon!



MfG Aligator


----------



## Aligator (4. Mai 2005)

Hab folgendes Problem, ich kann nur 2 abfragen machen die anderen funktionieren nicht.

Kann mir jemand helfen


```
<?php

echo "Server ist ";

$fp = @fsockopen("84.16.228.121",80,&$errno,&$errstr,2) or die("<font color=\"red\">offline</font>");

echo "<font color=\"green\">online</font>";

?>
<br>
<?php

echo "MySQL ist ";

$fp = @fsockopen("84.16.228.121",4133,&$errno,&$errstr,2) or die("<font color=\"red\">offline</font>");

echo "<font color=\"green\">online</font>";

?>
<br>
<?php

echo "FTP ist ";

$fp = @fsockopen("84.16.228.121",21,&$errno,&$errstr,2) or die("<font color=\"red\">offline</font>");

echo "<font color=\"green\">online</font>";

?>
<br>
<?php

echo "POP3 ist ";

$fp = @fsockopen("84.16.228.121",110,&$errno,&$errstr,2) or die("<font color=\"red\">offline</font>");

echo "<font color=\"green\">online</font>";

?>
<br>
```


----------



## Dr Dau (4. Mai 2005)

Hallo!

Versuch es mal hiermit:

```
<html>
<head>
<title>Server-Status</title>
</head>
<body>
<table border="1">
<?php
$fp = @fsockopen("server1-ip",80,&$errno,&$errstr,2); 
if(!$fp) 
{ 
echo "<tr><td width=\"100\">Server ist</td><td width=\"100\"><font color=\"red\">offline</font></td></tr>"; 
} 
else 
{ 
echo "<tr><td width=\"100\">Server ist</td><td width=\"100\"><font color=\"green\">online</font></td></tr>"; 
} 
?> 
<?php
$fp = @fsockopen("server1-ip",21,&$errno,&$errstr,2); 
if(!$fp) 
{ 
echo "<tr><td width=\"100\">FTP #1 ist</td><td width=\"100\"><font color=\"red\">offline</font></td></tr>"; 
} 
else 
{ 
echo "<tr><td width=\"100\">FTP #1 ist</td><td width=\"100\"><font color=\"green\">online</font></td></tr>"; 
} 
?> 
<?php
$fp = @fsockopen("server1-ip",110,&$errno,&$errstr,2); 
if(!$fp) 
{ 
echo "<tr><td width=\"100\">POP3 ist</td><td width=\"100\"><font color=\"red\">offline</font></td></tr>"; 
} 
else 
{ 
echo "<tr><td width=\"100\">POP3 ist</td><td width=\"100\"><font color=\"green\">online</font></td></tr>"; 
} 
?> 
<?php
$fp = @fsockopen("server2-ip",2121,&$errno,&$errstr,2); 
if(!$fp) 
{ 
echo "<tr><td width=\"100\">FTP #2 ist</td><td width=\"100\"><font color=\"red\">offline</font></td></tr>"; 
} 
else 
{ 
echo "<tr><td width=\"100\">FTP #2 ist</td><td width=\"100\"><font color=\"green\">online</font></td></tr>"; 
} 
?> 
</table>
</body>
</html>
```
server1-ip und server2-ip sind, ebenso wie die Ports und Serverbeschreibungen, anzupassen.
Getestet mit verschiedenen Diensten auf verschiedenen Servern.
Das ganze lässt sich natürlich noch mittels HTML-Anweisungen bzw. CSS Optisch aufarbeiten.

Gruss Dr Dau

[edit] Ach ja, und was die Ports angeht. Es sind zwar für die üblichen Dienste bestimmte Ports als Standard vorgegeben (kleine Auswahl), jedoch kann der Admin diese ändern. Im Zweifel guckst Du also in die Konfiguration.  [/edit]


----------



## Tnw1 (8. Juni 2005)

hallo mich interessiert auch so ein script nur leider komme ich mit dem Design nicht mit habe schon 2 tagelang rumexperimentiert aber ohne erfolg möchte das script in diesem desing haben



```
<html>

<head>
<title>Status</title>
</head>

<body>

<table cellSpacing="0" cellPadding="0" width="550" border="0">
  <tr>
    <td width="50" height="25"><span style="FONT-WEIGHT: bold">Port</span></td>
    <td width="180" height="25"><span style="FONT-WEIGHT: bold">Dienst</span></td>
    <td align="middle" width="70" height="25"><span style="FONT-WEIGHT: bold">
    Status</span></td>
    <td width="250" height="25"><span style="FONT-WEIGHT: bold">Anmerkung</span></td>
  </tr>
  <tr>
    <td>21</td>
    <td>FTP-Server (FTP)</td>
    <td align="middle">&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>22</td>
    <td>Linuxshell (SSH) </td>
    <td align="middle">&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>25</td>
    <td>Postausgangsserver (SMTP) </td>
    <td align="middle">&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>53</td>
    <td>1. Nameserver (DNS) </td>
    <td align="middle">&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>53</td>
    <td>2. Nameserver (DNS) </td>
    <td align="middle">&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>53</td>
    <td>3. Nameserver (DNS) </td>
    <td align="middle">&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>53</td>
    <td>4. Nameserver (DNS) </td>
    <td align="middle">&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>80</td>
    <td>Webserver (HTTP) </td>
    <td align="middle">&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>110</td>
    <td>Posteingangsserver (POP3)</td>
    <td align="middle">&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>143</td>
    <td>Posteingangsserver (IMAP) </td>
    <td align="middle">&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>3306</td>
    <td>Datenbankserver (MYSQL) </td>
    <td align="middle">&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
</table>

</body>

</html>
```

nur wie bekomme ichdas so hin ? Bitte helft mir


----------



## Dr Dau (8. Juni 2005)

Hallo!


```
<?php
$fp = @fsockopen("server1-ip",21,&$errno,&$errstr,2); 
if(!$fp) 
{ 
echo "<tr><td>21</td><td>FTP-Server (FTP)</td><td align=\"middle\">offline</td><td>Hier deine Anmerkung</td></tr>"; 
} 
else 
{ 
echo "<tr><td>21</td><td>FTP-Server (FTP)</td><td align=\"middle\">online</td><td>Hier deine Anmerkung</td></tr>";
} 
?>
```
Und wo ist nun das Problem?
Bei "server1-ip" muss Da natürlich noch die IP eintragen.
Für weitere Server den Code dublizieren und die Zelleninhalte + IP anpassen.
Der Rest ist reines HTML, dass hast Du ja schon.

Ich habe das Script bewusst so gemacht, weil es so auf einfachste Art zu ändern/erweitern ist.

Gruss Dr Dau


----------



## Tnw1 (8. Juni 2005)

hi danke für die schnelle antwort aber genau das ist mein problem ich schaff es einfach nicht das script in meine html datei einzubinden mit genau diesem design


----------



## Dr Dau (8. Juni 2005)

Kann es sein dass Du mit einem WYSIWYG Editor arbeitest?
Dann solltest Du mal in den Quellcode-Modus umschalten und dort den Code einfügen.
Alternativ kannst Du es auch in z.b. Notepad machen.
Dir ist aber hoffentlich klar dass die Datei die Endung .php haben muss?


----------



## Tnw1 (8. Juni 2005)

ich nutze frontpage ja mir ist klar das es .php sein muss


----------



## Tnw1 (9. Juni 2005)

ich schaffe es einfach nicht den befehl zum abfragen des status an die richtige stelle des desing zu setzen entweder wird mir der code selbst angezeigt oder der status wird unter dem design angezeigt hier mal die komplette .php datei wie ich es versucht habe 



```
<H1 class=big><IMG height=10 src="img/point_10px.gif" width=20>Aktueller 
Systemstatus</H1>
<H2>&nbsp;</H2>
<TABLE cellSpacing=0 cellPadding=0 width=550 border=0>
<TBODY>
<TR>
<TD width=50 height=25><SPAN style="FONT-WEIGHT: bold">Port</SPAN></TD>
<TD width=180 height=25><SPAN style="FONT-WEIGHT: bold">Dienst</SPAN></TD>
<TD align=middle width=70 height=25><SPAN 
style="FONT-WEIGHT: bold">Status</SPAN></TD>
<TD width=250 height=25><SPAN 
style="FONT-WEIGHT: bold">Anmerkung</SPAN></TD></TR>
<TR>
<TD>21</TD>
<TD>FTP-Server (FTP)</TD>
<TD align=middle><IMG height=12 src="img/status_green_point_twinkle.gif" 
width=20>


<CODE><FONT color=#000000><FONT color=#0000bb>&lt;?php<BR>$fp </FONT><FONT 
color=#007700>= @</FONT><FONT color=#0000bb>fsockopen</FONT><FONT 
color=#007700>(</FONT><FONT color=#dd0000>"http://servdaemon.se.funpic.de/"</FONT><FONT 
color=#007700>,</FONT><FONT color=#0000bb>21</FONT><FONT 
color=#007700>,&amp;</FONT><FONT color=#0000bb>$errno</FONT><FONT 
color=#007700>,&amp;</FONT><FONT color=#0000bb>$errstr</FONT><FONT 
color=#007700>,</FONT><FONT color=#0000bb>2</FONT><FONT color=#007700>); 
<BR>if(!</FONT><FONT color=#0000bb>$fp</FONT><FONT color=#007700>) <BR>{ 
<BR>echo </FONT><FONT 
color=#dd0000>"&lt;tr&gt;&lt;td&gt;21&lt;/td&gt;&lt;td&gt;FTP-Server 
(FTP)&lt;/td&gt;&lt;td align=\"middle\"&gt;offline&lt;/td&gt;&lt;td&gt;Hier 
deine Anmerkung&lt;/td&gt;&lt;/tr&gt;"</FONT><FONT color=#007700>; <BR>} 
<BR>else <BR>{ <BR>echo </FONT><FONT 
color=#dd0000>"&lt;tr&gt;&lt;td&gt;21&lt;/td&gt;&lt;td&gt;FTP-Server 
(FTP)&lt;/td&gt;&lt;td align=\"middle\"&gt;online&lt;/td&gt;&lt;td&gt;Hier deine 
Anmerkung&lt;/td&gt;&lt;/tr&gt;"</FONT><FONT color=#007700>;<BR>} 
<BR></FONT><FONT color=#0000bb>?&gt;</FONT> </FONT></CODE>



</TD>
<TD>&nbsp;</TD></TR>
<TR>
<TD>22</TD>
<TD>Linuxshell (SSH) </TD>
<TD align=middle><IMG height=12 src="img/status_green_point_twinkle.gif" 
width=20></TD>
<TD>&nbsp;</TD></TR>
<TR>
<TD>25</TD>
<TD>Postausgangsserver (SMTP) </TD>
<TD align=middle><IMG height=12 src="img/status_green_point_twinkle.gif" 
width=20></TD>
<TD>&nbsp;</TD></TR>
<TR>
<TD>53</TD>
<TD>1. Nameserver (DNS) </TD>
<TD align=middle><IMG height=12 src="img/status_green_point_twinkle.gif" 
width=20></TD>
<TD>&nbsp;</TD></TR>
<TR>
<TD>53</TD>
<TD>2. Nameserver (DNS) </TD>
<TD align=middle><IMG height=12 src="img/status_green_point_twinkle.gif" 
width=20></TD>
<TD>&nbsp;</TD></TR>
<TR>
<TD>80</TD>
<TD>Webserver (HTTP) </TD>
<TD align=middle><IMG height=12 src="img/status_green_point_twinkle.gif" 
width=20></TD>
<TD>&nbsp;</TD></TR>
<TR>
<TD>110</TD>
<TD>Posteingangsserver (POP3)</TD>
<TD align=middle><IMG height=12 src="img/status_green_point_twinkle.gif" 
width=20></TD>
<TD>&nbsp;</TD></TR>
<TR>
<TD>143</TD>
<TD>Posteingangsserver (IMAP) </TD>
<TD align=middle><IMG height=12 src="img/status_green_point_twinkle.gif" 
width=20></TD>
<TD>&nbsp;</TD></TR>
<TR>
<TD>3306</TD>
<TD>Datenbankserver (MYSQL) </TD>
<TD align=middle><IMG height=12 src="img/status_green_point_twinkle.gif" 
width=20></TD>
<TD>&nbsp;</TD></TR></TBODY></TABLE>
<P> </P>
```

ich weiß echt nicht mehr was ich da noch versuchen kann oder wie ich es "richtig" da einfügen kann


----------



## Dr Dau (9. Juni 2005)

Hallo!

Frontpage ist ein WYSIWYG Editor und so wie es aussieht fügst Du den Code im WYSIWYG-Modus ein, dass wird so nie was.
Entweder Du kannst in Frontpage auf Quellcode-Modus umschalten oder Du machst es mit z.b. Notepad.

Ausserdem darfst Du kein Protokoll (http://) mit angeben, in deinem Posting versuchst Du so nämlich einen Webserver auf Port21 abzufragen, Port21 ist aber ein FTP-Server, Webserver ist Port80.

Wenn ich mir dein Posting so ansehe, hat Frontpage eh Probleme im WYSIWYG-Modus mit Copy&Paste.
Dabei hat Frontpage die Schriftformatierung aus dem Forum übernommen und HTML-Zeichen maskiert, beides darf so nicht sein.

Wenn du dich mit Quellcode bearbeitung nicht auskennst, wirst Du immer wieder auf solche und andere Probleme stossen.
Da kann ich dir nur SelfHTML ans Herz legen.
SelfHTML gibt es auch als offline Version zum Download und ist als Pflichtlektüre für jeden Webmaster anzusehen.


> *Zielgruppen*
> 
> Zielgruppe sind alle Computer-Anwender, die einen Web-Browser ihr Eigen nennen, die möglichst schon einige "Surf"-Erfahrungen im Web gesammelt haben und die nun wissen möchten, wie man selbst Web-Seiten erstellt. Alle Menschen, die sich privat, ehrenamtlich oder beruflich mit dem Erstellen von Web-Seiten beschäftigen, sind angesprochen. Erklärtes Ziel des Dokuments ist es, Menschen Mut zu machen, das, was sie zu sagen haben, selbst im Web zu publizieren und dadurch aktiv an der World Wide Web Revolution teilzunehmen. Denn das Motto des Web lautet: "Everyone's a publisher".
> 
> ...


Gruss Dr Dau


----------



## justlooking (4. Mai 2007)

```
<?
  function icqstatus($uin) {
       $fp = fsockopen ("status.icq.com", 80, $errno, $errstr, 4);
    if (!$fp) {
      return "[Fehler/Error: $errstr ($errno)]";
    } else {
      fputs ($fp, "GET /online.gif?icq=$uin&img=5 HTTP/1.0\r\n\r\n");
      while (!feof($fp)) {
        $line = fgets ($fp,128);
        if (preg_match ("/^Location:/", $line)) {
          if (preg_match ("/\/5\/online1\.gif/", $line)) {
            return "online";  // online
          } elseif (preg_match ("/\/5\/online0\.gif/", $line)) {
            return "offline";  // offline
          } elseif (preg_match ("/\/5\/online2\.gif/", $line)) {
            return "nicht feststellbar/not detectable";  // disabled or user doesn't exist
          } else {
            return "[Fehler/Error]";  // error
          }
          break;
        }
      }
      fclose ($fp);
    }
  }

  echo icqstatus(123456);
?>
```
So das ist für eine Homepage um den ICQ Status anzuzeigen. jetzt wollte ich euch bloß fragen was wo rein muss: ICQ Nummer etc. 
Danke für eure Hilfe


----------



## Nehoz (7. Dezember 2007)

Ist eigentlich kein Ding und ganz einfach was das betrifft! Du musst es natürlich noch vernünftig in ein Style einbetten und zum Beispiel mit Grafiken für den Online / Offline Status versehen da es ansonsten ja nicht wirklich prall ausieht!

So denn mal die Stelle wo die ICQ Nummer reinkommt.


```
echo icqstatus(DEINE ICQ NUMMER);
```


----------



## achim12345654321 (3. März 2010)

Ich weiß das ich hier schon fast Leichenschändung an dem Posting vornehme. Doch das Script gefällt mir echt soweit sehr gut. Ich würde jedoch gerne prüfen lassen ob Bilder Online sind und nicht ein Server. Also testen ob z.B http://www.meinepage.de/bild0001.jpg online ist. Ist das auch Möglich?

Danke
Achim


----------



## tombe (3. März 2010)

Also wenn es Dateien auf einem fremden Server/Domain sind kannst du dir das mal anschauen: http://www.php.net/manual/de/features.remote-files.php, wenn es Dateien auf deiner eigenen Donaim sind kannst du auch damit http://de.php.net/manual/de/function.file-exists.php arbeiten.


----------



## achim12345654321 (3. März 2010)

die daten liegen auf einem bilderwebspace, also fremden server.

habe das script mal getestet, es scheint soweit auch zu gehen. einzigstes mango ist das wenn eine datei nicht vorhanden ist nicht nur der Text "Datei konnte nicht geöffnet werden" sondern zuvor auch noch eine Fehlermeldung kommt. (Warning: fopen(http://127.0.0.1/bild1.jpg) [function.fopen]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in C:\wamp\www\test.php on line 2)

Kann man das irgendwie ausblenden?

achim


----------



## tombe (3. März 2010)

Schreib es so:


```
@fopen("bla bla bla")
```
 
Also das @ vor den Befehl. Dadurch wird die Fehlermeldung unterdrückt.


----------



## achim12345654321 (4. März 2010)

ich danke dir, genau das habe ich gesucht.

achim


----------



## achim12345654321 (5. März 2010)

nachdem ich jetzt schon zwei tage das internet leer lese und es einfach nicht kapier wende ich mich halt wieder an die netten leute von hier. 

ist ja so das ich nicht nur ein bild prüfen will, darum dachte ich mir das ich mir ne .txt anlege mit den bildernamen drinn und die dann in einer schleife prüfen lasse. das er mir die Datei einließt habe ich auch geschafft, nur nicht wie ich das in eine schleife bringe und er mir alle nacheinader abfragt. nachdem ich dazu nicht clever genug bin wollte ich halt die abfragen untereinander schreibe. 


```
<?php

echo "Server ist ";

$fp = @fopen ("http://127.0.0.1/bild001", "r") or die("<font color=\"red\">offline</font>");

echo "<font color=\"green\">online</font>";



echo "Server ist ";

$fp = @fopen ("http://127.0.0.1/bild002", "r") or die("<font color=\"red\">offline</font>");

echo "<font color=\"green\">online</font>";
?>
```

sobald aber das erste Bild offline ist macht das script ja nicht mehr weiter. und an dem zahne ich jetzt schon die ganze Zeit ohne auf eine brauchbare Idee zu kommen. 


kann mir wer weiterhelfen?

lg
achim


----------



## Dr Dau (5. März 2010)

achim12345654321 hat gesagt.:


> sobald aber das erste Bild offline ist macht das script ja nicht mehr weiter.


Ist doch auch logisch.
Laut PHP-Manual entspricht die() der Funktion exit().
Und exit() beendet nunmal das Script in einem Fehlerfall. 

Angesehen davon:
Haben Deine Bilder keine Dateiendung?
Prinzipiell funktionieren Bilder zwar auch ohne Dateiendung, sind aber sehr ungewöhnlich (egal auf was für ein System).

Du sagst dass Du die Bildnamen in eine Textdatei schreibst.
Dann solltest Du beim auslesen der Textdatei ja auch ein Array haben.
Das Array kann man sich zu nutze machen:

```
<?php
// $file[] bildet ein Array
$file[] = "http://127.0.0.1/011.jpg";
$file[] = "http://127.0.0.1/012.jpg";
$file[] = "http://127.0.0.1/013.jpg";
$file[] = "http://127.0.0.1/013.jpg";
$file[] = "http://127.0.0.1/015.jpg";
$file[] = "http://127.0.0.1/016.jpg";

// durchlaufe das Array in einer Schleife
for($i = 0; $i < count($file); $i++) {
    $handle = @fopen($file[$i], "r"); /* versuche die Datei zu öffnen */

    if($handle==true) { /* wenn die Datei geöffnet werden konnte..... */
        echo "<font color=\"green\">".$file[$i]." ist online</font><br>";
    } else { /* sonst dieses..... */
        echo "<font color=\"red\">".$file[$i]." ist offline</font><br>";
    }
}
?>
```
So wird Dir auch gleich gesagt welche Datei genau online bzw. offline ist (soll ja bei der Fehlersuche ganz nützlich sein). 

Bei mir existieren nur die Bilder "011.jpg" und "015.jpg".
Folglich werden diese in Grün als "online" angezeigt, während die übrigen Bilder in Rot als "offline" angezeigt werden.


----------



## Alucard VH (4. Oktober 2011)

alexorg hat gesagt.:


> probiers mal hier mit:
> 
> 
> ```
> ...


 
Und wie schreibt man es um wenn einer auf dem server joint das der server dann als belegt angezeigt wird?

Also wenn keiner auf dem server ist soll frei da stehen und sobald einer drauf ist soll belegt da stehen, was für befehle muss ich dann da reinschreiben?

MfG Alucard


----------



## oliverrehrmann (19. Januar 2022)

habe ein Problen mit dem Onlinestatus und Strarm servern ... Server leuft wird aber offline angezeigt. Warum ???


```
<body background='http://i.imgur.com/TT16s.jpg'>

<html>

<head>

<title>Onlinestatus</title>

<meta http-equiv="cache-control" content="no-cache">

<meta http-equiv="refresh" content="30">

</head>

<body>

<center>

<h1>Server Status</h1>

<table border="0" width="868px">

<tr>

<td><h3><u><b>Server Name<b><u><h3></td>

<td><h3><u><b>Server-Adresse<b><u><h3></td>

<td><h3><u><b>Status<b><u><h3></td>

</tr>

<?php

//Page Variables

    $online='<font color="#31B404"><b> Online</b></td>';

    $offline='<font color="#F00000"><b> Offline</b></td>';

?>

<! ------------------------------------->

<tr>

<td>Server 1</td>

<td><a target="_blank">217.93.88.227:25565</a></td>

<td><?php $fp = @fsockopen("217.93.88.227",25565,$errno,$errstr,2); if(!$fp) { echo "$offline"; } else { echo "$online"; } ?></td>

<tr>

<! ------------------------------------->

<tr>

<! ------------------------------------->

<tr>

<td>Server 2</td>

<td><a target="_blank">217.93.88.227:2302</a></td>

<td><?php $fp = @fsockopen("217.93.88.227",2302,$errno,$errstr,2); if(!$fp) { echo "$offline"; } else { echo "$online"; } ?></td>

<tr>

<! ------------------------------------->

<tr>

<! ------------------------------------->

<tr>

<td>Server 3</td>

<td><a target="_blank">217.93.88.227:28015</a></td>

<td><?php $fp = @fsockopen("217.93.88.227",28015,$errno,$errstr,2); if(!$fp) { echo "$offline"; } else { echo "$online"; } ?></td>

<tr>

<! ------------------------------------->

<tr>

<! ------------------------------------->

<tr>

<td>Server 4</td>

<td><a target="_blank">217.93.88.227:27015</a></td>

<td><?php $fp = @fsockopen("217.93.88.227",27015,$errno,$errstr,2); if(!$fp) { echo "$offline"; } else { echo "$online"; } ?></td>

<tr>

<! ------------------------------------->

<tr>

<! ------------------------------------->

<tr>

<td>Server 5</td>

<td><a target="_blank">217.93.88.227:27015</a></td>

<td><?php $fp = @fsockopen("217.93.88.227",27015,$errno,$errstr,2); if(!$fp) { echo "$offline"; } else { echo "$online"; } ?></td>

<tr>

<! ------------------------------------->

<tr>

<! ------------------------------------->

<tr>

<td>Server 6</td>

<td><a target="_blank">217.93.88.227:27015</a></td>

<td><?php $fp = @fsockopen("217.93.88.227",27015,$errno,$errstr,2); if(!$fp) { echo "$offline"; } else { echo "$online"; } ?></td>

<tr>

<! ------------------------------------->

<tr>

<! ------------------------------------->

<tr>

<td>Server 7</td>

<td><a target="_blank">217.93.88.227:27015</a></td>

<td><?php $fp = @fsockopen("217.93.88.227",27015,$errno,$errstr,2); if(!$fp) { echo "$offline"; } else { echo "$online"; } ?></td>

<tr>

<! ------------------------------------->

<tr>

<! ------------------------------------->

<tr>

<td>Server 8</td>

<td><a target="_blank">217.93.88.227:27015</a></td>

<td><?php $fp = @fsockopen("217.93.88.227",27015,$errno,$errstr,2); if(!$fp) { echo "$offline"; } else { echo "$online"; } ?></td>

<tr>

<! ------------------------------------->

<tr>

</table>

</center>

</body>

</html>
```

Ist da wo ein Feher den ich übersehen habe kann mir einer helfen.

danke schon mal im voraus


----------



## Yaslaw (19. Januar 2022)

Und was für ein Problem? Oder sollen wir das erraten?
Fehlermeldung/Fehlverhalten?


----------



## oliverrehrmann (19. Januar 2022)

Yaslaw hat gesagt.:


> Und was für ein Problem? Oder sollen wir das erraten?
> Fehlermeldung/Fehlverhalten?


zb.
 Ark Server "Server IP port"
Arma3 Server "Server IP port"
Rust Server "Server IP port"

habe es mit meheren server mal getestet
"Server IP port" sind richtig  werden aber Offline angezeigt

Minecraft geht und wird online angezeigt
FTP Server geht auch wird online angezeigt


----------

