PHP-登录后在标题中显示用户名

PHP-登录后在标题中显示用户名,php,html,sql,Php,Html,Sql,我刚刚学习了如何创建一个简单的登录脚本 此时,用户刚刚登录,它会将您重新引导到主页,而不确认您是否已登录 我有这个标题: 就在小主页图标的左侧,我想要$username显示谁登录过 index.php(标题所在位置) 团队 维基 当我单击login时,它运行login\u form.php <?php include 'connectionDetails.php'; ?> <?php session_start(); ?> <?php if (iss

我刚刚学习了如何创建一个简单的登录脚本

此时,用户刚刚登录,它会将您重新引导到主页,而不确认您是否已登录

我有这个标题:

就在小主页图标的左侧,我想要$username显示谁登录过

index.php(标题所在位置)


团队
维基

当我单击login时,它运行login\u form.php

<?php include 'connectionDetails.php'; ?>

<?php session_start(); ?>

<?php 

if (isset($_POST['username']) and isset($_POST['password'])) 
{
    $username = $_REQUEST['username'];
    $password = $_REQUEST['password'];


    $sql = "SELECT * FROM Users WHERE Username = ? AND Password = ?";

    $user = $username; 
    $pass = $password;

    $stmt = sqlsrv_prepare($conn, $sql, array(&$user, &$pass));

    if( !$stmt ) 
    {
        die( print_r( sqlsrv_errors(), true));
    }   

    sqlsrv_execute($stmt);

    if (sqlsrv_execute($stmt) === true) 
    {
        header('location: index.php');
    }

}

?>

所以有三件事

1) 如何在索引页面的标题中显示登录人员的用户名

2) 如果输入的凭据不正确,我应该向login_form.php添加什么以显示一个警报框


3) 有没有一种方法可以在用户登录后隐藏登录按钮?

您可以使用会话:

1) 如何在索引页的标题中显示用户名称 登录的人

登录时在会话中存储用户名

2) 如果 输入的凭据不正确

3) 有没有办法在用户登录后隐藏登录按钮


检查会话是否存在

您可以使用会话:

1) 如何在索引页的标题中显示用户名称 登录的人

登录时在会话中存储用户名

2) 如果 输入的凭据不正确

3) 有没有办法在用户登录后隐藏登录按钮

检查会话是否存在

1)您可以将用户名存储在$\u会话中,然后在需要时回显它

2) 当条件为false时,您可以向会话或post添加另一个值,然后回显一些html

3) 您可以在会话中存储一个变量,告诉Loginbutton是否显示。小例子:

if ($userloggedin == true) {
   //do not echo the button
} else {
  //echo the button
}
1) 您可以将用户名存储在$\u会话中,然后在需要的地方回显它

2) 当条件为false时,您可以向会话或post添加另一个值,然后回显一些html

3) 您可以在会话中存储一个变量,告诉Loginbutton是否显示。小例子:

if ($userloggedin == true) {
   //do not echo the button
} else {
  //echo the button
}


这只是一个简单的观察——看起来您正在数据库中以明文形式存储用户密码(这是一个相当大的安全风险)。此外,在查询中使用用户提交的数据(SQL注入攻击的主要途径)之前,不会对其进行任何清理。如果A-您在数据库中存储密码的散列,并在查询中使用用户提交的密码的散列,B-使用PDO了解准备好的语句,这会更好。查看手册和StackOverflow中的大量示例,我将看一看,谢谢。我以为我在这里使用了一个准备好的语句,我查看了PHP网站上sqlsrv_prepare的文档,这就是它显示的内容,所以我的语句没有准备好吗?对不起,我的错。我习惯于PDO,但我没有正确地查看您的代码。这已经是漫长的一年了,我的大脑已经疲惫不堪了。没有问题,我很感激你的评论。不过,这只是一个有趣的观察——看起来你在数据库中以明文形式存储用户密码(这是一个相当大的安全风险)。此外,在查询中使用用户提交的数据(SQL注入攻击的主要途径)之前,不会对其进行任何清理。如果A-您在数据库中存储密码的散列,并在查询中使用用户提交的密码的散列,B-使用PDO了解准备好的语句,这会更好。查看手册和StackOverflow中的大量示例,我将看一看,谢谢。我以为我在这里使用了一个准备好的语句,我查看了PHP网站上sqlsrv_prepare的文档,这就是它显示的内容,所以我的语句没有准备好吗?对不起,我的错。我习惯于PDO,但我没有正确地查看您的代码。这是一个漫长的一年,我的大脑疲惫不堪没有问题,我很感激你的评论,但我不想知道答案,我会阅读关于会话的文章,因为它们看起来非常有用,我会尝试一下它的其余部分:)哦,还有一个关于在会话中存储用户名的快速问题,我是否需要在我的main index.html中包含我的login_form.php以便它知道$username来自何处?$username将通过php显示,因此您可能希望有一个index.php,它能够在html视图中显示用户名抱歉,我想放index.php xD,那么我是否需要包含我的login_form.php这将是我所有的$username信息吗?谢谢你的回答,我将阅读关于会话的文章,因为它们看起来非常有用,我将尝试它的其余部分:)哦,还有一个关于在会话中存储用户名的快速问题,我是否需要在我的main index.html中包含我的login_form.php以便它知道$username来自何处?$username将通过php显示,因此您可能希望有一个index.php,它能够在html视图中显示用户名抱歉,我想放index.php xD,那么我是否需要包含我的login_form.php是不是有我所有的$username信息?
if ($userloggedin == true) {
   //do not echo the button
} else {
  //echo the button
}