Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы » Как вызвать приветственное сообщение после регистрации через соц. сеть?

Как вызвать приветственное сообщение после регистрации через соц. сеть?


     01.10.2020    Отсылка сообщения    Общие вопросы, Общие вопросы по PHP, Хаки    890

вопрос
Доброго времени суток. Собрал для себя небольшой хак, суть, после регистрации нового пользователя, ему приходит приветственное рм а админу на емейл о новом пользователе. Хак работает с обычной регистрацией, а с регистрацией через соц. сеть заставить его работать не могу.

Сам хак pm_privetstvie.php


подключаю его в engine/modules/register.php перед $id = $db->insert_id();

Пробовал в engine/modules/social.php подключать перед $id_s_log = $db->insert_id();

Но не работает. Подскажите знающие, как подправить? Спасибо

Ответа пока нет


14 комментариев

dj-avtosh
PHP-developer

dj-avtosh - 1 октября 2020 16:06 -

Добрый день, а если попробовать в engine/modules/social.php перед вторым:

$id = $db->insert_id();

По заказам пишем сюда: @Rud00y

ЯД: 41001679231462
Заказы в telegram (ремонт модулей, оптимизация нагрузок и т.п.):
В телегу писать сразу задачу и бюджет.

ushkom
Юзер

ushkom - 1 октября 2020 16:40 -

Я пробовал три варианта, перед первым, вторым и перед $id_s_log = $db->insert_id();
Все бесполезно, или не работает регистрация или не отсылает

dj-avtosh
PHP-developer

dj-avtosh - 1 октября 2020 17:31 -

У вас нет $name внутри функции в social.php. Нужно добавить в ваш модуль после

if ($pm_config['pm_on']=="yes") {


такой код

! isset($name) && isset($social_user['nickname']) && $name = $social_user['nickname'];


и далее сделать то, что я писал в первом комменте.

По заказам пишем сюда: @Rud00y

ЯД: 41001679231462
Заказы в telegram (ремонт модулей, оптимизация нагрузок и т.п.):
В телегу писать сразу задачу и бюджет.

ushkom
Юзер

ushkom - 1 октября 2020 18:31 -

Так не хочет работать правильно сама регистрация через соц сеть на втором шаге, не передается логин.
https://prnt.sc/urcq6c
Сайт: https://povarenok.online/

Но письмо админу отправляется


ushkom
Юзер

ushkom - 1 октября 2020 18:48 -

И в таблицу dle_social_login в столбец uid вставляется 0

ushkom
Юзер

ushkom - 1 октября 2020 19:30 -

Добавил после
$db->query( "UPDATE " . USERPREFIX . "_social_login SET waitlogin='0' WHERE id='{$row['id']}'" );

Работает вроде бы.

ushkom
Юзер

ushkom - 1 октября 2020 20:05 -

Единственное не могу вытащить email
Пробовал так:
$login_email = $db->super_query( "SELECT email FROM " . USERPREFIX . "_users WHERE name='$name'" );
$email = $login_email;


И так $email = $member_id['user_id'];

dj-avtosh
PHP-developer

dj-avtosh - 1 октября 2020 21:35 -

$login_email['email']

По заказам пишем сюда: @Rud00y

ЯД: 41001679231462
Заказы в telegram (ремонт модулей, оптимизация нагрузок и т.п.):
В телегу писать сразу задачу и бюджет.

ushkom
Юзер

ushkom - 1 октября 2020 21:47 -

Я так тоже пробовал, видимо при отправки письма его еще нет в базе. Не получается его вытянуть в момент отправки письма.

ushkom
Юзер

ushkom - 1 октября 2020 22:04 -

Подключил ниже этого кода:

В коде питаюсь получить так
$email = $member_id['email'];

Но на почту приходит пустая строчка с мылом.

Весь код:

ushkom
Юзер

ushkom - 1 октября 2020 22:08 -

Подключил ниже этого кода:

В коде питаюсь получить так
$email = $member_id['email'];

Но на почту приходит пустая строчка с мылом.

Весь код:

SX2
Эксперт

SX2 - 1 октября 2020 22:13 -


Самая сложная часть работы – решиться приступить к ней.

ushkom
Юзер

ushkom - 1 октября 2020 22:16 -

Да как раз то что нужно, но я уже все сделал. Осталась одна деталь с email

ushkom
Юзер

ushkom - 2 октября 2020 20:42 -

Не могу понять, после данного запроса я же могу получить email в переменную $email
$member_id = $db->super_query( "SELECT * FROM " . USERPREFIX . "_users WHERE user_id='{$row['uid']}'" );

Таким образом
$email = $member_id['email'];


Но не получается, в чем ошибка?

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх