在PHP会话中使用变量

在PHP会话中使用变量,php,session,Php,Session,我试图让我的网上商店的用户输入一个用户名,然后将显示在每个页面上。我已经在header.php中启动了会话,并设置了username变量: session_start(); $_SESSION['username'] = $username; $username = ''; //set blank variable to be filled in index 然后,我使用以下命令调用index.php中的header.php: <?php include "header.php"; ?&

我试图让我的网上商店的用户输入一个用户名,然后将显示在每个页面上。我已经在header.php中启动了会话,并设置了username变量:

session_start();
$_SESSION['username'] = $username;
$username = ''; //set blank variable to be filled in index
然后,我使用以下命令调用index.php中的header.php:

<?php
include "header.php";
?>
但我不明白为什么。我想我已经声明它为空,但即使我给它一个值,index.php中的if语句也没有按预期工作

如何设置一个简单的会话并接受用户名变量(无密码),该变量将显示在index.php上?

您的错误很简单

$_SESSION['username'] = $username;
$username = '';
您试图在分配它之前使用
$username

$username = '';
$_SESSION['username'] = $username;
应该更好

您的错误很简单

$_SESSION['username'] = $username;
$username = '';
您试图在分配它之前使用
$username

$username = '';
$_SESSION['username'] = $username;

应该更好

我猜第13行就是这个
$\u SESSION['username']=$username

如果将
$username
分配给
$\u会话['username']
,则必须在之前的某个位置进行设置,在您的示例中我看不到这一点

您的代码必须如下所示:

//declare $username
$username = "somename";
$_SESSION['username'] = $username;
或者,如果您在条件或其他情况下设置了
$username
,您可以尝试以下操作:

$_SESSION['username'] = ( isset( $username ) ) ? $username : '';

我猜第13行就是这个
$\u SESSION['username']=$username

如果将
$username
分配给
$\u会话['username']
,则必须在之前的某个位置进行设置,在您的示例中我看不到这一点

您的代码必须如下所示:

//declare $username
$username = "somename";
$_SESSION['username'] = $username;
或者,如果您在条件或其他情况下设置了
$username
,您可以尝试以下操作:

$_SESSION['username'] = ( isset( $username ) ) ? $username : '';

没有任何愚蠢的问题,别忘了把你的问题标记为已解决:)我会的,不过需要等几分钟。再次感谢!没有任何愚蠢的问题,别忘了把你的问题标记为已解决:)我会的,不过需要等几分钟。再次感谢!