所以我在使用wordpress,但是wordpress社区似乎对严格的PHP或任何在这个场景中提供帮助的东西了解得还不够。
我有一个叫做重力表单的插件,我正在用它来创建一个非常精致的表单/调查。问题是,这是一个由多部分组成的表单,我不确定如何从第一部分到第二部分获取所有表单数据。
我可以通过查询字符串传递数据,但是我传递了25个字段的信息,所以它不太适合我。
提交form1后,是否可以将其重定向到第二页,其中包含一些代码,如
$foo = $_POST['field_1_1'];
其中field_1_1是前一个表单中输入的名称?
我以前使用过$_GET作为查询字符串,但是我不确定我刚才提到的例子是如何使用$_POST的
发布于 2012-08-08 01:14:28
是的,这是正确的用法。只需确保表单是使用POST
方法提交的。
只需确保(就像对$_GET
一样)不信任用户输入即可。确保对它们进行清理,以便与数据库交互。
发布于 2012-08-08 01:28:29
您可以在PHP中使用$_SESSION
变量,该变量在两个请求之间保留(最长到配置PHP会话的时间--通常是几个小时)。
或者,您也可以(在网络使用方面有点低效)将旧的表单数据输出到<input type="hidden">
元素中。如果您要这样做,我会考虑使用serialize函数
如果您在大型生产环境中执行某些操作,则可能还需要查看memcache或redis db
您可能还希望考虑使用JS在客户端进行分页,以便在填写完所有页面后提交表单
发布于 2012-08-08 01:15:32
是,如下所示更改您的表单:
<form method="post" action="page_to_post_to.php" name="form1" id="form1">
....
</form>
您要将method
更改为post
,并将action
更改为新页面。新页面就是您将能够访问$_POST
变量的页面。
https://stackoverflow.com/questions/11850877
复制相似问题