PHP:$_SESSION 变量未定义

Jos*_*ell -1 html php session-variables

在表单页面上,我有以下内容:

<?php
session_start();
if (isset($_POST['submit'])){
   $_SESSION['username'] = $_POST['username'];
}
?>
<form action="index.php">
<input type="text" name="username">
<input type="submit" name="submit">
</form>
Run Code Online (Sandbox Code Playgroud)

在文件“index.php”上,我有:

<?php
session_start();
echo ($_SESSION['username']);
?>
Run Code Online (Sandbox Code Playgroud)

但是索引页面上的输出表明会话变量未定义。我该如何解决这个问题,为什么它是未定义的?

小智 5

您的表单已提交到索引文件,并且您正在尝试将会话设置在与表单相同的页面上。但是您需要在索引文件中设置会话。之后,您可以在其他页面上使用会话。