Ir para conteúdo
Fórum Script Brasil
  • 0

Calcular Um Ip De Um Valor De Uma Textfield


TMD

Pergunta

boas malta...

o problema é o seguinte:

eu estou a tentar construir um website para administrar o serviço de dhcp num servidor em linux

e eu tenho uma página onde digito as configurações gerais que pretendo para que o serviço funcione correctamente...

e então eu tenho os seguintes campos:

Network: ex: 192.168.100.0

Subnet Mask: ex: 255.255.255.0

Intervalo de IPs: inicio: 100

fim: 200

o que eu tenho aqui é o seguinte...quando em cima o utilizador define a network automaticamente o intervalo de IPs irá ser 192.168.100.(qualquer coisa)

ou seja, neste caso o inicio do intervalo de IPs irá ser desde: 192.168.100.100 até: 192.168.100.200 certo?

e a minha questão é a seguinte: eu quero gravar estes dados na bases dados...o campo "network" grava perfeitamente mas estou com alguma dificuldade em definir os campos "inicio" e "fim"..pois nestes campos só irá ser inserido a terminação do IP (ex: 150) e não o IP completo (ex: 192.168.100.150)

o que eu estou tentando fazer é assim ...gravar o campo "network" na base dados e no campo "inicio" estou a pensar faxer da seguinte maneira:

$inicioip = $network + inicio

mas assim eu irei ficar com 192.168.100.0.150 e o correcto deveria ser 192.168.100.150...aquele zero não deveria de existir...

me ajudem pf...se precisarem de mais alguma explicação digam...

eu não ponho aqui código nenhum porque inda não tenho nenhum código definido <_<

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

No mínimo você tá juntando o número 192.168.100.0 direto com o valor entre 100 e 200...

Assumindo que IP 192.168.100.0 esteja numa variável chamada x e o valor entre 200 num chamada y...

<?php
$x = "192.168.100.0";
$x = substr("$x", 0, 11);
$y = "150"; //Aqui é o número aleatório...
$ip_pra_gravar = "$x$y";
?>

Link para o comentário
Compartilhar em outros sites

  • 0

<?php
$x = "192.168.100.0";
$x = substr("$x", 0, 11); 
$y = "150"; //Aqui é o número aleatório...
$ip_pra_gravar = "$x$y";
?>

sim...voce tem razao aqui neste código...mas no 11 em cima....o 11 significa k é até ao 11º caracter certo?

mas e se a network for 192.168.1.0 ..

neste caso o 11º caracter vai ser o zero :s

Editado por TMD
Link para o comentário
Compartilhar em outros sites

  • 0

Assumi apenas que sempre o IP teria xxx.xxx.xxx.alguma coisa... se o seu ip for variar você pode usar o explode, para dividir o IP em 4 pedaços... transforma esses pedaços em um array, como você sempre vai querer mudar o último pedaço ele será o valor $nome_do_array[3], dai você usa o implode para juntar tudo novamente...

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...