Ankündigung

Einklappen
Keine Ankündigung bisher.

IP Abfrage mit vergleich

Einklappen

Neue Werbung 2019

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

  • IP Abfrage mit vergleich

    Hallo,
    habe das Problem dass das Script nicht so funktioniert wie ich das gern möchte,....
    Der sinn des Scriptes ist es zu prüfen ob die IP im lokalen Netzwerk ist, wer kann mir weiterhelfen???

    <?php

    if (isset($_SERVER['REMOTE_ADDR'])) $ip=$_SERVER['REMOTE_ADDR']; else $ip="0.0.0.0";


    $ip_bottom="10.1.1.1"; //Unter IP-Grenze


    $ip_top="10.1.255.255"; //Obere IP-Grenze

    if ( ($ip<$ip_top) & ($ip>$ip_bottom) ) //Abfrgae
    {
    echo '<meta http-equiv="refresh" content="0; url=/local/index.php>';
    }
    else
    {
    echo '<meta http-equiv="refresh" content="0; url=/index.php">';
    }
    ?>

  • #2
    wie wärs mit
    Code:
    if(substr($ip,0,2)=="10")

    Kommentar


    • #3
      http://de.php.net/manual/de/function.ip2long.php

      Damit rechnest du die IPs in Zahlen um.

      Diese dann im if() so vergleichen, wie du es schon machst. Ausser, dass du && statt & schreibst ...

      Kommentar


      • #4
        Zitat von Guradia
        http://de.php.net/manual/de/function.ip2long.php

        Damit rechnest du die IPs in Zahlen um.

        Diese dann im if() so vergleichen, wie du es schon machst. Ausser, dass du && statt & schreibst ...
        ??? Ich versteh nur bahnhof,...
        hab das script nicht selber geschrieben, nur zusammenkopiert,...
        mit funktionierendem Quelltext würdet ihr mir sehr weiterhelfen, habe keine richtige Ahnung um mir das selber zusammenzubasteln

        Kommentar


        • #5
          => IP in Zahlen, oder was meinst du?

          <?
          $ip=$_SERVER["REMOTE_ADDR"];
          echo ip2long($ip);
          ?>

          Kommentar


          • #6
            wie sieht das dann im ganzen aus?
            so oder wie???

            <?php


            $ip=$_SERVER["REMOTE_ADDR"];
            echo ip2long($ip);

            //Unter IP-Grenze
            $ip_bottom="10.1.1.1";

            //Obere IP-Grenze
            $ip_top="10.1.255.255";


            //Auswahl treffen
            if ( ($ip<$ip_top) && ($ip>$ip_bottom) )
            {
            echo '<meta http-equiv="refresh" content="0; url=/local/index.php>';
            }
            else
            {
            echo '<meta http-equiv="refresh" content="0; url=/index.php">';
            }
            ?>

            Kommentar


            • #7
              Nee, deine Zahlen da (top und bottom) musst du ja auch als Zahl und nicht mit Punkten schreiben! Ausserdem ist die Klammersetzung in deiner if Abfrage unnütz.

              Kommentar


              • #8
                Wenn ich das nun richtig verstanden habe ist dann die untere IP grenze 10111 und die obere 101255255, so aber die ip zB. 20.10.95.12, also 20109512 im bereich, jedoch dürfte das ja nicht sein,....

                Kommentar


                • #9
                  Danke nochmal hab nun geschafft,... falls es jeman interessiert:
                  hier ist der Quellcode
                  <?php

                  $ip = $_SERVER["REMOTE_ADDR"]; // IP rausbekommen

                  $ip_abs = ip2long($ip); // IP in Zahlen umwandeln
                  // $ip_abs = abs($ip_abs); // IP2long Betrag



                  ## Grenzen festlegen

                  // Unter IP-Grenze
                  $ip_bottom = "10.1.1.1";

                  $ip_bottom_abs = ip2long($ip_bottom); // IP in Zahlen umwandeln
                  // $ip_bottom_abs = abs($ip_bottom_abs); // IP2long Betrag


                  // Obere IP-Grenze
                  $ip_top = "10.1.255.255";

                  $ip_top_abs = ip2long($ip_top); // IP in Zahlen umwandeln
                  // $ip_top_abs = abs($ip_top_abs); // IP2long Betrag



                  // Auswahl treffen
                  if ( $ip_abs < $ip_top_abs AND $ip_abs > $ip_bottom_abs ) {
                  echo '<html><meta http-equiv="refresh" content="0; url=/local/index.php"></html>';
                  }
                  else {
                  echo '<html><meta http-equiv="refresh" content="0; url=/index.php"></html>';
                  }
                  ?>

                  Kommentar

                  Lädt...
                  X