【问题标题】:cloning form elements and the return a template file克隆表单元素并返回模板文件
【发布时间】:2011-07-01 16:13:58
【问题描述】:

我正在建立一个网站,单击链接可以克隆表单元素,我想知道的是,当我将 $_POST 发送到我的控制器并检查提交的信息是否正确时,然后我如何返回具有足够元素的模板以便可以纠正错误,例如我的原始表单如下所示,

<fieldset class="entry">
<label for="email_address">Email Address</label>
<input type="text" name="email_address[]" value="" class="text small"/> 
<label for="firstname">Firstname</label>
<input type="text" name="firstname[]" value="" class="text small"/>                     
<label for="surname">Surname</label>                            <input type="text" name="surname[]" value="" class="text small"/>
</fieldset>

如何根据 $_POST 返回正确数量的字段集?

【问题讨论】:

    标签: php forms codeigniter


    【解决方案1】:

    回答这个问题:

    如何根据 $_POST 返回正确数量的字段集?

    如果每个字段集只有一个括号中的 [] 字段名称的实例,您可以只计算提交的数量(任何字段)。

    $number_of_fieldsets = count((array) $this->input->post('email_address'));
    

    我使用了$this-&gt;input-&gt;post()(因为您使用的是 CI),以防未设置值(它将返回 false),如果您愿意,可以使用一些 isset() 逻辑。

    如果$this-&gt;input-&gt;post('email_address') 的返回值为 false(count 将返回 0)或出于某种原因,一个字符串(count 将返回 1),我已在此处转换为数组。这只是一种温和的防御尝试,您可能希望使用自己的方法处理意外结果。

    再一次,您选择计算哪个字段并不重要。

    【讨论】:

      猜你喜欢
      • 2011-11-27
      • 2013-03-27
      • 2012-06-28
      • 1970-01-01
      • 2013-01-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多