Ping-Code

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Ping-Code

    Hallo Community,
    ich habe mir nun einige brauchbare Threads angesehen und viel gefunden. Ich habe aber einen Code gefunden der genau meinen Ansprüchen zu gute kommt.

    PHP Code:
    $fp fsockopen("192.168.178.1"80);
    if(!
    $fp)
        {
        echo 
    "IP nicht erreichbar";
        }
        
    else
        {
        echo 
    "IP erreichbar";
        
    socket_set_timeout($fp2);
        
    $res fread($fp2000);
        
    fclose($fp);
        print 
    $res;
        }
    ?> 
    Nun will ich aber keine IP mit dem Port Pingen sondern nur die IP.
    Gibt es eine Möglichkeit diesen nun zu ändern so, dass ich damit nur IPs pingen kann?
    Gibt es auch eine Möglichkeit die Fehlermeldung abzufangen die aufkommt wenn eine IP nicht erreichbar ist?
    Warning: fsockopen() [function.fsockopen]: unable to connect to 192.168.0.1:80 (Ein Verbindungsversuch ist fehlgeschlagen, da die Gegenstelle nach einer bestimmten Zeitspanne nicht ordnungsgemäß reagiert hat, oder die hergestellte Verbindung war fehlerhaft, da der verbundene Host nicht reagiert hat. ) in C:\xampp\htdocs\IP-Ping\ping.php on line 2
    Keine Verbindung möglich
    Danke jedem für die Hilfe!
    Gruß

  • #2
    http://www.schattenbaum.net/php/
    Bei Risiken und Nebenwirkungen fragen Sie Dr.Alban

    Comment


    • #3
      wenn du nur etwas anpingen willst, reichts so was völlig aus
      PHP Code:
      echo exec ('ping -c 1 192.168.60.163'); 
      peter
      Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
      Meine Seite

      Comment


      • #4
        Original geschrieben von Arni
        http://www.schattenbaum.net/php/
        Arni, kannst bitte unterlassen, in jedem deines Beitrags den Teach-Smiley zu posten. Das nervt.

        Comment


        • #5
          Hi und danke erstmal an alle,
          mit dem Code:
          PHP Code:
          echo exec ('ping -c 1 192.168.60.163'); 
          Kann ich zwar super pingen doch nicht erreichbare hosts werden dann als erreichbar angezeigt in dem code was ich hier vorliegen habe.
          PHP Code:
          <? 
          $ip = "192.168.0.1"; 
          $operatingsys = PHP_OS;

          if (strstr ($operatingsys,'WINNT'))
          {
              $online=exec("ping $ip -n 1");
              $pingme="OK";    
          }
          elseif (strstr ($operatingsys,'Linux'))
          {
              $online=exec("ping $ip -c 1");
              $pingme="OK";
          }
          else
          {
              echo "Unbekanntes Betriebssystem auf dem Webserver !";
          }

          if($pingme==OK);
              {
              if (eregi("Zielhost nicht erreichbar", $online)) 
                  {             print "$ip is offline<br>\n"; 
                  } 
              else 
                  {             print "$ip is online<br>\n"; 
                  }

          ?>
          Hast du da vielleicht einen anderen Code in dieser Form?
          @Arni
          Danke für die Lehrreiche Seite
          @asp2php
          danke für die moderation

          Gruß

          Comment


          • #6
            Kann ich zwar super pingen doch nicht erreichbare hosts werden dann als erreichbar angezeigt in dem code was ich hier vorliegen habe.
            auf meinem linux-system bekomme ich eine entsprechende ausgabe, wenn der host nicht erreichbar ist. schau dir mal die parameter von ping an.

            gruss
            peter
            Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
            Meine Seite

            Comment


            • #7
              ich finde den Klasse
              Bei Risiken und Nebenwirkungen fragen Sie Dr.Alban

              Comment


              • #8
                Hi Peter, obwohl die 192.168.0.1 in meinem Netzwerk nicht vergeben ist gibt der mir jedesmal die Ausgabe, dass die IP Erreichbar ist.
                Werd noch verrückt.

                Comment


                • #9
                  Habe den Code nun um einiges abgespeckt.
                  Bekomme aber einen Fehler.
                  Parse error: syntax error, unexpected T_ELSE in C:\xampp\htdocs\IP-Ping\ping.php on line 11
                  bei dem Code:
                  PHP Code:
                  <? 
                  //Eingabe der IP
                  $ip = "192.168.0.1"; 
                  //Pingen der IP mit anschliessender auswertung
                  $online=exec("ping $ip -n 1");  
                      //Vergleich der Werte
                      if($online=="Zeitüberschreitung der Anforderung");
                          {
                          print "$ip ist offline"; 
                          }
                          else
                          {
                          print "$ip ist online";
                          }
                  ?>
                  Diese Fehlermeldung verstehe ich aber nicht da das ELSE dort doch logisch ist. Kann mir das jemand erklären und/oder eine verbesserung vorschlagen?
                  Gruß

                  Comment


                  • #10
                    Original geschrieben von uemit1981
                    Diese Fehlermeldung verstehe ich aber nicht da das ELSE dort doch logisch ist.
                    nein, ist es nicht, da du mit dem semikolon hinter dem if dessen anweisungsblock schon beendet hast.
                    I don't believe in rebirth. Actually, I never did in my whole lives.

                    Comment


                    • #11
                      Ich verleih die nen Pokal!
                      Hab das total übersehen. Danke

                      Comment


                      • #12
                        Hab da was ganz brauchbares gemacht.
                        PHP Code:
                        <?
                        //Eingabe der IP
                        $ip = "192.168.0.1";
                        //Pingen der IP mit anschliessender auswertung
                        $ping = exec("ping $ip -n 1");
                        if(eregi("Verlust", $ping))
                            {
                            print "$ip ist nicht Erreichbar";
                            }
                        else
                            {
                            print "$ip ist Erreichbar";
                            }
                        ?>

                        Comment


                        • #13
                          PHP Code:
                          <?php
                          // IP oder Host
                          $ip "127.0.0.1";
                          // Wenn keine Ausgabe von ping.exe erfolgen soll, dann true benutzen.
                          $exec true;

                          // Pingen der IP mit anschliessender auswertung
                          if($execexec("ping $ip -n 1"$array$return);
                          else 
                          system("ping $ip -n 1"$return);

                          // Vergleich der Werte
                          if($return) print "$ip ist offline";
                          else print 
                          "$ip ist online";
                          ?>
                          Aber wieso nicht fsockopen()?
                          Bevor ich nicht in einem angemessenen Alter bin, werde ich keine Witze mehr über schmalle machen!
                          - Zitat Berni

                          Comment


                          • #14
                            Hi, ich habe diesen Weg bewusst nicht genommen da man bei fsockopen() einen port angeben muss. Ich habe aber eine lösung gebarucht mit der man nur ips pingen sollte.
                            Gruß

                            Comment


                            • #15
                              OffTopic:
                              freilich - pingen bedarf keinerlei ports - die datenpakete pakete prallen mit hellem klang an dem 'rechner' ab und melden somit seine zugänglichkeit
                              überlege es dir - vielleicht interessiert dich nicht nur die reaktion eines servers, sondern auch die zugänglichkeit eines bestimmten dienstes..

                              Comment

                              Working...
                              X