我已经创建了一个登录脚本(http://pastebin.com/bCpXYwPq),我知道它很容易被SQL注入,我以后会修复它。
无论如何,我需要变量'$ users',所以我可以在任何地方回应它。
示例:在帐户页面上,我希望它回显电子邮件地址。 如果变量只存储在登录脚本中,我该怎么做?
答案 0 :(得分:2)
将序列化变量$users
放在$_SESSION
session_start();
$_SESSION['users'] = serialize($users);
再次抓住$用户:
session_start();
$users = unserialize($_SESSION['users']);
答案 1 :(得分:1)
您需要深入研究会话(http://php.net/manual/en/features.sessions.php)
的login.php:
session_start();
$_SESSION["username"]=$username;
$_SESSION["email"]=$email;
$specialdata=array("a","b","c");
$_SESSION["specialdata"]=serialize($specialdata);
在所有其他页面上,您需要访问该数据:
session_start();
if(!isset($_SESSION["username"]))
{
// User not logged in
echo "You aren't logged in"
}
else
{
// Logged in
echo "The username is: " . $_SESSION["username"];
echo "Your email is: " . $_SESSION["email"];
$specialdata=unserialize($_SESSION["specialdata"]);
echo "First element of special data: " . $specialdata[0]; // Prints a
}
答案 2 :(得分:0)
<强>会话即可。 definetly。在所有页面上使用session_start();
,以便在登录页面上激活会话,只需声明$_SESSION['username'];
,您就可以在任何地方使用$_SESSION['username'];
。