Перейти к содержанию
Официальный форум поддержки Simpla

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

надо бы доработать эту функциональность. если заходить сразных соцсетей то создается новый профиль. надо создать таблицу с соцсетями пользователя и по ним искать соответствие.

В каждой соцсети могут быть разные данные одного и того же покупателя и конечно же сравнивать на схожесть будет не с чем.

С радостью оценю ваши труды ;)

Ссылка на сообщение
Поделиться на другие сайты
  • Ответов 124
  • Дата создания
  • Последний ответ

Лучшие авторы в теме

Лучшие авторы в теме

Популярные посты

>я имел ввиду от платного решения предложенного корсом чем отличается? >Ну я демо платной версии не видел и не щупал, я не думаю что есть отличия в функционале. Что из моей писанины Вы не поняли

header('Location: '.$this->config->root_url);

Изображения в теме

Ребята вообще не встал плагин.

Я новенький в програмирование, SEO- понимаю, HTML тоже но PHP - нет ((

 

Можете выслать полную инструкцию как правильно поставить?

сайт mascase.com вроде все поставил как вы написали но нечего не поменялось

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

В каждой соцсети могут быть разные данные одного и того же покупателя и конечно же сравнивать на схожесть будет не с чем.

С радостью оценю ваши труды ;)

 

необходимо добавить таблицу сетей для пользователей. и если во всех соцсетях у пользователя один и тот же email то это блее чем реально а главное корректнее потому как я могу залогинеться как по логину паролю так и с любой соцсети и попасть в единый профиль.

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

необходимо добавить таблицу сетей для пользователей. и если во всех соцсетях у пользователя один и тот же email то это блее чем реально а главное корректнее потому как я могу залогинеться как по логину паролю так и с любой соцсети и попасть в единый профиль.

Это будет работать ТОЛЬКО если одинаковый e-mail.
Ссылка на сообщение
Поделиться на другие сайты
  • 1 месяц спустя...

Работает, но есть два косяка: первый - номер телефона, несмотря на добавленную строчку в файл LoginView.php в админку так и не выводится. Второй - удаленный единожды покупатель больше через Вконтакт зарегестрироваться не может. 

 

Как исправить эти два момента??

Ссылка на сообщение
Поделиться на другие сайты
  • 1 месяц спустя...

Выбивает ошибка Parse error: syntax error, unexpected T_ELSEIF in /var/www/xmvvrzkr/data/www/********/view/LoginView.php on line 65 как быть? (((

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

if(условие){...}

elseif(условие2){...}

else{...}

Ссылка на сообщение
Поделиться на другие сайты
  • 4 недели спустя...

Использовала ваш модуль!

Спасибо! Все работает, пользователи создаются.

 

P.S. simpla 2.3.6

Всегда пожалуйста.
Ссылка на сообщение
Поделиться на другие сайты
  • 2 недели спустя...

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

Также есть платное решение кому нужно.

 

Что это дает?

- Автоматический вход клиента без регистрации в интернет-магазин

- Автоматическая регистрация покупателя который зашел через соц. сеть

- Сбор потенциальных покупателей на лету

 

И так приступим.

В шаблон index.tpl в нужном Вам месте вставим следующий код:



<!-- Ulogin -->
<script src="http://ulogin.ru/js/ulogin.js"></script>
<div id="uLogin" data-ulogin="display=small;fields=first_name,last_name,email,phone,city;providers=vkontakte,facebook,odnoklassniki,mailru;hidden=other;redirect_uri=http://ваш-сайт.ru/user/login"></div>
<!-- end -->

 

 

В фале view/LoginView.php после 64-й строки вставим следующий код:



// Вход через ULogin
elseif(isset($_POST['token']))
{
$s = file_get_contents('http://ulogin.ru/token.php?token='.$_POST['token'].'&host='.$_SERVER['HTTP_HOST']);
$simpla = json_decode($s, true);

if (isset($simpla['identity'])) {
$name = $simpla['first_name'].' '.$simpla['last_name'];
$email = $simpla['email'];
$phone = $simpla['phone'];
$city = $simpla['city'];
$password = md5($simpla['identity'].'Noxter');

//проверяем есть ли в БД такой e-mail
$this->db->query('SELECT count(*) as count, id FROM __users WHERE email=?', $email);
$user_exists = $this->db->result();

if($user_id = $this->users->check_password($email, $password))
{
$user = $this->users->get_user($email);
if($user->enabled)
{
$_SESSION['user_id'] = $user_id;
header('Location: '.$this->config->root_url);
}
else
{
$this->design->assign('error', 'user_disabled');
}
}
elseif($user_exists->count)
{
$_SESSION['user_id'] = $user_exists->id;
header('Location: '.$this->config->root_url);
}
else
{
$user_id = $this->users->add_user(
array('name'=>$name,
'email'=>$email,
'password'=>$password,
'enabled'=>1)
);
$_SESSION['user_id'] = $user_id;
header('Location: '.$this->config->root_url);
}
}
}

 

Вроде бы все.

Проверяем отписываемся

Все рабтает спс

Ссылка на сообщение
Поделиться на другие сайты
  • 3 недели спустя...

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

Также есть платное решение кому нужно.

 

Что это дает?

- Автоматический вход клиента без регистрации в интернет-магазин

- Автоматическая регистрация покупателя который зашел через соц. сеть

- Сбор потенциальных покупателей на лету

 

И так приступим.

В шаблон index.tpl в нужном Вам месте вставим следующий код:



<!-- Ulogin -->
<script src="http://ulogin.ru/js/ulogin.js"></script>
<div id="uLogin" data-ulogin="display=small;fields=first_name,last_name,email,phone,city;providers=vkontakte,facebook,odnoklassniki,mailru;hidden=other;redirect_uri=http://ваш-сайт.ru/user/login"></div>
<!-- end -->

 

 

В фале view/LoginView.php после 64-й строки вставим следующий код:



// Вход через ULogin
elseif(isset($_POST['token']))
{
$s = file_get_contents('http://ulogin.ru/token.php?token='.$_POST['token'].'&host='.$_SERVER['HTTP_HOST']);
$simpla = json_decode($s, true);

if (isset($simpla['identity'])) {
$name = $simpla['first_name'].' '.$simpla['last_name'];
$email = $simpla['email'];
$phone = $simpla['phone'];
$city = $simpla['city'];
$password = md5($simpla['identity'].'Noxter');

//проверяем есть ли в БД такой e-mail
$this->db->query('SELECT count(*) as count, id FROM __users WHERE email=?', $email);
$user_exists = $this->db->result();

if($user_id = $this->users->check_password($email, $password))
{
$user = $this->users->get_user($email);
if($user->enabled)
{
$_SESSION['user_id'] = $user_id;
header('Location: '.$this->config->root_url);
}
else
{
$this->design->assign('error', 'user_disabled');
}
}
elseif($user_exists->count)
{
$_SESSION['user_id'] = $user_exists->id;
header('Location: '.$this->config->root_url);
}
else
{
$user_id = $this->users->add_user(
array('name'=>$name,
'email'=>$email,
'password'=>$password,
'enabled'=>1)
);
$_SESSION['user_id'] = $user_id;
header('Location: '.$this->config->root_url);
}
}
}

 

Вроде бы все.

Проверяем отписываемся.

Ошибка Parse error: syntax error, unexpected T_ELSEIF in /home/........../public_html/view/LoginView.php on line 65

Ссылка на сообщение
Поделиться на другие сайты
  • 4 месяца спустя...

что и требовалось доказать от ukrLogin  :D Юля перед тем как хвалить узнай кому ты даешь данные , кто это посредник и для чего он нужен и кем он создан.

Ссылка на сообщение
Поделиться на другие сайты
  • 1 год спустя...

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

 

 

header('Location: '.$this->config->root_url);

 

Это стандартно так в плагине, сбрасывает на главную, а как все-таки оставить пользователя на текущей странице? Например если он в корзине.

Ссылка на сообщение
Поделиться на другие сайты
  • 3 месяца спустя...

Прошу подсказать, при автоматической регистрации через ВКОНТАКТЕ возможно ли сразу предоставлять клиенту скидку при покупке?

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

Прошу подсказать, при автоматической регистрации через ВКОНТАКТЕ возможно ли сразу предоставлять клиенту скидку при покупке?

Да можно.
Ссылка на сообщение
Поделиться на другие сайты
  • 3 недели спустя...
http://ulogin.ru/js/ulogin.js
 

Скрипт собирает статистику использования и загрузка его post запроса занимает от 20 до 30 секунд. Если на сайте стоит прелоадер, для пользователя это превращается в сайт, который каждую страницу грузит по 20-30 секунд.

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

 

 

http://ulogin.ru/js/ulogin.js
 
Скрипт собирает статистику использования и загрузка его post запроса занимает от 20 до 30 секунд. Если на сайте стоит прелоадер, для пользователя это превращается в сайт, который каждую страницу грузит по 20-30 секунд.

 

 

Чушь
Ссылка на сообщение
Поделиться на другие сайты

Подскажите как сделать чтобы при регистрации через соц сеть отправлялось письмо о регистрации  на почту, где указан логин и пароль для входа? Уже стоит вот такая доработка http://forum.simplacms.ru/topic/9928-%D0%B0%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B0%D1%8F-%D1%80%D0%B5%D0%B3%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%86%D0%B8%D1%8F-%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8F/ , которая отправляет письмо о регистрации, если человек оформил заказ без регистрации.

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

 

Подскажите как сделать чтобы при регистрации через соц сеть отправлялось письмо о регистрации на почту, где указан логин и пароль для входа? Уже стоит вот такая доработка http://forum.simplacms.ru/topic/9928-%D0%B0%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B0%D1%8F-%D1%80%D0%B5%D0%B3%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%86%D0%B8%D1%8F-%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8F/ , которая отправляет письмо о регистрации, если человек оформил заказ без регистрации.

По аналогии с моим дополнением.

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

По аналогии с моим дополнением.

я так понимаю нужна какая-то проверка на то что пользователь в данный момент впервые зарегистрировался, а не просто авторизовался. в общем слишком сложно для меня(

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

я так понимаю нужна какая-то проверка на то что пользователь в данный момент впервые зарегистрировался, а не просто авторизовался. в общем слишком сложно для меня(

В таком случае обратитесь за помощью к специалисту.
Ссылка на сообщение
Поделиться на другие сайты
  • 2 месяца спустя...

Не знаю с чем связанно но в последнее время появилась такая ошибка через вход соц сети. 

Notice: Undefined index: city in /home/p157758/www/smoke-time.com/view/LoginView.php on line 76

Warning: Cannot modify header information - headers already sent by (output started at /home/p157758/www/smoke-time.com/view/LoginView.php:76) in /home/p157758/www/smoke-time.com/view/LoginView.php on line 99

Warning: Cannot modify header information - headers already sent by (output started at /home/p157758/www/smoke-time.com/view/LoginView.php:76) in /home/p157758/www/smoke-time.com/index.php on line 42

В 76 месте 

$city = $simpla['city'];

99 

header('Location: '.$this->config->root_url);

в индех

	header("Content-type: text/html; charset=UTF-8");	

Все указывает на проблемы с локацией. Как подправить ?

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

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

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

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

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

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

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

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

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

Загрузка...

×
×
  • Создать...