![]() |
Login by username or email
1 Attachment(s)
This code modification was made as part of a request in this thread: https://vborg.vbsupport.ru/showthrea...5&page=1&pp=15
All that it does is allow to use the email address instead of the username to be used to login (username also still works). Since people where stating that it should be released, well here it goes. 1 File edit: in file includes/functions_login.php, find: PHP Code:
PHP Code:
|
good idea, anyway, this is only a if statement to add, so it's not complicated to enhance if needed (like register by email only...)
|
email only would even be easier, just replace 1 word in the original file.
|
Wow, this is awesome.. except I won't be using it, maybe later. I like the concept and idea, it can be like a passport system if you integrate it into many sites. ;) :p
|
Just a pitty it has to be a code change.
|
how about extend this to allow userid logging ?
|
How you mean? Log what about a userid?
This is a simple code mod that make it possible to login with email address, there is no logging involved in this, and there won't be also. |
i think he was referring to login via with our userid indead of email or username... this becomes a little useless here... who remembers their userid better than their username?!
|
Lol, well logging in with userid could be done the same way, but it won't be easier to remember.
|
Quote:
ppl who have joined for a long period of time would remember it. well whatever, just an idea |
just replace email with userid and you're done.
|
Register by email would be good as well...
|
I was doing some playing around with this hack and something that I noticed was that if you have more than one user name assigned to the same email address it cannot tell which one to login as and it logs you in on the first one in the user id list.
Other than that it seems to work fine. Thank you for taking the time to create this hack Marco, Im still undecided as of right now though If ill be using this hack or not. Doug |
Quote:
|
Maybe instead of:
PHP Code:
PHP Code:
I did it on ours, and at least it prevents a shared email address from logging into any of them. Of course, I don't have any feedback to the user, cuz I don't know how... :confused: |
That is a good suggestion and i might add it to a next (??) release.
|
does this work on 3.5.4?
|
Quote:
for just email registration? and witch word? |
where/how do you add on the login boxes, instead of it just showing:
username: Password: TO Username/Email: Password: Pls and thx |
Quote:
maybe? |
how do you change this to ONLY e-mail, and does it work for 3.5.4?
|
to note this works with 3.5.4
|
These days (3.6.4) it is more like:
Loor for : PHP Code:
PHP Code:
|
Hi, is there anything similar that can be used for vbulletin v3.6.9?
|
Heyy Marco does it work for 3.7.x ?
|
Any downside to using
if ($vbulletin->userinfo = $vbulletin->db->query_first("SELECT userid, usergroupid, membergroupids, infractiongroupids, username, password, salt FROM " . TABLE_PREFIX . "user WHERE username = '" . $vbulletin->db->escape_string(htmlspecialchars_uni($username)) . "' OR email = '" . $vbulletin->db->escape_string(htmlspecialchars_uni($username)) . "'")) Isn't it simpler??? |
Quote:
|
So let me get this straight, if I just change this...
Code:
if ($vbulletin->userinfo = $vbulletin->db->query_first("SELECT userid, usergroupid, membergroupids, username, password, salt FROM " . TABLE_PREFIX . "user WHERE username = '" . $vbulletin->db->escape_string(htmlspecialchars_uni($username)) . "'")) Code:
if ($vbulletin->userinfo = $vbulletin->db->query_first("SELECT userid, usergroupid, membergroupids, username, password, salt FROM " . TABLE_PREFIX . "user WHERE email = '" . $vbulletin->db->escape_string(htmlspecialchars_uni($username)) . "'")) My goal is to make the username benign, and only for display purposes. The reason is I will be integrating VB in with some other apps that require email, and also use a username but only for display purposes. Am I correct? My second question then becomes, if two users have the same display name (for vB, username), will it cause problems? If so, is there a way to rectify that? Thanks much in advance! |
Hi folks -- long time no see...
Just a quick question: Does this hack still work with the current vB release? |
Works on vb 3.7.3 pl1. This is the code I used:
Code:
// Start hack login with mail address (MarcoH64) Quote:
|
I am currently using VB 3.74, I have not upgraded to PL1, but I will in a short moment. I don't know how many users have had any resolution to this, and I was nervous for a fraction of a second before I read through the mod and really took a moment to understand what it was doing:
I am a Director of Marketing and training for a modest NFP organization, our initiatives are funded by our member dues, plain and simple. We are planning to open up the site from a pretty non-interactive VB to a defined VB system with users actually entering the system, belonging to member classes, etc. For record keeping, we want our members to log in with their emails, this way, if something changed significantly, they might be inclined to modify their email address in their control panel so that we're all up to date. So, if you are looking to EXLUSIVELY require your members to log in with their emails (don't forget, this changes the Admin CP log in too), open the prescribed file in the original post, and if the file is otherwise unmodified, scroll down to around line 140, this is where you will find : Code:
if ($vbulletin->userinfo = $vbulletin->db->query_first("SELECT userid, usergroupid, membergroupids, infractiongroupids, username, password, salt FROM " . TABLE_PREFIX . "user WHERE username = '" . $vbulletin->db->escape_string(htmlspecialchars_uni($username)) . "'")) Code:
if $vbulletin->userinfo = $vbulletin->db->query_first("SELECT userid, usergroupid, membergroupids, username, password, salt FROM " . TABLE_PREFIX . "user WHERE email = '" . $vbulletin->db->escape_string(htmlspecialchars_uni($username)) . "'"); Again, this works, and unless VB drastically overhauls the login system, I see this very simple process working for patches to come. Cheers and Merry Christmas/Holidays and Happy New Year! |
Great, thanks. Installed.
|
hi everyone,
now that VB4 is released (and i'm running our forum on VB4) is anyone able to update this mod? i'm willing to pay for professional service. see my request here: https://vborg.vbsupport.ru/showthrea...17#post1953217 |
Can i get for version 4?
|
Vote on vB.com to have this feature made standard: http://tracker.vbulletin.com/browse/VBIV-9646
|
Does anyone have this working for v4.x? I'd like to be able to change a v4.x installation to only allow login via email address instead of username (and have the forum only permit one account per email address as well)
|
Quote:
I can confirm that ONLY the above code works for 3.8.5 too :) I add that you also need to change Username to Name/email. Look in language for: <strong>$vbphrase[username]</strong> Then Look for template register and search in it for: <strong>$vbphrase[username]</strong> and change it to <strong>$vbphrase[user_name]</strong> This will keep in register template the phrase Username and in login box Name/Email. If you don't do this modification You will have allot of users registering with email address instead of Username. Thanks |
There is a small bug ( a space between - and > ) and gives an error if you upgrade to 3.8.7 PL2 so here is the working code I use:
PHP Code:
|
I have not tested this, but in vBulletin 4, try this:
In the file includes/functions_login.php, find: PHP Code:
PHP Code:
|
Quote:
Code:
Fatal error: Cannot redeclare fetch_replaced_session_url() (previously declared in root/includes/functions_login.php:14) in root/includes/functions_login.php on line 568 |
All times are GMT. The time now is 01:05 AM. |
Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
![]() |
|
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|