[3.2] Проверка логина и пароля форума для интеграции форума с сайтом

Форум для авторов расширений для phpBB. Здесь можно попросить помощи в разработке у коллег.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB3.1.x | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
Mr. Anderson
phpBB Guru
phpBB Guru
Сообщения: 7608
Зарегистрирован: 13.03.2004 21:32
Откуда: СССР
Благодарил (а): 22 раза
Поблагодарили: 156 раз
Контактная информация:

Re: Внешняя регистрация на форуме. Код для своего сайта

Сообщение Mr. Anderson » 04.02.2018 16:03

Василий72, вы можете использовать ПОДХОДЯЩИЙ ббкод, а не любой попавшийся?

Аватара пользователя
Василий72
phpBB 1.2.0
Сообщения: 12
Зарегистрирован: 02.02.2018 19:13
Откуда: Рига, Латвия
Поблагодарили: 1 раз
Контактная информация:

Re: Внешняя регистрация на форуме. Код для своего сайта

Сообщение Василий72 » 04.02.2018 16:06

Mr. Anderson писал(а):
04.02.2018 16:03
Василий72, вы можете использовать ПОДХОДЯЩИЙ ббкод, а не любой попавшийся?
Я не понял ответ? Что я могу использовать?
А что есть готовый код регистрации?
С уважением,
Василий
Автоматические рыбные фермы. Например в Таллине в центре города на чердаке 150 м2 построил осетровник 5 т мяса в год.
http://catfish.lv/test/

Аватара пользователя
Sheer
phpBB Guru
phpBB Guru
Сообщения: 10488
Зарегистрирован: 18.02.2007 19:01
Откуда: Рига, Латвия (страна-недоразумение)
Благодарил (а): 40 раз
Поблагодарили: 2268 раз

Re: [3.2] Проверка логина и пароля форума для интеграции форума с сайтом

Сообщение Sheer » 04.02.2018 16:13

Василий72 писал(а):
04.02.2018 16:06
ПОДХОДЯЩИЙ ббкод
Для размещения кода или его фрагмента в сообщениях используйте bb-код [code] а не [icode]
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.

Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 13922
Зарегистрирован: 12.05.2006 18:16
Откуда: Красноярск
Благодарил (а): 324 раза
Поблагодарили: 1392 раза
Контактная информация:

Re: [3.2] Проверка логина и пароля форума для интеграции форума с сайтом

Сообщение rxu » 04.02.2018 16:16

Василий72 писал(а):
02.02.2018 21:04
//Получение переменных методом POST
$username = utf8_normalize_nfc(request_var('username', '', true));
$password = utf8_normalize_nfc(request_var('password', '', true));

//Проверка и защита передаваемых данных
$username = addslashes(strip_tags($username));
$password = addslashes(strip_tags($password));

$username = $db->sql_escape($username);
$password = $db->sql_escape($password);
Что это? Опять?
вы что, комментов вообще не читаете?
Изображение

Аватара пользователя
Василий72
phpBB 1.2.0
Сообщения: 12
Зарегистрирован: 02.02.2018 19:13
Откуда: Рига, Латвия
Поблагодарили: 1 раз
Контактная информация:

Re: [3.2] Проверка логина и пароля форума для интеграции форума с сайтом

Сообщение Василий72 » 04.02.2018 16:26

rxu писал(а):
04.02.2018 16:16
Что это? Опять?
вы что, комментов вообще не читаете?
Так это новый код для регистрации и я данные о пользователе получил через свою CMS. Начало завожу в базу данных CMS пользователя, а потом завожу пользователя в базу данных форума, поэтому я подумал, лучше еще раз почистить.

Отправлено спустя 29 секунд:
Sheer писал(а):
04.02.2018 16:13
Для размещения кода или его фрагмента в сообщениях используйте bb-код

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

 а не [icode][/quote]
А понял.
С уважением,
Василий
Автоматические рыбные фермы. Например в Таллине в центре города на чердаке 150 м2 построил осетровник 5 т мяса в год.
http://catfish.lv/test/

Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 13922
Зарегистрирован: 12.05.2006 18:16
Откуда: Красноярск
Благодарил (а): 324 раза
Поблагодарили: 1392 раза
Контактная информация:

Re: [3.2] Проверка логина и пароля форума для интеграции форума с сайтом

Сообщение rxu » 04.02.2018 16:30

Василий72 писал(а):
04.02.2018 16:27
я данные о пользователе получил через свою CMS
Зачем тогда вот это
rxu писал(а):
04.02.2018 16:16
$username = utf8_normalize_nfc(request_var('username', '', true));
$password = utf8_normalize_nfc(request_var('password', '', true));
???
request_var получает переменные из входного потока POST/GET/REQUEST.
Изображение

Аватара пользователя
Василий72
phpBB 1.2.0
Сообщения: 12
Зарегистрирован: 02.02.2018 19:13
Откуда: Рига, Латвия
Поблагодарили: 1 раз
Контактная информация:

Re: [3.2] Проверка логина и пароля форума для интеграции форума с сайтом

Сообщение Василий72 » 04.02.2018 16:34

rxu писал(а):
04.02.2018 16:30
request_var получает переменные из входного потока POST/GET/REQUEST.
Я не понял? Вы что смотрите мой старый код вчерашний? Мы с ним все разобрались.
Я сегодня разместил новую тему "Внешняя регистрация на форуме. Код для своего сайта"
и новый код регистрации на сайте одновременно на форуме.
У меня нет функции request_var. Я данные получил через CMS сайта.
С уважением,
Василий
Автоматические рыбные фермы. Например в Таллине в центре города на чердаке 150 м2 построил осетровник 5 т мяса в год.
http://catfish.lv/test/

Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 13922
Зарегистрирован: 12.05.2006 18:16
Откуда: Красноярск
Благодарил (а): 324 раза
Поблагодарили: 1392 раза
Контактная информация:

Re: [3.2] Проверка логина и пароля форума для интеграции форума с сайтом

Сообщение rxu » 04.02.2018 16:44

Василий72 писал(а):
04.02.2018 16:34
Вы что смотрите мой старый код вчерашний?
Я смотрю код, который вы тут запостили 45 минут назад Внешняя регистрация на форуме. Код для своего сайта

Отправлено спустя 3 минуты 3 секунды:
Василий72 писал(а):
04.02.2018 16:34
У меня нет функции request_var.
А всё остальное?

Отправлено спустя 1 минуту 10 секунд:
Василий72 писал(а):
04.02.2018 16:34
Я данные получил через CMS сайта.
А что, в ЦМС данные не фильтруются на входе?
Изображение

Аватара пользователя
Василий72
phpBB 1.2.0
Сообщения: 12
Зарегистрирован: 02.02.2018 19:13
Откуда: Рига, Латвия
Поблагодарили: 1 раз
Контактная информация:

Re: [3.2] Проверка логина и пароля форума для интеграции форума с сайтом

Сообщение Василий72 » 05.02.2018 0:35

Добрый вечер!
rxu писал(а):
04.02.2018 16:48
А что, в ЦМС данные не фильтруются на входе?
Согласно Руководству написания кода для phpBB. Там написано, что надо обязательно очищать переменные, полученные от пользователя, при каждом записи в базу данных форума.

Отправлено спустя 1 минуту 59 секунд:
Авторизация происходит редко и поэтому затраты времени процессора не так важны для регистрации.
А так в остальном код правильно написан? Я его проверил, все работает.
С уважением,
Василий
Автоматические рыбные фермы. Например в Таллине в центре города на чердаке 150 м2 построил осетровник 5 т мяса в год.
http://catfish.lv/test/

Аватара пользователя
t4p2
phpBB 2.0.0
Сообщения: 203
Зарегистрирован: 31.07.2015 1:43
Откуда: Okayma
Благодарил (а): 36 раз
Контактная информация:

Re: [3.2] Проверка логина и пароля форума для интеграции форума с сайтом

Сообщение t4p2 » 17.10.2018 18:49

Василий72 писал(а):
05.02.2018 0:37
Я его проверил, все работает.
А как быть Вы запустили авторизацию?
Я вставила код:

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

<form action="index.php" method="post" name="form_auth">
            <table>
          
                <tbody><tr>
                    <td> Логин: </td>
                    <td>
                        <input type="LOGIN" name="LOGIN" required="required"><br>
                        <span id="valid_email_message" class="mesage_error"></span>
                    </td>
                </tr>
          
                <tr>
                    <td> Пароль: </td>
                    <td>
                        <input type="PASSWORD" name="PASSWORD" placeholder="минимум 6 символов" required="required"><br>
                        <span id="valid_password_message" class="mesage_error"></span>
                    </td>
                </tr>
                 
                
 
                <tr>
                    <td colspan="2">
                        <input type="submit" name="btn_submit_auth" value="Войти">
                    </td>
                </tr>
            </tbody></table>
        </form>
Но у меня сразу страничка стала материться:
General Error
Illegal use of $_POST. You must use the request class to access input data.


Отправлено спустя 16 минут 14 секунд:
Пришлось вот так вот код исправить:

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

//Задаем начальные данные для регистрации USER
$request->enable_super_globals();
$arResult['LOGIN'] = $_REQUEST['LOGIN'];
$arResult['PASSWORD'] = $_REQUEST['PASSWORD'];
Ошибок не стало...
Но теперь когда авторизуюсь, пишет:
Такое имя есть в базе данных форума. На форуме надо будет пройти регистрацию вручную.

И поле ввода логина и пароля все равно активно... Подскажите плз, что я не так делаю.
- Ищy выход из Интеpнета...
Изображение

Аватара пользователя
Sheer
phpBB Guru
phpBB Guru
Сообщения: 10488
Зарегистрирован: 18.02.2007 19:01
Откуда: Рига, Латвия (страна-недоразумение)
Благодарил (а): 40 раз
Поблагодарили: 2268 раз

Re: [3.2] Проверка логина и пароля форума для интеграции форума с сайтом

Сообщение Sheer » 17.10.2018 21:57

t4p2 писал(а):
17.10.2018 19:05
$request->enable_super_globals();
Велосипеды это, конечно, неплохо, но не стоит их изобретать. Ведь не случайно в phpBB запретили суперглобальные переменные.
Английски же по белому написано
t4p2 писал(а):
17.10.2018 19:05
You must use the request class to access input data
Ведь буквально недавно об этом говорилось.Еще раз? Извольте Создание сайта с авторизацией через phpBB
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.

Ответить

Вернуться в «Для авторов»