Перейти к содержанию
CMSTOOLS.org - форум поддержки и развития CMS

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


Рекомендуемые сообщения

Многие пользователи желают сделать у себя на сайте подтверждение аккаунтов по 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 в ваш шаблон.

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

Изменено пользователем gamora95
Ссылка на комментарий
Поделиться на другие сайты

Многие пользователи желают сделать у себя на сайте подтверждение аккаунтов по 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?

Ссылка на комментарий
Поделиться на другие сайты

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

Ссылка на комментарий
Поделиться на другие сайты

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

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

Ссылка на комментарий
Поделиться на другие сайты

  • 3 месяца спустя...

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...