Formulário php com campos dinamicos Array()

27/05/2021

8

Oi bom dia devs, sou novo por aqui, preciso da ajuda de vocês, novo em php também rsrsrsr.

Desculpe eu pesquisei mas não achei nada que pudesse me ajudar, então criei esse tópico colocando a minha real dúvida, espero que alguém consiga me ajudar, estou descabelando aqui rsrsrsr.

Estou com pequeno problema para organizar e desenvolver meu código, refere-se a 1 formulário de cadastro de produto e variações desse produto. (Estou fazendo tudo de forma muito simples portanto não espero nada muito complexo).

O formulário em questão contem 6 a 8 campos.

Para adicionar mais campos dinamicamente a este formulário e desenvolvi a função jquery para criar ou remover esses campos.

São 4 campos que é criado por vez, tamanho, cor, preço e quantidade, formando 1 linha de 4 campos para incluir na tabela.

Os 10 campos padrão do formulário eu incluo na tabela (produto).

E os demais campos eu gostaria de inserir na tabela (opcionais), opcionais do produto, criando a relação entre elas claro, para criar a relação é tranquilo.

A questão é o seguinte, como eu crio esses campos? Dou o attr (name) tamanho, cor, preço e quantidade para cada campo e vou implementando $i $i++ para cada 4 campos novos. Ou uso attr (name) como name=opcional[] para todos os campos e recebo eles num array?

Após receber esses campos, que podem ser até 10 linhas de 4 campos (tamanho, cor, preço e quantidade) como eu mapeio isso e incluo na tabela (opcionais) linha por linha, criando a cada linha 1 cadastro novo na tabela opcionais?

Conseguem entender meu livro rsrsssr, conto com o conhecimento de vocês que com certeza é muito mais que o meu, obrigado até aqui

Qualquer dúvida por favor podem me perguntar que eu respondo.

Obrigado mesmo, agradeço desde já!!
Responder

Posts

14/06/2021

Flavio Igino

Recebendo e salvando multiplos campos em linha (array)
$variante = count($request->vartam);
for ($i=0; $i < $variante; $i++) {
$provariante = new ProdutoVariante();
$provariante->idpro = $produto->id;
$provariante->vartam = $request->vartam[$i];
$provariante->varcor = $request->varcor[$i];
$provariante->varpreco = $request->varpreco[$i];
$provariante->varqtde = $request->varqtde[$i];
$provariante->save();
}
Responder

14/06/2021

Flavio Igino

Recebendo e salvando multiplos campos em linha (array)
$variante = count($request->vartam);
for ($i=0; $i < $variante; $i++) {
$provariante = new ProdutoVariante();
$provariante->idpro = $produto->id;
$provariante->vartam = $request->vartam[$i];
$provariante->varcor = $request->varcor[$i];
$provariante->varpreco = $request->varpreco[$i];
$provariante->varqtde = $request->varqtde[$i];
$provariante->save();
}



//Salvar novas variantes do produto
$vartest = $request->vartam;
if($vartest != ''){
$variante = count($request->vartam);

for ($i=0; $i < $variante; $i++) {
$provariante = new ProdutoVariante();
$provariante->idpro = $produto->id;
$provariante->vartam = $request->vartam[$i];
$provariante->varcor = $request->varcor[$i];
$provariante->varpreco = $request->varpreco[$i];
$provariante->varqtde = $request->varqtde[$i];
$provariante->save();
}

}
Responder

25/06/2021

Luiz

Pelo menos coloque algum código, se for pra fazer do zero, não seria ajuda seria mão de obra
Responder

02/07/2021

Flavio Igino

Obrigado pela dica Luiz, ajudou muito!!!
Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários. Para saber mais sobre o uso de cookies,
consulte nossa política de privacidade. Ao continuar navegando em nosso site, você concorda com a nossa política.

Aceitar