Inserir quantos campos quiser

Olá a todos.

Tenho uma intranet em minha empresa funcionando corretamente, mas agora preciso realizar algumas alterações. Em uma certa parte do cadastramento do inventário tem o campo para cadastrar o IP da máquina, mas por algumas atividades da empresa algumas máquinas utilizam mais de um IP, e isso deverá constar também no inventário.
Minha ideia foi de colocar uma opção do tipo:

Além de ter um IP uma opção ao lado, adicionar IP. assim iria agromerando, poderia colocar a quantidade de IPs que fosse necessário.

Alguém já fez algo assim? Como faço?

Obrigado a todos.

Você vai precisar criar uma tabela somente pra armazenar os ips então.

> IP_PESSOA
+Pessoa(FK)
+IP_COD(PK)
+IP(String)

:slight_smile:
Abraço

é a ideia de uma nova tabela é realmente boa, e acho até que será a única opção.

no caso eu quero independente da máquina ter mais de um IP ou não,

exemplo

Maquina “A” tem 2 IPs
Maquina “B” tem 1 IP
Maquina “C” tem 4 IPs

entendeu?

como faço pra que os IPs estejam ligados sua máquina, chaves no caso né??
mas a minha maior dúvida é colocar isso pra JSP, eu uso um banco Postegresql, alguém já fez algo parecido? tem como me mandar um exemplo.

Desde já agradeço.

galera, estou querendo adicionar quantos IP´s quiser no meu inventário…
pô meu iventário é em jsp e só tem um campo pra colocar somente um IP. quero ter um botão do tipo, adicionar mais um IP, e assim eu vou adicionando quantos quiser. e ao clicar nesse botão ir adicionando os IP´s.
Alguém já fez algo do tipo? tem alguma sugestão??

cara… acho que o que vai ter que fazer é recarregar a página passando algum parâmetro pra saber quantos <input> vai ter que criar…

ou ajax, essas coisas manja?
mas de alguma maneira vai fazer isso…
tipo… eu costumo fazer assim…
o nome do campo é por exemplo “ip_1”, o próximo “ip_2” sendo que esse numero ae é a volta do for…

ae você passa pra página que grava junto com esses campos (só dar um submit) quantas voltas você deu no for…

ae do outro lado, é só fazer um loop e ir gravando dentro do loop… pegando request.getParameter(“ip_” + variavel_loop );
entendeu?

sei lá… é uma idéia…

abraço!

[quote=“Felipe_MP”]galera, estou querendo adicionar quantos IP´s quiser no meu inventário…
pô meu iventário é em jsp e só tem um campo pra colocar somente um IP. quero ter um botão do tipo, adicionar mais um IP, e assim eu vou adicionando quantos quiser. e ao clicar nesse botão ir adicionando os IP´s.
Alguém já fez algo do tipo? tem alguma sugestão??[/quote]

Você pode fazer isso com um pouco de Ajax. O JSP só terá um campo IP e botão ao lado para o usuário adicionar mais IPs, caso seja necessário.

Com Ajax você pode ir carregando vários inputs no form. Tem vários exemplos por aí…

vlw lounatico, tua ideia é boa, mas não manjo muito de Ajax, sobre o for vou dar uma olhada, mas acho q não é isso que quero.

Guilherme, como já disse não sei nada de Ajax. essa ideia do botão pra adicionar vários ip´s como seria???

Mais ou menos assim:

function displayInputs&#40;&#41; &#123; // adiciona um input utilizando o InnerHTML &#125;

&lt;input type=&quot;text&quot; name=&quot;ip&quot;/&gt; &lt;a href=&quot;#&quot; onClick=&quot;displayInputs&#40;&#41;&quot;&gt;Adicionar mais um IP&lt;/a&gt;

[quote]Código:
function displayInputs() {
// adiciona um input utilizando o InnerHTML
}

Código:
<input type=“text” name=“ip”/> <a href="#" onClick=“displayInputs()”>Adicionar mais um IP</a> [/quote]

cara entendi bem usa lógica, mas como vou fazer pra guardar isso no banco?? (uso o postgre)
outra pergunta, esse input em InnerHTML é um input text normal???

a cada vez que eu clicar no link vai gravar no banco em uma tabela??

Isso eu acho que tem como fazer com Ajax…

mas uma outra alternativa seria gravar tudo de uma vez, depois… né?
aí você pode fazer aquilo que eu te falei… padronizar um nome, e manda prum outro jsp que num loop faz os inserts!

abraço!

Não, cada vez que você clicar no link um input será colocado no formulário. Na action basta você adicionar os campos digitados em um coleção que depois inserir no banco.

Isso eu acho que tem como fazer com Ajax…

mas uma outra alternativa seria gravar tudo de uma vez, depois… né?
aí você pode fazer aquilo que eu te falei… padronizar um nome, e manda prum outro jsp que num loop faz os inserts!

abraço![/quote]

Tem como inserir no banco cada vez que o usuário clica no link. Mas acho melhor ir adicionando os inputs e no final percorrer uma coleção com todos os valores do inputs e realizar os inserts. Logo acima eu dei essa dica.

Cada imput criado que no caso será mais um novo IP, vai dar um refresh na página? ou vai adicionando no formulario continuamente???

Outra coisa, tem algum exemplo de código que realiza essa tarefa???[/quote]

Vai adicionando continuamente, sem dar refresh na página.

utilizo páginas jsp aqui na intrante da empresa, logo esse programa que estou fazendo seguirá o padrão dessa intranet já existente. Não estou conseguindo me situar no código, como colocar imputs em um formulário, isso ainda está confuso, estou falando do código, pois a ideia já assimilei e aprovei, acho que dará certo.

tem algum exemplo ou algum trecho de código que eu possa me basear???