I was wondering if you guys can create a mod that'll allow someone to have multiple accounts with one email address? I run a roleplay chatroom and we use a board in conjunction with the room and some people have up to ten different characters and they want to make accounts for each character.
Is there anything that'll allow this?
Thanks,
Mack
For as far as I know this is not possible. Email has a keyfunction regarding registration and passwordrecovery.
Actually the mail addresses are not unique in database. So a code hack will probably change this.
But its a bad idea in my opinion. SMF's thought is good at this point.
I DONT recommend you do that but if you still demand, here;
Open /Sources/Register.php and find this:
// Get the code from the database...
$request = db_query("
SELECT ID_MEMBER, validation_code, memberName, realName, emailAddress, is_activated, passwd
FROM {$db_prefix}members" . (empty($_REQUEST['u']) ? "
WHERE memberName = '$_POST[user]' OR emailAddress = '$_POST[user]'" : "
WHERE ID_MEMBER = " . (int) $_REQUEST['u']) . "
LIMIT 1", __FILE__, __LINE__);
Replace with this:
// Get the code from the database...
$request = db_query("
SELECT ID_MEMBER, validation_code, memberName, realName, is_activated, passwd
FROM {$db_prefix}members" . (empty($_REQUEST['u']) ? "
WHERE memberName = '$_POST[user]'" : "
WHERE ID_MEMBER = " . (int) $_REQUEST['u']) . "
LIMIT 1", __FILE__, __LINE__);
Then find and remove:
// Ummm... don't even dare try to take someone else's email!!
$request = db_query("
SELECT ID_MEMBER
FROM {$db_prefix}members
WHERE emailAddress = '$_POST[new_email]'
LIMIT 1", __FILE__, __LINE__);
// !!! Separate the sprintf?
if (mysql_num_rows($request) != 0)
fatal_error(sprintf($txt[730], htmlspecialchars($_POST['new_email'])), false);
mysql_free_result($request);
I repeat, I dont suggest that.
If you allow multiple accounts per email address, how will you be able to log in by email address? :D
There is a practical solution for this problem.
Find an e-mailprovider with accounts that can forward e-mail (e.g. Gmail).
Make a central account for receiving all the e-mail and per character an individual account.
Have the individual accounts forward the mail to the central account.
Within de giving provider Gmail you have lots of possibilities to customize, like grouping mail per sender.
Good Luck!