我有问题。我已经创建了一个系统,我可以使用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_
。
答案 0 :(得分:1)
您需要修复查询。
$mysqlskc = mysql_fetch_assoc(mysql_query("SELECT * FROM ucp_users WHERE LOWER(name)=LOWER('$login_slapyvardis')"));