Page 1 sur 1

Plage IP

Posté : 22 oct. 2012, 11:58
par Yunus
Bonjour,

J'aimerais faire un script php si possible qui va me permettre de pouvoir générer automatiquement des adresse ip suivant une plage donnée !

ex:
J'ai 3 tables type de connexion, plage ip, ip adresse :

type_connexion
id - 1
nom - Platine
bandwidth - 1GB / 1GB

plage_ip
id
id_type_connexion - 1 (FK)
ip_antenne_début (Je détermine le début de la plage) - 192.168.0.1
ip_antenne_fin (Je détermine la fin de la plage) - 192.168.0.230

ip_adresse
id
id_plage_ip - 1 (FK)
id_type_connexion - 1 (FK)
ip (le champ dont j'aimerais générer tout les ip suivant l’intervalle de la plage)
status - (libre ou déjà utiliser)

merci de votre aide

Re: Plage IP

Posté : 22 oct. 2012, 20:56
par moogli
salut,

Si j'ai bien compris tu veux afficher les ip entre x.x.x.1 et x.x.x.230, si oui tu peux utiliser la fonction range




@+

Re: Plage IP

Posté : 22 oct. 2012, 21:07
par yunus_ib
Merci pour la reponse, je veux enregistrer la plage x.x.x.1 et x.x.x.230 dans la table ip_adress, peux tu me faire un exemple ?

Re: Plage IP

Posté : 22 oct. 2012, 21:12
par moogli
ben avec mysql utilise un insert into larable values (1),(2) etc etc

pour cela range + implode pour avoir la chaine de caractère et ),( comme glue


@+

Re: Plage IP

Posté : 22 oct. 2012, 22:39
par younis_ib
Merci encore pour la reponse,

je m'excuse du derangement mais stp peux tu me faire le code du range ? si possible biensure ...

merci de l'aide !

Re: Plage IP

Posté : 22 oct. 2012, 23:10
par younis_ib
Merci pour votre intervention mais en cherchant sur internet via les mots cles donnees j'ai pu trouver quelque chose voila le code :

$from = "192.168.7.1";
$to = "192.168.8.50";
// generate ip addrs
$arry1 = explode(".",$from);
$arry2 = explode(".",$to);
$a1 = $arry1[0]; $b1 = $arry1[1]; $c1 = $arry1[2]; $d1 = $arry1[3];
$a2 = $arry2[0]; $b2 = $arry2[1]; $c2 = $arry2[2]; $d2 = $arry2[3];
while( $d2 >= $d1 || $c2 > $c1 || $b2 > $b1 || $a2 > $a1){
if($d1 > 255){
$d1 = 1;
$c1 ++;
}
if($c1 > 255){
$c1 = 1;
$b1 ++;
}
if($b1 > 255){
$b1 = 1;
$a1 ++;
}
echo "$a1.$b1.$c1.$d1 <br>";
$d1 ++;
}

pour tous ce qui auront besoin du code pour generer une plage ip ...

Merci