2013-12-16 55 views
1

我有大量的输入字段。如何将值传递给数组,以便将数组从一个页面传递到另一个页面? 示例:如何将Html输入值添加到PHP数组中?

<input type="text" value=<?php $arry = "compName" ?> placeholder="Company Name" /> 

这合法吗?我怎样才能正确地做到这一点?

编辑:

在我的网页,我已经“添加”和“删除”按钮,将添加/删除多个输入字段。底部还有一个“预览”按钮。用户将在点击预览之前添加/删除。预览将收集所有输入并将调用下一页。所以领域的数量是未知的。

这里是我的代码/标记的样子:

<div class="panel" style="width: 98%; margin:0 auto"> 
     <div class="row"> 
      <div class="large-6 columns"> 
       Advertiser Info: <hr> 
       <input type="text" value="compName" placeholder="Company Name" /> 
       <input type="text" value= "adEmail" placeholder="Email" /> 
       <input type="text" value="adContName" placeholder="Contact Name" /> 
       <input type="text" value="adPhone" placeholder="Phone # (NO DASHES)" /> 
       <input type="text" value="adStreet" placeholder="Street Address" /> 
       <input type="text" value="adCity" placeholder="City" /> 
       <input type="text" value="adState" placeholder="State/Provice" /> 
       <input type="text" value="adZip" placeholder="Zip/Postal Code" /> 
       <input type="text" value="adCountry" placeholder="Country" /> 

      </div> 

      <div class="large-6 columns"> 
       Billing Info: <hr> 
       <input type="text" value="bEmail" placeholder="Email" /> 
       <input type="text" value="bContName" placeholder="Contact Name" /> 
       <input type="text" value="bPhone" placeholder="Phone # (NO DASHES)" /> 
       <input type="text" value="bStreet" placeholder="Street Address" /> 
       <input type="text" value="bCity" placeholder="City" /> 
       <input type="text" value="bState" placeholder="State/Provice" /> 
       <input type="text" value="bZip" placeholder="Zip/Postal Code" /> 
       <input type="text" value="bCountry" placeholder="Country" /> 
      </div> 
     </div> 
    </div> 

因此,当用户点击添加和上面的代码完全相同的副本将会作出修改。

这样说,我想能够使用PHP数组通过html值。我怎样才能设置我的输入,以便我可以做到这一点?

+1

如果您不介意使用Javascript/jQuery,请在onsubmit()期间序列化表单并填充到隐藏字段中。 –

回答

2

你可以做一些调整,如:

使用输入类型元素的数组元素。

这样:

<input type="text" name="elem[name]" value="<?php echo $YOUR_VALUE;?>" 
<input type="text" name="elem[class]" value="<?php echo $YOUR_VALUE;?>" 
<input type="text" name="elem[marks]" value="<?php echo $YOUR_VALUE;?>" 

所以这两个变量您发布应少。

在这种情况下,您只发布一个变量而不是三个。

+0

如果我有 placeholder =”Company Name“/> TWICE,我希望它们是单独的数组元素? –

+0

您可以使用数组键来区分元素,例如,在上面的例子中,您仍然有三个元素:名称,类和标记 – Pupil

+0

让我在我的文章中编辑我的代码/标记,以便更好地理解我想说的是什么 –

0

使用Jquery获取输入字段的所有值,并创建{input_name:value}的json对象或key值的数组变量,然后在参数中传递它。

var key_value = {}; 
$('input').each(function(){ 
    key_value[$(this).attr('name')]= $(this).val(); 
}) 
alert(JSON.stringify(key_value)); 

现在你有一个字段名称作为键和它的值的对象。