phpbb: Make the username case-insensitve on login again.
authorMatthijs Kooijman <matthijs@stdin.nl>
Mon, 14 Feb 2011 15:26:08 +0000 (16:26 +0100)
committerMatthijs Kooijman <matthijs@stdin.nl>
Mon, 14 Feb 2011 15:26:08 +0000 (16:26 +0100)
The username field in the phpbb3 database is case sensitive (i.e., it
has utf_bin collation), whereas in phpbb2 it was case insensitive. This
commit changes the SQL query to make logins case insensitive again,
since a lot of people used a capital letter for registering their
username, but forgot that later on...

conf/auth/phpbb.py

index 4fc06b9e63fbbfccba20bb8d663fda65bb3edc73..58dd72cab6a01660383d15df62cd9f1b4a6eafc6 100644 (file)
@@ -218,7 +218,7 @@ class PhpbbAuth(BaseAuth):
         # case insensitive collaction for the username field, so
         # usernames are checked in case insensitive manner.
         cursor = conn.cursor ()
-        cursor.execute ("SELECT user_password,user_email,username FROM `%susers` WHERE username=%%s" % self.dbconfig['phpbb_prefix'], username)
+        cursor.execute ("SELECT user_password,user_email,username FROM `%susers` WHERE LOWER(username)=LOWER(%%s)" % self.dbconfig['phpbb_prefix'], username)
 
         # No data? No login.
         if (cursor.rowcount == 0):