
Add Campos Dinamicos
Started By adler, 22/03/2007, 18:12
7 replies to this topic
#1
Posted 22/03/2007, 18:12
Fala galera, seguinte, quero montar um formulario onde o usuario possa adicionar campos como "text" por exemplo, e após isso tenho que adicionar no banco mysql estes dados gerados, só que não sei como iniciar esse processo, alguem teria alguma ideia ou um tutorial explicando alguma coisa? qualquer coisa de auxilio serve.
Valeu!
Adler
Valeu!
Adler
#2
Posted 22/03/2007, 19:48
n entendi mto bem...
vc quer que gere um formulario com campos tipo text e grave o que? Oo o nome do input?
n entendi
explica melhro ae
vc quer que gere um formulario com campos tipo text e grave o que? Oo o nome do input?
n entendi
explica melhro ae
#3
Posted 22/03/2007, 21:04
n entendi mto bem...
vc quer que gere um formulario com campos tipo text e grave o que? Oo o nome do input?
n entendi
explica melhro ae
Bom, vai funcionar assim, tenho como exemplo um formulario onde tem o item label "titulo" e um text com o nome dele como exemplo de titulo tambem, mas vou precisar adicionar mais text's mas deverá ser dinamico, tipo um javascript, mas ai vc vai falar pq não monta logo os text's que são necessarios? pq esses text's são dados inprevisiveis, hora vou ter 3 campos para cadastrar hora vou ter 20 campos. Conseguiu entender? Mas pra mim até ai esta tudo bem, o problema é na hora que vou mandar esses dados para o banco e como irei fazer isso, não estou conseguindo ver a logica pra isso, ou se tiver uma coisa mais fácil melhor ainda.
Grato,
Adler
#4
Posted 22/03/2007, 21:09
Nunca vi isso em algum site.. mas se tiver como, deve ser com ajax

"Tropeçamos sempre nas pedras pequenas; as grandes vêem-se logo"
#5
Posted 22/03/2007, 22:16
Dê uma lida sobre DOM.
http://www.howtocrea...cript/dombasics
http://www.howtocrea...cript/dombasics
Edição feita por: Eclesiastes, 22/03/2007, 22:16.
Felipe Pena
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29
#6
Posted 26/03/2007, 14:49
Amigos do forum, obrigado pelas respostas mas ainda não consegui fazer o trabalho, ainda vou continuar pesquisando, se conseguir resolver vou publicar aqui, mas ainda agradeço quem colocar uma ajuda pra mim. []'s
#7
Posted 26/03/2007, 17:29
É não da pra entender muito, mas você quer mandar o que tiver no campo text para inserir no bando???
#8
Posted 29/03/2007, 19:39
amigos do forum, achei uma solução que me auxiliou aqui é era o que estava querendo fazer, após de muita procura e pesquisa de matiral pela internet consegui fazer, são 3 páginas para fazer a aplicação, analisem e vejam se serve tambem para vcs:
conta.php
<form action="gera_roteiro.php" method="post">
<b>Roteiros</b><br />
Qual a quantidade de itinerários do roteiro?<br /><br />
<select name="quantidade">
<option value="0"> -- Escolha a quantidade -- </option>
<?
$qtd = 50;
for($r = 1; $r <= $qtd; $r++){
echo '<option value=" '.$r.' "> '.$r.' </option>';
}
?>
</select>
<input type="submit" value="OK"/>
</form>
gera_roteiro.php
<?php
$quantidade = (isset($_POST['quantidade']) && is_int(intval($_POST['quantidade']))) ? (int)$_POST['quantidade'] : 1;
// Abre formulário de cadastro
echo '<form action="final.php" method="POST" enctype="multipart/form-data">';
echo '<b>Cadastro de Roteiros</b><br />';
// Imprime os campos de acordo com a quantidade escolhida
echo '<table width="500" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>Número de noites<br><input type="text" name="n_noites" size="10"></td>
<td> Nome do Roteiro<br><input type="text" name="nome_roteiro"> </td>
<td valign="bottom" align="center"> Chega </td>
<td valign="bottom" align="center"> Sai </td>
</tr>
';
for($i = 1; $i <= $quantidade; ++$i)
{
echo '
<tr>
<td><input name="data_semana[]" type="text" id="data_semana[]" size="5" /></td>
<td><input name="itinerario[]" type="text" id="itinerario[]" size="10" /></td>
<td><input name="hr_chega[]" type="text" id="hr_chega[]" size="10" /></td>
<td><input name="hr_sai[]" type="text" id="hr_sai[]" size="10" /></td>
</tr>
';
}
echo '</table>';
// Fecha formulário
echo '<br /><input type="submit" value="Cadastrar"/>';
echo '</form>';
?>
final.php
<?php
#conta os posts enviados
$ds = sizeof( $_POST['data_semana'] );
$it = sizeof( $_POST['itinerario'] );
$hc = sizeof( $_POST['hr_chega'] );
$hs = sizeof( $_POST['hr_sai'] );
#insere no banco e conta os dados pegos em post
$insert = "insert into nome='{$_POST['nome_roteiro']}', ";
for($i = 0; $i < $ds; $i++)
{
# Faz contagem de cada post em array
$data_semana = $_POST['data_semana'][$i];
$itinerario = $_POST['itinerario'][$i];
$hr_chega = $_POST['hr_chega'][$i];
$hr_sai = $_POST['hr_sai'][$i];
$insert .= "data_semana". ($i+1) . " = '$data_semana' , ";
$insert .= "itinerario". ($i+1) . " = '$itinerario' , ";
$insert .= "hr_chega". ($i+1) . " = '$hr_chega' , ";
$insert .= "hr_sai". ($i+1) . " = '$hr_sai' , ";
}
$insert .= " descricao='teste'";
echo $insert;
?>
Vlw Galera,
Qualquer coisa que não entender é só perguntar, espero que ajudem alguem.
[]'s
conta.php
<form action="gera_roteiro.php" method="post">
<b>Roteiros</b><br />
Qual a quantidade de itinerários do roteiro?<br /><br />
<select name="quantidade">
<option value="0"> -- Escolha a quantidade -- </option>
<?
$qtd = 50;
for($r = 1; $r <= $qtd; $r++){
echo '<option value=" '.$r.' "> '.$r.' </option>';
}
?>
</select>
<input type="submit" value="OK"/>
</form>
gera_roteiro.php
<?php
$quantidade = (isset($_POST['quantidade']) && is_int(intval($_POST['quantidade']))) ? (int)$_POST['quantidade'] : 1;
// Abre formulário de cadastro
echo '<form action="final.php" method="POST" enctype="multipart/form-data">';
echo '<b>Cadastro de Roteiros</b><br />';
// Imprime os campos de acordo com a quantidade escolhida
echo '<table width="500" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>Número de noites<br><input type="text" name="n_noites" size="10"></td>
<td> Nome do Roteiro<br><input type="text" name="nome_roteiro"> </td>
<td valign="bottom" align="center"> Chega </td>
<td valign="bottom" align="center"> Sai </td>
</tr>
';
for($i = 1; $i <= $quantidade; ++$i)
{
echo '
<tr>
<td><input name="data_semana[]" type="text" id="data_semana[]" size="5" /></td>
<td><input name="itinerario[]" type="text" id="itinerario[]" size="10" /></td>
<td><input name="hr_chega[]" type="text" id="hr_chega[]" size="10" /></td>
<td><input name="hr_sai[]" type="text" id="hr_sai[]" size="10" /></td>
</tr>
';
}
echo '</table>';
// Fecha formulário
echo '<br /><input type="submit" value="Cadastrar"/>';
echo '</form>';
?>
final.php
<?php
#conta os posts enviados
$ds = sizeof( $_POST['data_semana'] );
$it = sizeof( $_POST['itinerario'] );
$hc = sizeof( $_POST['hr_chega'] );
$hs = sizeof( $_POST['hr_sai'] );
#insere no banco e conta os dados pegos em post
$insert = "insert into nome='{$_POST['nome_roteiro']}', ";
for($i = 0; $i < $ds; $i++)
{
# Faz contagem de cada post em array
$data_semana = $_POST['data_semana'][$i];
$itinerario = $_POST['itinerario'][$i];
$hr_chega = $_POST['hr_chega'][$i];
$hr_sai = $_POST['hr_sai'][$i];
$insert .= "data_semana". ($i+1) . " = '$data_semana' , ";
$insert .= "itinerario". ($i+1) . " = '$itinerario' , ";
$insert .= "hr_chega". ($i+1) . " = '$hr_chega' , ";
$insert .= "hr_sai". ($i+1) . " = '$hr_sai' , ";
}
$insert .= " descricao='teste'";
echo $insert;
?>
Vlw Galera,
Qualquer coisa que não entender é só perguntar, espero que ajudem alguem.
[]'s
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)