首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP登录系统-当像在数据库中登录用户名时,使用较小的用户名

问PHP登录系统-当像在数据库中登录用户名时,使用较小的用户名
EN

Stack Overflow用户
提问于 2015-01-27 19:36:41
回答 2查看 149关注 0票数 0

我已经用MySQL用php完成了一个登录系统,但我现在想要的是,当我在login.php中写我的用户名时,它也可以是小写字母,当我登录时,我的用户名将被更改为原始用户名,它是如何在数据库中注册的。

代码语言:javascript
复制
<?php

  session_start();

  if(isset($_SESSION["username"]))

    header("location:h_inc/h_pages/me.php");

    if(isset($_POST["submit"])){

      if(empty($_POST["username"]) || empty($_POST["password"])){
        $empty_fields = array();
        $empty_fields['error'] = "<font color=\"red\">Please fill all fields.</font>";

      }else{
        if(mysql_num_rows(mysql_query("SELECT * FROM users WHERE username = '".mysql_real_escape_string($_POST["username"])."' AND password = '".mysql_real_escape_string(md5($_POST["password"]))."' AND rank = '9'")) > 0){
          $empty_fields['true'] = "<font color=\"green\">You are now logged in.</font>";

          $_SESSION["username"] = $_POST["username"];
          $_SESSION["password"] = md5($_POST["password"]);

          echo "<script type='text/javascript'> window.location.href = 'index.php';</script>";
        }else{
          $empty_fields['error'] = "<font color=\"red\">Your datas are incorrect.</font>";
        }
      }
    }

?>
EN

回答 2

Stack Overflow用户

发布于 2015-01-27 20:13:14

不使用mysql_num_rows,而是从查询中获取结果,并使用其中的值显示用户名。

正如@Naruto在评论中指出的那样:考虑一下切换到PDO。

票数 0
EN

Stack Overflow用户

发布于 2015-01-27 20:32:16

返回您的查询值,然后从返回值中获取原始名称,并将其赋值到会话变量中

代码语言:javascript
复制
$result = mysql_query("SELECT * FROM users WHERE username = '".mysql_real_escape_string($_POST["username"])."' AND password = '".mysql_real_escape_string(md5($_POST["password"]))."' AND rank = '9'");
    if($result) {
    while ($row = mysql_fetch_array($result)) {
        $username = $row["username"];
    }
     $_SESSION["username"] = $username;
     $_SESSION["password"] = md5($_POST["password"]);
     echo "<script type='text/javascript'> window.location.href = 'index.php';</script>";
    }else{
          $empty_fields['error'] = "<font color=\"red\">Your datas are incorrect.</font>";
        }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28169547

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档