在单个$\u会话(PHP)中存储多个变量

在单个$\u会话(PHP)中存储多个变量,php,session,login,Php,Session,Login,我以前问过,我该怎么做,但没有得到正确的答案。这段代码是用户登录,所以当他们登录时,我希望用户名和头像可以在整个网站上跟踪。到目前为止,我只有用户名。我尝试过很多方法,但每次都失败了 $username = $_POST['username']; $password = sha1($_POST['password']); $sql = "SELECT * FROM users WHERE username = '$username' AND password = '$password'"; $r

我以前问过,我该怎么做,但没有得到正确的答案。这段代码是用户登录,所以当他们登录时,我希望用户名和头像可以在整个网站上跟踪。到目前为止,我只有用户名。我尝试过很多方法,但每次都失败了

$username = $_POST['username'];
$password = sha1($_POST['password']);
$sql = "SELECT * FROM users WHERE username = '$username' AND password = '$password'";
$result = mysqli_query($conn, $sql) or die('Error querying database.');
$count=mysqli_num_rows($result);

if ($count == 1) 
{
   $row = mysqli_fetch_array($result);
   while ($_SESSION['username'] = $row['username'])
   {
      session_start();
      header('Location: index.php'); 
   }
}
else
{
   echo 'Invalid Logins';
}

mysqli_close($conn);
?>

假设您将化身存储在数据库的
avatar
字段中:

if ($count == 1) 
{
    session_start();

    $row = mysqli_fetch_array($result);
    $_SESSION['username'] = $row['username'];
    $_SESSION['avatar'] = $row['avatar'];

    header('Location: index.php'); 
}
else
{
    echo 'Invalid Logins';
}

while($_SESSION['username']=$row['username']){SESSION_start();header('Location:index.php'))
---你从哪里得到这段糟糕的代码?如果要在查询中插入动态输入,请改用绑定变量。这段代码是我的导师写的。@Garrett Robertson:你急需找到另一段代码。那家伙不明白他在干什么。这个简单的修复方法让我看到了冗余代码……非必需的代码。谢谢谢谢,兄弟,真的很简单。人们一直在告诉我这些复杂的事情,好像都结束了。再次谢谢!