gpt4 book ai didi

php - 如何检查用户名和密码是否区分大小写?

转载 作者:可可西里 更新时间:2023-11-01 07:59:12 25 4
gpt4 key购买 nike

我制作了一个登录检查脚本,用于检查用户名和密码是否与数据库中设置的帐户相匹配。一切正常,但它不区分大小写,它确实应该是!我该怎么做才能让这个脚本也检查大写/小写?例如:我有一个帐户,用户名:AdMin 密码:My43sGG。如果我在登录字段中输入 admin 和 my43sgg,它也可以工作。

我的脚本:

<?php

// connect to the database
include("config.php");

// username and password sent from form
$myusername=$_POST['myusername'];
$mypassword=$_POST['mypassword'];

// To protect MySQL injection
$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$myusername = mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($mypassword);
$sql="SELECT * FROM " .$members. " WHERE username='$myusername' and password='$mypassword'";
$result=mysql_query($sql);

// Mysql_num_row is counting table row
$count=mysql_num_rows($result);

// If result matched $myusername and $mypassword, table row must be 1 row
if($count==1){

// Register $myusername, $mypassword and redirect to file "login_success.php"
session_register("myusername");
session_register("mypassword");
header("location:index.php");
}
else {
?>

最佳答案

使用BINARY

WHERE BINARY username = BINARY '$myusername' AND
BINARY password = BINARY '$mypassword'

作为旁注,查询易受 SQL Injection 攻击如果变量的值(s) 来自外部。请查看下面的文章,了解如何预防它。通过使用 PreparedStatements,您可以摆脱在值周围使用单引号。

关于php - 如何检查用户名和密码是否区分大小写?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16581560/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com