PHP无法将变量从一个文件传递到包含文件:未定义的变量

时间:2015-07-28 11:19:43

标签: php variables scope include

您好我已经尝试了一些我在SO上看过的解决方案,但似乎没有解决我的问题。

我的登录页面( login.php )中有一个变量 $ C_userUsername ,我试图传递给一个包含文件( head.php )。这个想法是,在成功登录后,用户名将显示在页面上。

以下是代码。

的login.php:

 if ($valid) {

             global $C_userUsername;

             $T_userUserName = trim($userUsername);

             $C_userUsername = htmlentities($T_userUserName);


             } else {

               echo "<br>Invalid user name or password<br>";
            }

head.php:

echo "<ul>";
echo "<li id='regLi'><a href='registration.php'>Register</a></li>";
echo "<li id='onLi'><a href='login.php'>Login</a></li>";
echo "<li id='userLi'><a href='#'>$C_userUsername  is logged in</a></li>";

echo "</ul>";

2 个答案:

答案 0 :(得分:2)

将其保存在$_SESSION中。您可以检查session是否已设置,是否回显会话值。

$_SESSION['username'] = $username

在用户登录后设置此项。

echo $_SESSION['username'] 

您希望向用户显示其用户名。

答案 1 :(得分:0)

根据需要编写代码的两种方法。 第一个如下:

$_SESSION['user_name']=$user_name;

要使用全局变量,您必须包含要访问变量的页面。

$user_name="user name";
include('file_name.php'); 

在file_name.php文件中,您必须访问类似

的变量
$user_name=$GLOBALS['user_name'];