我有问题。我创建了一个系统,我可以用小写字母和大写字母在昵称中存在的mySQL登录,但如果我尝试用小写或大写字母登录,它说,我的密码不正确,但是当我尝试登录时它注册了正确的昵称,那么问题出在哪里?说密码不正确,但是正确
这里是我的代码:
if(isset($_POST['jungtis'])) {
if($_POST['login_slapyvardis'] != "" && $_POST['login_slaptazodis'] != "") {
$login_slapyvardis = mysql_real_escape_string($_POST['login_slapyvardis']);
$login_slaptazodis = mysql_real_escape_string($_POST['login_slaptazodis']);
$apsaugotaslogin_slaptazodis = md5($login_slaptazodis);
if($login_sumazintas == $mysqlskc['name']) {
$mysql = mysql_query("SELECT * FROM ucp_users WHERE name='$login_slapyvardis'") or die(mysql_error());
$mysqlskc = mysql_fetch_assoc(mysql_query("SELECT * FROM ucp_users WHERE name=LOWER('$login_slapyvardis')"));
$login_sumazintas = strtolower($login_slapyvardis);
$mysqli = mysql_fetch_assoc($mysql);
if($mysqli['password'] == $apsaugotaslogin_slaptazodis) {
$_SESSION['Logged'] = $mysqli['id'];
$ip = $_SERVER['REMOTE_ADDR'];
mysql_query("UPDATE ucp_users SET lastip = '$ip' WHERE id = '$mysqli[id]'");
header('Location: /home');
注意:我知道这是更好的,我需要使用PDO或mysqli
,但我使用mysql_
现在只。
您是否将名称存储为较低的字符串? –
仅供参考,MD5不应该被用于散列密码 –
不想...我的名字存储为Sprunkas,而是试图当这个错误是出现sprunkas或SPRUNKAS登录,但尝试登录Sprunkas将不会出现任何错误时。 P.S bcrypt最好是哈希密码? – user2488773