Jump to content

Внешняя авторизация


Recommended Posts

Доброго времени суток уважаемые. Возникли трудности с Авторизацией с помощью удаленной базы. Форум стоит на поддомене. Хотелось подключить авторизацию пользователей основного домена. Необходимые настройки все сделал. Ошибиться там трудно. Поправил хеш паролей под свой скрипт. Включил эту авторизацию ) но увы, пользователей не узнает. Пробовал и по логину, и по мылу(последнее бы очень подошло), ни в какую. Причем на локалке у приятеля все работает норм, на сервере не хочет. Может кто сталкивался с подобной трудностью, подскажите решение пожалуйста. Заранее благодарен )

Link to comment
Share on other sites

Ну если все настройки введены верно, то проблема скорее всего в шифровании пароля.

Вообще трудно узнать причину, ведь ошибок никаких нет.

Я рекомендую вам проверить:

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

Затем в IP.Board заполните все, выберите способ хэширования как Открытый текст и попробуйте зайти.

Если авторизация пройдет - проблема в хэше пароля, если нет - в настройках БД.

Link to comment
Share on other sites

Таким способом авторизация тоже не прошла. Как по другому настроить файл в админцентре форума, в голову не приходит. Базы на одном сервере, по идее не должно быть трудностей

Link to comment
Share on other sites

Трудность решилась частично. Не совсем так как хотелось бы. Узнает пользователя по нику. С хешированным паролем, как и нужно. Не хочет узнавать по мылу. Вообще никак. Мыло стандартное, без каких либо знаков лишний, например [email protected]

Link to comment
Share on other sites

В общем, вот написал скрипт:


<?
/*
Все заполнять внутри кавычек!
*/
$SERVER = "localhost"; // Сервер удаленной базы данных
$DBNAME = "name"; // Имя удаленной базы
$DBUSER = "user"; // Имя пользователя для доступа к удаленной базе
$DBPASS = "pass"; // Пароль пользователя для доступа к удаленной базе
$TABLE = "table"; // Имя таблицы пользователей в удаленной базе
$NAMEFIELD = "login"; //Поле имени в таблице
$PASSFIELD = "password"; //Поле пароля в таблице
$TESTUSER = "login"; // Тестовый пользователь
$TESTPASS = "pass"; // Тестовый пароль
echo 'Начало тестирования подключения...';
if(!@mysql_connect($SERVER, $DBUSER, $DBPASS)) {
echo 'Ошибка при подключении: '.mysql_error();
exit();
}
echo 'Подключение установлено успешно!';
if(!@mysql_select_db($DBNAME)) {
echo 'Ошибка при выборе БД: '.mysql_error();
exit();
}
echo 'БД выбрана успешно!';
echo 'Тестирование получения данных';
$r = @mysql_query("SELECT * FROM `{$TABLE}` WHERE `{$NAMEFIELD}` = '{$TESTUSER}' AND `{$PASSFIELD}` = '{$TESTPASS}'") or FALSE;
if(!$r) {
echo 'Ошибка при запросе: '.mysql_error();
exit();
}
if(!@mysql_num_rows($r)) {
echo 'MySQL вернула пустой результат!';
exit();
}
echo 'Все прошло успешно';
?>
[/CODE]

Создайте в корне форума файл .php, например, mysqlTest.php, вставьте в него этот код, предварительно отредактировав в соответствии с комментариями, и откройте в браузере.

[/spoiler]

Мда, когда писал код не видел ответ, ладно.

Ну введите в [b]Поле имени в таблице [/b]поле E-Mail адреса, какая разница.

Link to comment
Share on other sites

Извиняюсь за то что напряг. Разница большая. На основном домене логин может быть латинскими символами и кирилическими. В ipboard с этим по другому, как я понял с той же авторизации. Логин латинскими символами узнает, кирилическими нет. Может вы подскажете мне путь до класса, где фильтруется логин при запросе на авторизации/регистрации? И заодно, возможно знаете трудности, которые могут возникнуть, если разрешить регистрацию кирилических логинов

Link to comment
Share on other sites

Еще один момент усмотрел. В редактировании этого метода авторизации есть выбор, что вводить, логин, мыло или на выбор логин или имя. А в настройках поиск только по одному полю. Поэтому на выбор(логин или мыло) можно выбросить

Link to comment
Share on other sites

Там написано где находится файл внешней авторизации.

В ipboard с этим по другому, как я понял с той же авторизации. Логин латинскими символами узнает, кирилическими нет.

Не проходит авторизация с кириллическим логином???

Link to comment
Share on other sites

Там написано где находится файл внешней авторизации.

Не нашел в нем что то ограничений по языку или вообще каких либо

Не проходит авторизация с кириллическим логином???

именно в внешней авторизации - нет. В ней не проходит кирилический логин и мыло
Link to comment
Share on other sites

Я не знаю, проверить нет возможности, впервые с этим сталкиваюсь.

Единственное что приходит в голову - кодировки Баз данных одинаковые?

Link to comment
Share on other sites

  • 1 year later...

Здравствуйте! Доброго времени суток!

Простите если не там написал, очень важно!!! Интересует очень тема - внешняя авторизация! Искал в интернете, нигде не могу найти руссковразумительную инструкцию как объединить нескольких форумов IPB. Чтобы понятно и доступно начинающему веб-дизайнеру. У вас на ресурсе тоже ничего не нашел, может подскажите топик.

Link to comment
Share on other sites

  • 11 months later...

сделал по скрипту вот такие данные пришли:

Начало тестирования подключения...Подключение установлено успешно!БД выбрана успешно!Тестирование получения данныхMySQL вернула пустой результат!

что не так?


Вообще скрипт отвтиел так: РќР°С‡Р°Р»Рѕ тестирования подключения...Подключение установлено успешно!БД выбрана успешно!Тестирование получения данныхMySQL вернула пустой результат!

декодером перевел.

Как вариант может кодировки разные?

БД на одном хосте.


а если все же кодировки разные, то как пришить?


 База юзеров и база форума у меня в кодировке UTF-8,  БД на скрипт отвечает в  CP1251, пароль видимо приходит UTF-8. как наладить?


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

Edited by rustav
Link to comment
Share on other sites

Ребят, подскажите пожалуйста. Уже за деньги готов решить вопрос. Очень нужно.

 

старый форум на phpbb, нынешний на ipb

обе БД на одном хосте

обе на utf8

по скрипту выше БД почему-то возвращает пустой результат, пробовал и через мыло и по имени - результат один.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

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

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...