Авторизация через Вконтакте, Facebook, Twitter ... и OpenID

Здесь авторы могут постить бета-версии своих модификаций для phpBB 3.0.x. Внимание! Не устанавливайте бета-версии модов на работающие форумы!
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
Пчелкин
phpBB 3.3.0
Сообщения: 11361
Стаж: 16 лет 8 месяцев
Благодарил (а): 1832 раза
Поблагодарили: 1358 раз

Re: Авторизация через Вконтакте, Facebook, Twitter ... и Ope

Сообщение Пчелкин »

Положи туды же у себя свою аву и смени адрес...у меня то все время лежит..
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
jonne_brava
phpBB 1.4.0
Сообщения: 34
Стаж: 13 лет 10 месяцев

Re: Авторизация через Вконтакте, Facebook, Twitter ... и Ope

Сообщение jonne_brava »

Да не. Мне это не мешает. Мне бы щас настроить авторизацию таки нормально.
Увеличение максимального Ника до 100 символов тоже не помогает. Проверка сессии тоже отключена.

Стойкое чувство, что логинза не может вытащить имя и фамилию на русском из VK и сформировать из этого ник. Если же ник в ВК указан то всё работает отлично.
Аватара пользователя
Пчелкин
phpBB 3.3.0
Сообщения: 11361
Стаж: 16 лет 8 месяцев
Благодарил (а): 1832 раза
Поблагодарили: 1358 раз

Re: Авторизация через Вконтакте, Facebook, Twitter ... и Ope

Сообщение Пчелкин »

Все таки с допполей не тащит? Млин...Надо полезть посмотреть...мож и правда так и есть...
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
jonne_brava
phpBB 1.4.0
Сообщения: 34
Стаж: 13 лет 10 месяцев

Re: Авторизация через Вконтакте, Facebook, Twitter ... и Ope

Сообщение jonne_brava »

Верно ли моё утверждение:

Изображение
Вот на этом шаге, в виджете высвечивается правильное имя и фамилия - то есть ВК логинзе отдает Имя и Фамилию корректно.
Таким образом именно скрипт phpbb не может правильно преобразовать допполя в ник.
Так или нет?
Аватара пользователя
Пчелкин
phpBB 3.3.0
Сообщения: 11361
Стаж: 16 лет 8 месяцев
Благодарил (а): 1832 раза
Поблагодарили: 1358 раз

Re: Авторизация через Вконтакте, Facebook, Twitter ... и Ope

Сообщение Пчелкин »

Нет..вот теперь нужный ник тащится оттуда сервером самой логинзы...А не ЭТО МОД...увы...он и определяет то, что есть в профиле у юезра ТАм, а чего нет...
Видно что на ВК не определяет...
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
jonne_brava
phpBB 1.4.0
Сообщения: 34
Стаж: 13 лет 10 месяцев

Re: Авторизация через Вконтакте, Facebook, Twitter ... и Ope

Сообщение jonne_brava »

Пчелкин писал(а):Нет..вот теперь нужный ник тащится оттуда сервером самой логинзы...А не ЭТО МОД...увы...он и определяет то, что есть в профиле у юезра ТАм, а чего нет...
Видно что на ВК не определяет...
не совсем вас понял. Можете написать это в последовательности как это происходит. По пунктам?

1) вы нажимаете кнопку войти через ВК на сайте
2) вы перенаправляетесь на страницу Логинзы и получаете токен
3) ...
4) PROFIT!!!
Аватара пользователя
Пчелкин
phpBB 3.3.0
Сообщения: 11361
Стаж: 16 лет 8 месяцев
Благодарил (а): 1832 раза
Поблагодарили: 1358 раз

Re: Авторизация через Вконтакте, Facebook, Twitter ... и Ope

Сообщение Пчелкин »

jonne_brava писал(а):2) вы перенаправляетесь на страницу Логинзы и получаете токен
Вот теперь эта страница Лигинзы лезет еще куда то..Вот куда - не знаю, но имя ЛОГИНЗА ХХХХ получается не из кода мода, а от сервера самой логинзы...Все номера от них идут строго по порядку...Залезь к ним и проверь...
Не может у тебя быть ЛОГИНЗА 2345 и еще на каком нибудь форуме тож ЛОГИНЗА 2345...Значит вывод - имя дается не из мода...

Появятся спецы объяснят научно...я не умею...

Добавлено спустя 3 минуты 37 секунд:
Re: Авторизация через Вконтакте, Facebook, Twitter ... и OpenID
Вот здесь все обрабатывается...
http://loginza.ru/api-overview
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
jonne_brava
phpBB 1.4.0
Сообщения: 34
Стаж: 13 лет 10 месяцев

Re: Авторизация через Вконтакте, Facebook, Twitter ... и Ope

Сообщение jonne_brava »

ну за само слово Loginza отвечает строчка файла loginza_register.php :

Код: Выделить всё

define('LOGINZA_REGISTER_DEFAULT_LOGIN_PREFIX', 'loginza');
так что там может быть что угодно вместо логинзы. а вот номер видимо всё таки с сервера.

Добавлено спустя 18 минут 20 секунд:
Re: Авторизация через Вконтакте, Facebook, Twitter ... и OpenID
Да собственно и индекс не с сервера передается, а силами мода генерится вот этим кодом из всё того же файла:

Код: Выделить всё

// логин занят или не удовлетворяет настройкам phpBB
		if (count($username_errors)) {
			// генерируем уникальный логин
			$result = $db->sql_query("
				SELECT count(`user_id`) AS `count`
				FROM `".USERS_TABLE."`
				WHERE 1
			");
			$row = $db->sql_fetchrow($result);
			$db->sql_freeresult($result);
			
			$data['username'] = LOGINZA_REGISTER_DEFAULT_LOGIN_PREFIX.$row['count'];
		}
Добавлено спустя 11 минут 24 секунды:
Re: Авторизация через Вконтакте, Facebook, Twitter ... и OpenID
Закоментировал строку

Код: Выделить всё

$data['username'] = LOGINZA_REGISTER_DEFAULT_LOGIN_PREFIX.$row['count'];
чтобы выяснить что же у нас в поле то получается.

В итоге при регистрации вываливается ошибка в аттачменте.
Подскажите что за ошибка?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
МайскийЖук
phpBB 3.0.7-PL1
Сообщения: 2535
Стаж: 16 лет 11 месяцев
Благодарил (а): 17 раз
Поблагодарили: 366 раз

Авторизация через Вконтакте, Facebook, Twitter ... и OpenID

Сообщение МайскийЖук »

Подскажите что за ошибка?
И как мы тебе можем подсказать по твоему скриншоту с иероглифами?

Переключи раскладку на странице с ошибкой и прочитай сам.
Любовь и боль, покой и бой я как любой несу с собой…
Аватара пользователя
Пчелкин
phpBB 3.3.0
Сообщения: 11361
Стаж: 16 лет 8 месяцев
Благодарил (а): 1832 раза
Поблагодарили: 1358 раз

Re: Авторизация через Вконтакте, Facebook, Twitter ... и Ope

Сообщение Пчелкин »

jonne_brava писал(а):// логин занят или не удовлетворяет настройкам phpBB
Это если есть совпадение или настройки знаков не позволяют вырвать логин из ВК с теми знаками...Это не работает на ВК...Там не иероглифов и других языков...
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
jonne_brava
phpBB 1.4.0
Сообщения: 34
Стаж: 13 лет 10 месяцев

Re: Авторизация через Вконтакте, Facebook, Twitter ... и Ope

Сообщение jonne_brava »

в переводе с лунного ошибка обозначает:
Вернуться на главную страницу
Общая ошибка
Запрашиваемого польЕователя не существуетЎ
Уведомите администратора конференции или вебмастераК ъяююхЎ№сљРчэсщьЎуяэ
а до неё оказывается ещё появляется следующая:
Invalid / empty session data! Retry auth.
Пчелкин,
Пчелкин писал(а):
jonne_brava писал(а):// логин занят или не удовлетворяет настройкам phpBB
Это если есть совпадение или настройки знаков не позволяют вырвать логин из ВК с теми знаками...Это не работает на ВК...Там не иероглифов и других языков...
Если бы оно не работало для контакта, то ничего бы не изменилось наверно от комментирования этой строчки? А тут сразу две ошибки, выходит что оно отрабатывает.

Добавлено спустя 12 минут 53 секунды:
Re: Авторизация через Вконтакте, Facebook, Twitter ... и OpenID
и даже более того. При замене строчки

Код: Выделить всё

$data['username'] = LOGINZA_REGISTER_DEFAULT_LOGIN_PREFIX.$row['count'];
на

Код: Выделить всё

$data['username'] = "ошибка";
у меня юзер регится с именем "ощибка"
так что оно точно отрабатывает.

Теперь вопрос - как узнать что же у меня в поле username формируется, и чем оно не нравится phpbb.
jonne_brava
phpBB 1.4.0
Сообщения: 34
Стаж: 13 лет 10 месяцев

Re: Авторизация через Вконтакте, Facebook, Twitter ... и Ope

Сообщение jonne_brava »

В общем поправил. Теперь те у кого есть ник, входят с ником из VK, а те у кого нет с Именем и Фамилией транслитом.

Код: Выделить всё

public function genNickname () {
		if (isset($this->profile->nickname)) 
		{
			return $this->profile->nickname;
		} 
		//elseif (!empty($this->profile->email) && preg_match('/^(.+)\@/i', $this->profile->email, $nickname)) {
		//return $nickname[1];} 
		elseif ( ($fullname = $this->genFullName()) ) {
			return $this->normalize($fullname, '.');
надо было убрать isset в первом условии.
Видимо он брал пустой ник. После чего заменялся на логинзу по условию из loginza_register.php

PS. ник LoginzaXXX полностью формируется модом по условию. Сервер логинзы тут не причем. Слово логинза можно заменить на любое, а цифры - это счетчик зависящий от количества юзеров у вас на форуме.
Аватара пользователя
southklad
phpBB 3.1.0 RC4
Сообщения: 3467
Стаж: 14 лет 8 месяцев
Благодарил (а): 871 раз
Поблагодарили: 200 раз

Re: Авторизация через Вконтакте, Facebook, Twitter ... и Ope

Сообщение southklad »

В каком файле убрать ???
Изображение
Аватара пользователя
Sherlock
phpBB 2.0.2
Сообщения: 301
Стаж: 14 лет
Откуда: Украина, Ивано-Франковск
Благодарил (а): 40 раз
Поблагодарили: 44 раза

Re: Авторизация через Вконтакте, Facebook, Twitter ... и Ope

Сообщение Sherlock »

./includes/loginza/libs/LoginzaUserProfile.class.php
SH
Аватара пользователя
southklad
phpBB 3.1.0 RC4
Сообщения: 3467
Стаж: 14 лет 8 месяцев
Благодарил (а): 871 раз
Поблагодарили: 200 раз

Re: Авторизация через Вконтакте, Facebook, Twitter ... и Ope

Сообщение southklad »

У меня вот так

Код: Выделить всё

public function genNickname () {
		if ($this->profile->nickname) {
			return $this->profile->nickname;
		} elseif (!empty($this->profile->email) && preg_match('/^(.+)\@/i', $this->profile->email, $nickname)) {
			return $nickname[1];
		} elseif ( ($fullname = $this->genFullName()) ) {
			return $this->normalize($fullname, '.');
		}
и так же по инструкции, значит все ошибки от вашей установки мода
Изображение

Вернуться в «Бета-версии модов для phpBB 3.0.x»