这是我到目前为止所拥有的。问题是,当我点击提交它会带我到下一页,但会话不存储名字。如果我删除了操作,那么它是action =“”,那么会话将保存名字。为什么会发生这种情况?如何解决?
...html stuff...
<?php
session_start();
if(isset($_POST['submit'])){ $_SESSION['firstName'] = $_POST['firstName']; }
?>
<form method="POST" action="nextPage.php">
<input name="firstName" type="text" size="70"/>
...
<input type="submit" name="submit" value="Continue"/>
</form>
答案 0 :(得分:1)
$ _ POST ['firstName']不存在,直到您将表单数据发布到此页面本身。这就是将动作设置为“”的原因,因为它将表单数据发布到自身。
否则,请在nextPage.php而不是here中使用这两行代码,而是在nextPage中设置会话变量。
session_start();
if(isset($_POST['submit'])){ $_SESSION['firstName'] = $_POST['firstName']; }
答案 1 :(得分:0)
使用此
...html stuff...
<?php
ob_start(); // add this
session_start();
if(isset($_POST['submit'])){ $_SESSION['firstName'] = $_POST['firstName']; }
?>