PHP登录系统-输入小用户名,登录时使用类似数据库中的用户名

PHP登录系统-输入小用户名,登录时使用类似数据库中的用户名,php,mysql,database,Php,Mysql,Database,我在这里完成了一个使用MySQL的php登录系统,但现在我想知道,当我在login.php中写入用户名时,它也可以是小写字母,当我登录时,我的用户名将更改为原始用户名,以及它在数据库中的注册方式 <?php session_start(); if(isset($_SESSION["username"])) header("location:h_inc/h_pages/me.php"); if(isset($_POST["submit"])){

我在这里完成了一个使用MySQL的php登录系统,但现在我想知道,当我在
login.php
中写入用户名时,它也可以是小写字母,当我登录时,我的用户名将更改为原始用户名,以及它在数据库中的注册方式

<?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>";
        }
      }
    }

?>

从查询中获取结果并使用其中的值来显示用户名,而不是mysql\u num\u行


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

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

$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>";
        }
$result=mysql\u query(“从用户名=”.mysql\u real\u escape\u string($\u POST[“username”])。“”和密码=”.mysql\u real\u escape\u string(md5($\u POST[“password”])。”和排名='9');
如果($结果){
while($row=mysql\u fetch\u数组($result)){
$username=$row[“username”];
}
$\会话[“用户名”]=$username;
$_SESSION[“password”]=md5($_POST[“password”]);
echo“window.location.href='index.php';”;
}否则{
$empty_fields['error']=“您的数据不正确。”;
}

replace$\u SESSION[“username”]=$\u POST[“username”];在继续使用mysql_u*完整地编写项目之前,请考虑使用mysqli_uuo或PDO,因为mysql_u*已被弃用。。