PHP将表单字段与其他字段关联

时间:2013-07-06 20:06:24

标签: php forms

我有一个用于引用项目的表单。用户将能够在我目前正在工作的表单中添加字段块。请考虑以下代码

<div class="fields">
   <select name="landscaping[]">
      <option value="1">Rocks</option>
      <option value="2">Other Rocks</option>
   </select>

   <select name="veneer[]">
      <option value="1">Veneer Rocks</option>
      <option value="2">Other Veneer Rocks</option>
   </select>

   <input type="text" name="quantity[]">

</div>

问题是用户可以选择单板或美化,但不能同时选择两者,但无论选择的数量是多少。可能是一个额外的参数。我需要一种方法在本节的每个实例中将数量与胶合板或美化相关联。

1 个答案:

答案 0 :(得分:1)

由于您使用javascript一次隐藏其中一个元素,我还会包含一个隐藏字段,其中包含您要从中获取值的选择字段的值。您也可以只查找具有值的那个,但由于它们可能每个都有一个值,因此发送一个告诉您确定应从哪个字段中提取的值更安全。

<div class="fields">
   <select name="landscaping[]">
      <option value="1">Rocks</option>
      <option value="2">Other Rocks</option>
   </select>

   <select name="veneer[]">
      <option value="1">Veneer Rocks</option>
      <option value="2">Other Veneer Rocks</option>
   </select>

   <input type="text" name="quantity[]">

   <!-- This value should change depending on which one is currently visible -->
   <input type="hidden" name="selectedField" value="landscaping">

</div>

然后在表单处理页面中使用以下内容:

$selection = $_POST[$_POST['selectedField']];

这会动态提取selectedField帖子的值,然后使用它来获取正确的选择列表。使用此方法可能会有风险...... 确保您清理POST数据!