为了账号安全,请及时绑定邮箱和手机立即绑定

PHP登录:使用MYSQL单页用户级登录

PHP登录:使用MYSQL单页用户级登录

慕的地8271018 2024-01-22 20:45:06
很抱歉,如果我要问的是非常基本的问题,但我已经在这个问题上坚持了两周了。我有一个登录页面,用户可以在其中登录我的网站。不同的用户角色会提示到不同的页面。现在,登录正常,但是当我的用户输入错误的密码或用户名时,不会触发警告,并且当用户应该重定向回index.php并触发警告时,用户仍停留在空白的login.php页面上。下面是我的代码登录表单(index.php)<div class="login-box-body">  <form method="post" action="login.php">    <div class="form-group has-feedback">      <input type="username" name="username" class="form-control" placeholder="Username">      <span class="glyphicon glyphicon-user form-control-feedback"></span>    </div>    <div class="form-group has-feedback">      <input type="password" name="password" class="form-control" placeholder="Password">      <span class="glyphicon glyphicon-lock form-control-feedback"></span>    </div>    <div class="row">      <div class="col-xs-8">      </div>      <!-- /.col -->      <div class="col-xs-4">        <button class="btn btn-primary btn-block btn-flat" type="submit" name="login" value="true">Sign In</button>      </div>      <!-- /.col -->    </div>  </form></div>在提问之前,我已经阅读了一些类似的问题,但没有找到解决方案。预先感谢您的帮助。
查看完整描述

1 回答

?
慕娘9325324

TA贡献1783条经验 获得超4个赞

在 login.php 的末尾,您将 $error 的值设置为Your PassWord or UserName is not Found - 但没有进一步发生。


仅当在数据库中找到用户时,重定向用户的开关才会发挥作用,在此附注,您应该加密用户密码并比较哈希值。


要解决您的问题,请尝试执行以下操作:


} else {

 $error='Your PassWord or UserName is not Found';

 header('location:login.php?error=' . $error);

}

然后在您的登录表单中,您可以简单地检查错误消息并显示它:


<?php if(isset($_GET['error'])): ?>

<div><?= $_GET['error'] ?></div>

<?php endif ?>


查看完整回答
反对 回复 2024-01-22
  • 1 回答
  • 0 关注
  • 88 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信