为什么它不起作用?
的index.php :
<strong>Your name:</strong>
<form action="name.php" method"post">
<input type="text" name="username"/>
<input type="submit" name="Submit" value="Submit!" />
</form>
<?php
session_start();
$_SESSION['post-data'] = $_POST;
?>
name.php :
<strong>Your name is:</strong>
<strong>
<?php
session_start();
echo $_SESSION['post-data'];
?>
</strong>
name.php 打印我:
您的名字是:数组
我该如何解决这个问题?
答案 0 :(得分:1)
首先,在加载任何HTML之前,session_start();
应始终放在文档的顶部。
<强>的index.php 强>
//No need to start session here as no $_SESSION variables needed.
<strong>Your name:</strong>
<form action="name.php" method="post">
<input type="text" name="username"/>
<input type="submit" name="Submit" value="Submit!" />
</form>
其次,在将$_POST
数据发布到name.php
后分配,然后将其分配给$_SESSION
<强> name.php 强>
<?php
session_start();
$_SESSION['username'] = $_POST['username'];
?>
<strong>Your name is:</strong>
<strong><?php echo $_SESSION['username'];?></strong>
如果您想查看数组中的内容以进行调试,则可以使用var_dump()
。
var_dump()
var_dump($_POST);
或
var_dump($_SESSION);