php - 将用户名保存在变量/函数中以备后用
问题描述
我需要建议。我有带有登录面板的系统。我需要创建个人资料网站,但我只需要显示一个登录用户的个人资料网站。所以我需要将该用户名从变量存储到我可以存储更长时间的东西中。我的登录面板如下所示:
<?php
} else {
if(isset($_POST['username'], $_POST['password'])){
$username= $_POST['username'];
$password= md5($_POST['password']);
$rola = "ziak";
if (empty($username) or empty($password)) {
$error= "Všetky políčka je potrebné vyplniť!";
} else {
$query = $pdo->prepare("SELECT * FROM ziaci WHERE ziak_meno = ? AND ziak_heslo = ? AND rola = ?");
$query->bindValue(1, $username);
$query->bindValue(2, $password);
$query->bindValue(3, $rola);
$query->execute();
$num = $query->rowCount();
if ($num == 1) {
$_SESSION['logged_in'] = true;
header("Location: index.php");
exit();
} else {
$error = "Nesprávne meno/heslo alebo nemáte status administrátora";
}
}
}
?>
当然,我已经定义了连接和其他东西。(这个系统是功能性的,我只需要“保存”那个变量
解决方案
在您的页面顶部放置session_start()
然后在成功登录时将用户名存储在会话中
if ($num == 1) {
$_SESSION['logged_in'] = true;
$_SESSION['uname'] = $username;
header("Location: index.php");
exit();
} else {
然后,当您需要使用它时,只需使用$_SESSION['uname']
推荐阅读
- oracle - 使用 db link 查找谁正在连接到数据库
- android - 在 Android 11 / R 中将铃声设置为铃声/通知
- apache-spark - databricks delta 格式文件无法读取
- c# - 找不到用于引用“C:\SolutionName\ProjectName\filename.dll”的附属程序集。参数不正确
- spring-boot - 在 Spring Boot 中从 VIEW 中获取
- azure-pipelines - '' 不是“密码”命令行选项 mage.exe 的有效值
- javascript - React-Redux:处理同一个 redux 状态属性的多次更改
- .htaccess - 重定向 301 时出现内部服务器错误
- powershell - 接收特定传入邮件的窗口弹出消息或警报
- linux - ecryptfs-recover-private 正确的密码,但生成的目录也被加密