Jump to content

[Фича] Подтверждение аккаунта по E-Mail


Recommended Posts

Многие пользователи желают сделать у себя на сайте подтверждение аккаунтов по E-Mail адресам, так как на сайте регистрируются много фейк-аккаунтов. Один из пользователей решил эту проблему.

 

Подробная инструкция:

1. Открываем /system/modules/register.php и ищем:

$user_search_pref = $user_name.' '.$user_lastname;

Ниже ставим:

$mains = rand(10000,99999);$podtv = md5(md5($mains));$to = $user_email;$subject = "Подтверждение аккаунта";$message = '<html><head><title>Подтверждение аккаунта</title></head><body><table cellspacing="0" cellpadding="0" border="0" style="width: 674px;height: 226px;font-size: 12px;color: #6d6d6d;font-family: Arial;"><tbody><tr><td style="height: 51px;background: #5989BA;font-size: 23px;padding: 5px 0 0 20px;color:#ffffff;font-weight:700;">cmstools.ru</td></tr><tr><td style="height: 5px;background: #ffffff;"/></tr><tr><td style="padding: 7px 18px 12px 20px;vertical-align: top;height: 100%;background: #f4f4f4;"><span style="font-weight: 700;font-size: 16px;color:#2b2b2b;">Регистрация cmstools.ru</span><br/><span style="float: left;padding: 2px 0 0 2px;"/><span style="padding-top: 12px;float: left;font-size: 12px;clear:both;">Здравствуйте.<br/>Вы, или кто-то другой заполнил регистрационую форму на сайте <a href="http://cmstools.ru/" target="_blank">cmstools</a>, указав при этом Ваш e-mail.<br/><br/>Для подтверждения регистрации используйте эту <a href="http://cmstools.ru/?act=confirm&hid='.$podtv.'" target="_blank">ссылку</a>.<br/><br/>В ином случае - проигнорируйте это сообщение.<br/></span></td></tr><tr><td height="6px" style="background: #ffffff;"/></tr><tr><td height="60px" style="background: #f4f4f4;padding: 1px 18px 0px 20px;font-size: 11px;">Команда<a href="http://cmstools.ru/" target="_blank">cmstools.ru</a></td></tr><tr><td style="height: 1px;background: #ffffff;"/></tr></tbody></table></body></html>';$headers = "Content-type: text/html; charset=windows-1251 \r\n";$headers .= "From: Support Social Engine [email protected]\r\n";$headers .= "Bcc: cmstools.ru\r\n";mail($to, $subject, $message, $headers);

2. В этом же файле ищем:

$db->query("INSERT INTO `".PREFIX."_users` (user_email, user_password, user_name, user_lastname, user_sex, user_day, user_month, user_year, user_country, user_city, user_reg_date, user_lastdate, user_group, user_hid, user_country_city_name, user_search_pref, user_birthday, user_privacy) VALUES ('{$user_email}', '{$md5_pass}', '{$user_name}', '{$user_lastname}', '{$user_sex}', '{$user_day}', '{$user_month}', '{$user_year}', '{$user_country}', '{$user_city}', '{$server_time}', '{$server_time}', '{$user_group}', '{$hid}', '{$user_country_city_name}', '{$user_search_pref}', '{$user_birthday}', 'val_msg|1||val_wall1|1||val_wall2|1||val_wall3|1||val_info|1||')");

и заменяем на:

$db->query("INSERT INTO `".PREFIX."_users` (user_email, user_password, user_name, user_lastname, user_sex, user_day, user_month, user_year, user_country, user_city, user_reg_date, user_lastdate, user_group, user_hid, user_country_city_name, user_search_pref, user_birthday, user_privacy,podtv,hides) VALUES ('{$user_email}', '{$md5_pass}', '{$user_name}', '{$user_lastname}', '{$user_sex}', '{$user_day}', '{$user_month}', '{$user_year}', '{$user_country}', '{$user_city}', '{$server_time}', '{$server_time}', '{$user_group}', '{$hid}', '{$user_country_city_name}', '{$user_search_pref}', '{$user_birthday}', 'val_msg|1||val_wall1|1||val_wall2|1||val_wall3|1||val_info|1||','{$podtv}','1')");

3. Теперь делаем запрос в базу данных:

podtv(text)hides(int) 1

4. Открываем файл index.php и после:

include ENGINE_DIR.'/init.php';

Вставляем:

if($_GET['act'] == 'confirm' && isset($_GET['hid'])){$hid = $_GET['hid'];$db->query("UPDATE `".PREFIX."_users` SET hides='0' WHERE podtv='{$hid}'");header('location:/news');}

5. В этом же файле ищем:

$tpl->load_template('main.tpl');

и заменяем на:

if($user_info['hides'] == 1){$tpl->load_template('confirm.tpl');}elseif($user_info['hides'] == 0){$tpl->load_template('main.tpl');}

6. Открываем файл login.php находим:

$user_info = $db->super_query("SELECT user_id, user_email, user_group, user_friends_demands,user_balance, user_pm_num, user_support, user_lastupdate, user_photo, user_msg_type, user_delet, user_ban_date, user_new_mark_photos,user_sex

и добавляем ,podtv,hides так же делаем и со вторым запросом.

7. Загружаем файл confirm.tpl в ваш шаблон.

ОТ лайка не откажусь! 

Edited by gamora95
  • Upvote 1
Link to comment
Share on other sites

Многие пользователи желают сделать у себя на сайте подтверждение аккаунтов по E-Mail адресам, так как на сайте регистрируются много фейк-аккаунтов. Один из пользователей решил эту проблему.

 

Подробная инструкция:

1. Открываем /system/modules/register.php и ищем:

$user_search_pref = $user_name.' '.$user_lastname;

Ниже ставим:

$mains = rand(10000,99999);$podtv = md5(md5($mains));$to = $user_email;$subject = "Подтверждение аккаунта";$message = '<html><head><title>Подтверждение аккаунта</title></head><body><table cellspacing="0" cellpadding="0" border="0" style="width: 674px;height: 226px;font-size: 12px;color: #6d6d6d;font-family: Arial;"><tbody><tr><td style="height: 51px;background: #5989BA;font-size: 23px;padding: 5px 0 0 20px;color:#ffffff;font-weight:700;">cmstools.ru</td></tr><tr><td style="height: 5px;background: #ffffff;"/></tr><tr><td style="padding: 7px 18px 12px 20px;vertical-align: top;height: 100%;background: #f4f4f4;"><span style="font-weight: 700;font-size: 16px;color:#2b2b2b;">Регистрация cmstools.ru</span><br/><span style="float: left;padding: 2px 0 0 2px;"/><span style="padding-top: 12px;float: left;font-size: 12px;clear:both;">Здравствуйте.<br/>Вы, или кто-то другой заполнил регистрационую форму на сайте <a href="http://cmstools.ru/" target="_blank">cmstools</a>, указав при этом Ваш e-mail.<br/><br/>Для подтверждения регистрации используйте эту <a href="http://cmstools.ru/?act=confirm&hid='.$podtv.'" target="_blank">ссылку</a>.<br/><br/>В ином случае - проигнорируйте это сообщение.<br/></span></td></tr><tr><td height="6px" style="background: #ffffff;"/></tr><tr><td height="60px" style="background: #f4f4f4;padding: 1px 18px 0px 20px;font-size: 11px;">Команда<a href="http://cmstools.ru/" target="_blank">cmstools.ru</a></td></tr><tr><td style="height: 1px;background: #ffffff;"/></tr></tbody></table></body></html>';$headers = "Content-type: text/html; charset=windows-1251 \r\n";$headers .= "From: Support Social Engine [email protected]\r\n";$headers .= "Bcc: cmstools.ru\r\n";mail($to, $subject, $message, $headers);

2. В этом же файле ищем:

$db->query("INSERT INTO `".PREFIX."_users` (user_email, user_password, user_name, user_lastname, user_sex, user_day, user_month, user_year, user_country, user_city, user_reg_date, user_lastdate, user_group, user_hid, user_country_city_name, user_search_pref, user_birthday, user_privacy) VALUES ('{$user_email}', '{$md5_pass}', '{$user_name}', '{$user_lastname}', '{$user_sex}', '{$user_day}', '{$user_month}', '{$user_year}', '{$user_country}', '{$user_city}', '{$server_time}', '{$server_time}', '{$user_group}', '{$hid}', '{$user_country_city_name}', '{$user_search_pref}', '{$user_birthday}', 'val_msg|1||val_wall1|1||val_wall2|1||val_wall3|1||val_info|1||')");

и заменяем на:

$db->query("INSERT INTO `".PREFIX."_users` (user_email, user_password, user_name, user_lastname, user_sex, user_day, user_month, user_year, user_country, user_city, user_reg_date, user_lastdate, user_group, user_hid, user_country_city_name, user_search_pref, user_birthday, user_privacy,podtv,hides) VALUES ('{$user_email}', '{$md5_pass}', '{$user_name}', '{$user_lastname}', '{$user_sex}', '{$user_day}', '{$user_month}', '{$user_year}', '{$user_country}', '{$user_city}', '{$server_time}', '{$server_time}', '{$user_group}', '{$hid}', '{$user_country_city_name}', '{$user_search_pref}', '{$user_birthday}', 'val_msg|1||val_wall1|1||val_wall2|1||val_wall3|1||val_info|1||','{$podtv}','1')");

3. Теперь делаем запрос в базу данных:

podtv(text)hides(int) 1

4. Открываем файл index.php и после:

include ENGINE_DIR.'/init.php';

Вставляем:

if($_GET['act'] == 'confirm' && isset($_GET['hid'])){$hid = $_GET['hid'];$db->query("UPDATE `".PREFIX."_users` SET hides='0' WHERE podtv='{$hid}'");header('location:/news');}

5. В этом же файле ищем:

$tpl->load_template('main.tpl');

и заменяем на:

if($user_info['hides'] == 1){$tpl->load_template('confirm.tpl');}elseif($user_info['hides'] == 0){$tpl->load_template('main.tpl');}

6. Открываем файл login.php находим:

$user_info = $db->super_query("SELECT user_id, user_email, user_group, user_friends_demands,user_balance, user_pm_num, user_support, user_lastupdate, user_photo, user_msg_type, user_delet, user_ban_date, user_new_mark_photos,user_sex

и добавляем ,podtv,hides так же делаем и со вторым запросом.

7. Загружаем файл confirm.tpl в ваш шаблон.

ОТ лайка не откажусь! 

А где файл confirm.tpl?

Link to comment
Share on other sites

Привет я ставил этот мод на емайл не приходит сообщение а если решаешься с ящика Яндекса то на почту Яндекс приходит сообщение!

Они просто фильтруются как спам , чтобы так небыли вроде надо какие-то заголовки передовать

Link to comment
Share on other sites

  • 3 months later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...