Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

Авторизация на сайте + связь регистрации с авторизацией

Форум для авторов модов для phpBB 2.0.x.
Аватара пользователя
YogSagot
phpBB 1.4.3
Сообщения: 98
Стаж: 17 лет 11 месяцев
Откуда: Латвия, г.Даугавпилс
Контактная информация:

Сообщение YogSagot »

Boss_ak писал(а):Fatal error: Cannot redeclare class template in D:\sait\forums\includes\template.php on line 30
Как-то не так вы, видимо, делали. Почему у вас дважды подключаеться файл common.php, это я вас должен спросить.
Аватара пользователя
OkisL
phpBB 1.2.0
Сообщения: 15
Стаж: 17 лет 6 месяцев

Сообщение OkisL »

Помогите, пожалуйста. Ув. YogSagot Ваш скрипт
Код:
<?php
define('IN_PHPBB', true);
$phpbb_root_path = 'phpbb/';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
//
// End session management
//
if (!$userdata['session_logged_in'])
{
print '<form action="'.append_sid($phpbb_root_path.'login.'.$phpEx).'" method="post">';
print 'Login: <input name="username" type="text" value=""><br />';
print 'Password: <input name="password" type="password" value=""><br />';
print 'Autologin: <input name="autologin" type="checkbox" value="ON">';
print '<input name="redirect" type="hidden" value="../index.php">';
print '<input name="login" type="submit" value="Send">';
print '</form>';
}
else
{
print 'Hallo, '.$userdata['username'].'<br />';
print '<a href="'.$phpbb_root_path.'login.'.$phpEx.'?logout=true&sid='.$userdata['session_id'].'&redirect=../index.php">Logout</a>';
}
?>
работает, но когдя пользователь не вошёл ещё, выскакивает:

Warning: Cannot modify header information - headers already sent by (output started at x:\home\my-site.ru\www\avtor.php:4) in x:\home\my-site.ru\www\forum\includes\sessions.php on line 254

Warning: Cannot modify header information - headers already sent by (output started at x:\home\my-site.ru\www\avtor.php:4) in x:\home\my-site.ru\www\forum\includes\sessions.php on line 255

А ниже нормальные окна для логина и пароля.

avtor.php в корне сайта - это страница для редиректа

Второй вопрос, как выводить аватару одновременно с именем пользователя?

Третий вопрос. Как сделать так, чтобы при ошибочном пароле я попадал не на форум, а на всё тот же avtor.php? Я имею ввиду авторизацию на сайте а не на форуме.

Всё делаю на виртуальном сервере Денвер.
Sver4koff
phpBB 1.4.0
Сообщения: 31
Стаж: 17 лет 4 месяца

Сообщение Sver4koff »

помести весь код, который находиться до "End session management" в начало страницы и ошибки выскакивать не будут
ADSoft
phpBB 1.0.0
Сообщения: 9
Стаж: 17 лет 2 месяца
Контактная информация:

Сообщение ADSoft »

Уважаемые, простите за неграмотность...как бы данный скрипт переделать так.. чтобы не было форм ?
то есть есть например на моем сайте переменные

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

$username = 'aaa';
$password = 'bbb';
как с их помощью авторизироваться на форуме например по ссылке?
да, да... я такой.... зато живой!
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

Сообщение rxu »

ADSoft
Если конспективно, то передавать пароль в формате MD5 и редактировать login.php.
Или Вам готовое нужно?
Изображение
ADSoft
phpBB 1.0.0
Сообщения: 9
Стаж: 17 лет 2 месяца
Контактная информация:

Сообщение ADSoft »

мд5 - не проблемм.... вопрос как передавать!
и в чем редактировать логин? если есть готовое и не жалко - я бы посмотрел
да, да... я такой.... зато живой!
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

Сообщение rxu »

Нет, готового нет. А не боитесь (сколько уже раз обсуждалось!) передавать пароль открыто, по ссылке?

Добавлено спустя 7 минут 12 секунд:

А в принципе, Ваш выбор :)
Смысл такой. Заходите в login.php, находите:

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

		$username = isset($HTTP_POST_VARS['username']) ? phpbb_clean_username($HTTP_POST_VARS['username']) : '';
		$password = isset($HTTP_POST_VARS['password']) ? $HTTP_POST_VARS['password'] : '';
Заменяете на

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

		$username = isset($HTTP_POST_VARS['username']) ? phpbb_clean_username($HTTP_POST_VARS['username']) : isset($HTTP_GET_VARS['username']) ? phpbb_clean_username($HTTP_GET_VARS['username']) : '';
		$password = isset($HTTP_POST_VARS['password']) ? $HTTP_POST_VARS['password'] : isset($HTTP_GET_VARS['password']) ? $HTTP_GET_VARS['password'] : '';
После этого можно авторизоваться по ссылке типа
http://localhost/login.php?login=1&user ... ssword=222
Изображение
ADSoft
phpBB 1.0.0
Сообщения: 9
Стаж: 17 лет 2 месяца
Контактная информация:

Сообщение ADSoft »

rxu писал(а):Нет, готового нет. А не боитесь (сколько уже раз обсуждалось!) передавать пароль открыто, по ссылке?

...
После этого можно авторизоваться по ссылке типа
http://localhost/login.php?login=1&user ... ssword=222
а каков безопасный вариант? пусть не по ссылке... но без формы? и с отключеными куки...
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

Сообщение rxu »

ADSoft
Вы хоть поясните условие задачи. Что требуется получить?
Изображение
ADSoft
phpBB 1.0.0
Сообщения: 9
Стаж: 17 лет 2 месяца
Контактная информация:

Сообщение ADSoft »

rxu писал(а):ADSoft
Вы хоть поясните условие задачи. Что требуется получить?
Есть сайт на CMS ... вопрос совместной регистрации решил...
теперь хочется так - если чел зарегился на сайте и в данный момент аутентифицирован системой.... то при нажатии например на ссылку Форум - переходит на phpBB и там уже тоже залогинен и свободно общается..... вот
кроме как передачей в ссылке простого способа не вижу....
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

Сообщение rxu »

Если без ссылки и без формы, тогда, видимо, придётся портировать на главную страницу сайта часть кода из login.php, связанную с созданием форумной сессии (session_begin), с подключением ряда файлов пакета phpBB (т.е. include extension.inc, common.php).
Изображение
ADSoft
phpBB 1.0.0
Сообщения: 9
Стаж: 17 лет 2 месяца
Контактная информация:

Сообщение ADSoft »

ладна... спасиба... буду думать[/list]

Добавлено спустя 7 часов 38 минут 27 секунд:

нда.. думать - видимо не мой конек... :D

1. Переделал как было продложено, по ссылке типа .... не заходит ... грит типа нету такого пользователя/пароля вот

2. Что значить портировать и что именно?
мне бы смысл авторизациии догнать ....
да, да... я такой.... зато живой!
wce
phpBB 1.2.1
Сообщения: 20
Стаж: 18 лет 1 месяц

Сообщение wce »

phpbb 2.0.21.

сделал проверку логина юзера по мануалу. без append_sid. открываю скрипт в браузере: извините вы не вошли на форуме. залогиньтесь на форуме и возвращайтесь. и пишет логин снизу текущий: anonymous.

мой код:

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

<?php

define('IN_PHPBB', true);
$phpbb_root_path = '../forum/';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);

if( $userdata['session_logged_in'] ) {
    [здесь у меня еще пару конструкций if else]
}
else {
    [сообщение о том что не залогинился на форуме]
}
то есть проверка на логин, я так понимаю, проходит, но потом почему отфутболивает.

если поставить if( !$userdata['session_logged_in'] ) { - открывает мою оболочку но проверка на логин не производится я так понимаю.

где грабли?
wce
phpBB 1.2.1
Сообщения: 20
Стаж: 18 лет 1 месяц

Сообщение wce »

добавка к своему посту выше:
перемещаю свой скрипт из внешней папки в папку форума - проверка авторизации работает как часы. даже ник мой показывает. перемещаю обратно во внешнюю папку - опять не работает.
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

Сообщение rxu »

wce
Может, с $phpbb_root_path что-то напутали?
Изображение
Закрыто

Вернуться в «Для авторов (phpBB 2.0.x)»