我有一个动态表格。
用户可以根据需要创建n个字段。 他可以用
形式创建1,2,3,4 ......个元素编码ID
<form method="post" action="">
<label>Service</label>
<select name="service">
<option value="1">Purchase</option>
<option value="2">Sale</option>
<option value="3">Rent</option>
</select>
<label>Number of fields</label><input type="text" name="no_fields"><br>
<input type="submit" name="submit">
</form>
<?php
if($_POST['no_fields']>0)
{
?>
<form method="post" action="">
<?php
$j=$_POST['no_fields'];
$s=$_POST['service'];
for($i=1;$i<=$j;$i++)
{
?>
<?php echo $i.". "; ?>
<label>Name of the field : </label><input type="text" name="name_field[]">
<label>Type : </label>
<select name="type[]">
<option>text</option>
<option>textarea</option>
<option>button</option>
<option>radio buton</option>
<option>checkbox</option>
</select>
<br><br>
<?php
}
?>
<input type="hidden" name="serv_id" value="<?php echo $s; ?>">
<input type="hidden" name="loop" value="<?php echo $j; ?>">
<input type="submit" name="save" value="save">
</form>
<?php
}
if(isset($_POST['save']))
{
foreach($name_field as $v)
{
echo $v;
}
}
?>
我想回应表单的元素,但我无法做到这一点。 Plz帮助我。
答案 0 :(得分:0)
使用相同的名称字段可能会产生问题。
<label>Name of the field : </label><input type="text" name="name_field[]">
<label>Type : </label>
<select name="type[]">
应该是
<label>Name of the field : </label><input type="text" name="name_field<?php echo $i;?>[]">
<label>Type : </label>
<select name="type<?php echo $i;?>[]">
使用类似的东西
foreach($_POST as $p){
echo $p;
}
答案 1 :(得分:0)
相同的字段名称不应该是一个问题,因为它是数组格式。可能的解决方案是:
foreach($_POST['name_field'] as $nf) //this is for name field
echo $nf;
foreach($_POST['type'] as $te)
echo $te;
答案 2 :(得分:0)
if(isset($_POST['save'])) {
$values = array_values($_POST);
foreach($_POST as $v) {
print_r($v);
}
}