多步php表单

时间:2014-04-04 07:47:51

标签: php forms html-email

我正在使用一个3步的PHP表单,将数据发送到我的电子邮件。我使用三个不同的php文件。

第一个表单应将数据存储为$_SESSION并重定向到下一个表单。第二种形式也是如此。但是当我完成第三个(最后一个)表单时,它只发送第三个表单中的数据。不能从前两个表单中获取存储的数据。

由于我php 5.3+ version,我无法使用session_register();。这是所有表单脚本。

以下是Form 1 and Form 2

Form 3

我不知道我错过了什么。有没有其他方法来存储和使用输入数据?任何帮助将不胜感激。感谢。

2 个答案:

答案 0 :(得分:3)

我使用的方法是将上一步中的所有数据存储在隐藏输入(<input type="hidden">)中,并使用相同的名称。这样他们就可以在$_POST[]中访问了。

注意:如果您这样做,请在最后一步输入任何密码字段。您不应该以明文形式在HTML中输入密码。

答案 1 :(得分:0)

我可以看到您的代码存在的问题是您在设置会话var之前放置了redirection标头。

我的意思是,这部分:

$_SESSION['condition_home'] = $_POST['condition_home'];
$_SESSION['selling_plan'] = $_POST['selling_plan'];
$_SESSION['comment'] = $_POST['comment'];

应该在header('Location: second_page.php');之前