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

Receber Campos dinâmicos do Formulário em PHP e inserir no BD MYSQL


luiz.fogaca

Pergunta

Boa tarde Senhores!
Sou novo com PHP e aqui no Fórum estou precisando de uma luz para a seguinte questão:
 
Tenho um formulário com alguns campos fixos + campos adicionados via JS, a minha dúvida é como receber esses campos no PHP sendo que o numero de campos é variável e depois salva-los no MySQL, 

 

Salvar um form sem campos dinâmicos eu sei como faz, mas com campos dinâmicos não consegui achar a solução. 

 

JavaScript:

Fonte:http://gianfratti.com/WP/index.php/adicionarremover-campos-dinamicamente-com-jquery/

JS:

$(function() {
        var scntDiv = $('#p_scents');
        var i = $('#p_scents p').size() + 1;
        
        $('#addScnt').live('click', function() {
                $('<p><label for="p_scnts"><input type="text" id="p_scnt" size="20" name="p_scnt_' + i +'" value="" placeholder="Input Value" /></label> <a href="#" id="remScnt">Remove</a></p>').appendTo(scntDiv);
                i++;
                return false;
        });
        
        $('#remScnt').live('click', function() { 
                if( i > 2 ) {
                        $(this).parents('p').remove();
                        i--;
                }
                return false;
        });
});

HTML Completo:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type='text/javascript' src='//code.jquery.com/jquery-1.6.4.js'></script>
<script language="javascript" type="text/javascript">
$(function() {
        var scntDiv = $('#p_scents');
        var i = $('#p_scents p').size() + 1;
        
        $('#addScnt').live('click', function() {
                $('<p><label for="p_scnts"><input type="text" id="p_scnt" size="20" name="p_scnt_' + i +'" value="" placeholder="Input Value" /></label> <a href="#" id="remScnt">Remove</a></p>').appendTo(scntDiv);
                i++;
                return false;
        });
        
        $('#remScnt').live('click', function() { 
                if( i > 2 ) {
                        $(this).parents('p').remove();
                        i--;
                }
                return false;
        });
});
</script>
</head>

<body> 
<form action="teste.php" method="get">
<h2><a href="#" id="addScnt">Add Another Input Box</a></h2>

<div id="p_scents">
    <p>
        <label for="p_scnts"><input type="text" id="p_scnt" size="20" name="p_scnt" value="" placeholder="Input Value" /></label>
    </p>
 </div>


<input type="submit" value="enviar" />
</form>
<script>document.write(i);</script>
</body>
</html>

 

Editado por luiz.fogaca
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Boa tarde amigo , joga em um array o resultado . Coloca o name do campo assim: name="nome_campo_do_seu_campo[]".

Quando você der o submit  , se tiver mais de um elemento , voce os recupera como um array. Para ver os valores , você faz : print_r($_POST['nome_do_seu_campo']; , então listará todos os valores armazenados.

 

Para inserir no banco  , depende de como voce quer inserir , todos os valores serao inseridos em um unico campo de uma tabela ? Ou serao inseridos separadamente em varias linhas de uma outra tabela? 

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,3k
    • Posts
      652,3k
×
×
  • Criar Novo...