Nächste ip generieren...

Hawkster

Erfahrenes Mitglied
Hi all,
hab ma aus langeweile versucht ein solches Scripter zu erstellen, aber kläglich versagt weil es immer wieder sonferfälle gibt.

Weis jemand worin hier der Fehler IS?

Code:
<?
function nextip ($param1) {
   $cur = explode(".",$param1);

   if ($cur[3] >= 255) {
      $cur[2] = $cur[2]+1;
      $cur[3] = 1;
      if ($cur[2] >= 255) {
         $cur[1] = $cur[1]+1;
         $cur[2] = 1;
         if ($cur[1] >= 255) {
            $cur[0] = $cur[0]+1;
            $cur[1] = 1;
         }
      }
   }
   return $cur[0].".".$cur[1].".".$cur[2].".".$cur[3];
}

echo nextip("65.255.254.255");
?>

MFG Hawkster
 
oh ich hab vergessen was eigentlich passieren soll ^^

wenn ich <? nextip("65.122.1.255"); ?> z.b. mache soll er mich die nächst folgende ip zurück geben, z.b.: 65.122.2.1

MFG Hawkster
 
Wofür brauch man denn sowas?

Auf jeden Fall musst du die .255 auch raus lassen, da das die IP für das SubNet ist. Die Broadcast-IP (.0) hast du ja auch weg gelassen...
 
OK, also die hilfe is ja im mom bissl Lahm.

Hab hier das endscript wo auch .

Code:
<?
function nextip ($param1) {
   $cur = explode(".",$param1);

   if ($cur[3] == 255) {
       $cur[3] = 1;
       if ($cur[2] == 255) {
           $cur[2] = 1;
           if ($cur[1] == 255) {
               $cur[1] = 1;
               if ($cur[0] == 255) {
                   return "Ende";
               }
               else {
                   $cur[0] = $cur[0]+1;
               }
           }
           else {
               $cur[1] = $cur[1]+1;
           }
       }
       else {
            $cur[2] = $cur[2]+1;
       }
   }
   else {
       $cur[3] = $cur[3]+1;
   }
   return $cur[0].".".$cur[1].".".$cur[2].".".$cur[3];
}

echo nextip("65.123.1.35");
?>

MFG Hawkster
 
Ja jetzt geht ja alles, hatte vorher immer das prob

wenn ich die ip 65.3.255.255 ahbe wird die letze zwar zu 1 aber der vorletzte zu 256 ;)

Jetzt hab ichs gefixt (schaue oben wenen Source)

MFG Hawkster
 
Weiss ich selbst noch net, is mir grad ma in den sinn gekommen ;)

Vielleicht freut sich ma jemand drüber

MFG Hawkster
 
Zurück