Ping-Code

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • 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

    Kommentar


    • #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

      Kommentar


      • #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.

        Kommentar


        • #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ß

          Kommentar


          • #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

            Kommentar


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

              Kommentar


              • #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.

                Kommentar


                • #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ß

                  Kommentar


                  • #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.

                    Kommentar


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

                      Kommentar


                      • #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";
                            }
                        ?>

                        Kommentar


                        • #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

                          Kommentar


                          • #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ß

                            Kommentar


                            • #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..

                              Kommentar

                              Lädt...
                              X