所以,我正在开发一个PHP应用程序中心(Form),而且我遇到了困难。
我有3页表格和1页总结页面。所有都在.php扩展名中。所以,我想从第一页开始<input name="name" type="text" placeholder="Name" required>
并且:
<label>About yourself (Atleast 50 Words): <span>*</span></label><br />
<textarea name="yourself" placeholder="About yourself (Atleast 50 Words)" ></textarea>
到提交页面。
我可以接受Textarea&amp;的价值观。第3页的文本框,通过<?php echo $_POST['somethinghere']?>
提交页面。但我不能从第一页和第二页中获取值。
以下是带有style.css(pastebin.com)的php代码的链接: - http://pastebin.com/81vgHh5H
答案 0 :(得分:0)
我看了一下Pastebin,我想我可以看到问题所在。您将会话数据设置在他们填写的同一页面上(因此您在填充之前将这些字段分配给会话)。您需要在第2页而不是第1页上执行此操作。因此,您的模式是:
等等......
当您到达最后一页时,您的会话将包含表单中的所有信息,然后您可以根据需要进行处理。
示例:
第1页:
<form action="page2.php">
<input type="text" name="page1text"/>
<input type="submit"/>
</form>
第2页:
<?php
$_SESSION['page1text'] = $_POST['page1text'];
?>
<form action="page3.php">
<input type="text" name="page2text"/>
<input type="submit"/>
</form>
第3页:
<?php
$_SESSION['page2text'] = $_POST['page2text'];
?>
<form action="page4.php">
<input type="text" name="page3text"/>
<input type="submit"/>
</form>
第4页:
<?php
$_SESSION['page3text'] = $_POST['page3text'];
?>
<ul>
<li>Page 1: <?php echo $_SESSION['page1text'] ?></li>
<li>Page 2: <?php echo $_SESSION['page2text'] ?></li>
<li>Page 3: <?php echo $_SESSION['page3text'] ?></li>
</ul>
如您所见,第4页最终可以访问前几页中的所有信息。
编辑:此答案之前已阅读:我建议使用包含所有表单属性的模型。当他们填写每个页面时,使用用户输入的数据填充模型,然后当他们成功完成表单时,您可以销毁会话数据。
答案 1 :(得分:0)
您可以将它们存储在会话中,例如,将您的数据从第一页传递到第二页,在第二页中执行以下操作
$_SESSION['name'] = $_POST['name'];
再次,将您的数据从第2页传递到第3页,在第3页中执行以下操作
$_SESSION['yourself'] = $_POST['yourself'];
这将在会话中设置您的姓名和您自己的数据,并且可以从任何页面访问。如果该页面使用会话,请不要忘记在页面顶部包含session_start()。
现在,您可以从提交页面访问这些会话变量,例如
echo $_SESSION['name'];
echo $_SESSION['yourself'];