【发布时间】:2019-12-14 17:40:12
【问题描述】:
我对 PHP $_SESSION 有疑问。
成功登录/注册后,我在索引页面中只看到“用户名”。 当我将 $_SESSION['username'] 更改为 $_SESSION['password'] 时,也会显示。
我需要显示“积分”值,该值不是用户在登录/注册期间定义的(注册后自动添加 5 个积分)
如何从数据库中回显不是用户插入的值?
if (isset($_POST['login_user'])) {
$username = mysqli_real_escape_string($db, $_POST['username']);
$password = mysqli_real_escape_string($db, $_POST['password']);
if (empty($username)) {
array_push($errors, "Please write username");
}
if (empty($password)) {
array_push($errors, "Please write password");
}
if (count($errors) == 0) {
$password = md5($password);
$query = "SELECT * FROM users WHERE username='$username' AND password='$password'";
$results = mysqli_query($db, $query);
if (mysqli_num_rows($results) == 1) {
$_SESSION['username'] = $username;
$_SESSION['success'] = "Logged in ";
header('location: index.php');
}else {
array_push($errors, "Something went wrong");
}
}
}```
【问题讨论】:
-
你是如何在 index.php 中回显会话的?
-
我用那个
<?php if (isset($_SESSION['username'])) : ?> <p>Hello <strong><?php echo $_SESSION['username'];?></strong></p> <p> <a href="index.php?logout='1'" style="color: red;">Logout</a> </p> <?php endif ?> -
很不清楚你在问什么。 “如何从数据库中回显不是用户插入的值?” - 与处理 用户插入的值的方式相同......?它有什么区别,数据是如何进入数据库的,当你在这里谈论从读取数据时?
-
我的意思是获取用户的“积分”值,注册后自动插入。对不起,也许我不能完美地解释它,但接受的答案有效:)
标签: php mysql database session select