2012-07-19 90 views
1

我有一个页面,允许用户使用JavaScript向文本添加和删除文本字段。将动态创建的输入值存储到PHP变量

文本字段命名为field1field2field3等,取决于有多少领域的用户已添加

我想所有的值存储从我的文本字段到一个PHP变量;

我知道我需要将它们存储到数组中,然后使用implode(),但是我怎样才能指定在我的PHP代码中有多少输入?

回答

2

通常接近这一点的最好办法是使用数组命名的输入,如下面的example in the PHP docs

<form action="" method="post"> 
    Nombre: <input type="text" name="personal[nombre]" /><br /> 
    Email: <input type="text" name="personal[email]" /><br /> 
    Cerveza: <br /> 
    <select multiple name="cerveza[]"> 
     <option value="warthog">Warthog</option> 
     <option value="guinness">Guinness</option> 
     <option value="stuttgarter">Stuttgarter Schwabenbräu</option> 
    </select><br /> 
    <input type="submit" value="submit me!" /> 
</form> 

你可以使用同样的名称为每个用户添加字段,如:

<input type="text" id="field1" name="fields[]" /> 
<input type="text" id="field2" name="fields[]" /> 

,然后只用按需要破灭:

$imploded_fields = implode(', ', $_POST['fields']); 
+0

嘿,非常感谢你,这工作得非常好! – user1537504 2012-07-19 10:29:51

0

有很多选择:

  1. 您可以使用cookie。使用PHP $_COOKIE可以得到它。 For help
  2. 您可以使用html hidden input fields - <input type="hidden" value="">并且可以存储实际数量的字段。

但是,迭戈Agulló是更好的一个

0

您可以创建一个隐藏字段,如果期权已经打开(字段1)1初始化。增加柜台的价值,同时增加田地和虎钳的价值。提交时,您会发现添加的总字段。

谢谢