我提出了2个观点,他们都有表格 . 第一个是基本细节,然后添加一个带有数值的文本框 .
例如:姓氏:成员:
提交按钮:继续
然后,我传递(作为 $data=array('name'=>$_POST['familyname'],'members'=>$_POST['family_members'])
;到控制器然后到新视图 .
然后我在这里循环,
for($counter=1;$counter<$members+1;$counter++)
{
echo "<input type='text' name='membername$counter'/>";
}
所以之后再次将它传递给另一个控制器功能 . 但后来我的问题是,我如何将$ name和 $members
值与第二种形式的新值一起传递 .
不使用隐藏的输入类型并将它们存储为其值
2 回答
这正是sessions的用途 .
你必须继续传递所有信息 . 有几种方法可以做到这一点 .
简单的方法是在第二种形式中创建
<input type="hidden">
字段,其中包含序列化的第一个表单的所有信息 .就像是:
我使用
json_encode
作为序列化程序 . 您还可以使用serialize
或适用于此格式的任何序列化程序 .要反序列化数据,请分别使用
json_decode
和unserialize
.更复杂且更复杂的解决方案是将数据存储在别处并通过某种令牌引用它,并仅传递令牌 . 如果数据集太大而您不想随时传递它,这将非常有用 .