Posted 25 июля, 201212 yr comment_7995 Доброго времени суток уважаемые. Возникли трудности с Авторизацией с помощью удаленной базы. Форум стоит на поддомене. Хотелось подключить авторизацию пользователей основного домена. Необходимые настройки все сделал. Ошибиться там трудно. Поправил хеш паролей под свой скрипт. Включил эту авторизацию ) но увы, пользователей не узнает. Пробовал и по логину, и по мылу(последнее бы очень подошло), ни в какую. Причем на локалке у приятеля все работает норм, на сервере не хочет. Может кто сталкивался с подобной трудностью, подскажите решение пожалуйста. Заранее благодарен )
25 июля, 201212 yr comment_7997 Ну если все настройки введены верно, то проблема скорее всего в шифровании пароля. Вообще трудно узнать причину, ведь ошибок никаких нет. Я рекомендую вам проверить: в удаленной базе данных вручную создайте пользователя (в таблице пользователей просто новую запись), укажите логин, пароль задайте просто текстом. Затем в IP.Board заполните все, выберите способ хэширования как Открытый текст и попробуйте зайти. Если авторизация пройдет - проблема в хэше пароля, если нет - в настройках БД.
25 июля, 201212 yr Author comment_8005 Таким способом авторизация тоже не прошла. Как по другому настроить файл в админцентре форума, в голову не приходит. Базы на одном сервере, по идее не должно быть трудностей
25 июля, 201212 yr Author comment_8011 Трудность решилась частично. Не совсем так как хотелось бы. Узнает пользователя по нику. С хешированным паролем, как и нужно. Не хочет узнавать по мылу. Вообще никак. Мыло стандартное, без каких либо знаков лишний, например [email protected]
25 июля, 201212 yr comment_8014 В общем, вот написал скрипт: <? /* Все заполнять внутри кавычек! */ $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 адреса, какая разница.
25 июля, 201212 yr Author comment_8017 Извиняюсь за то что напряг. Разница большая. На основном домене логин может быть латинскими символами и кирилическими. В ipboard с этим по другому, как я понял с той же авторизации. Логин латинскими символами узнает, кирилическими нет. Может вы подскажете мне путь до класса, где фильтруется логин при запросе на авторизации/регистрации? И заодно, возможно знаете трудности, которые могут возникнуть, если разрешить регистрацию кирилических логинов
25 июля, 201212 yr Author comment_8018 Еще один момент усмотрел. В редактировании этого метода авторизации есть выбор, что вводить, логин, мыло или на выбор логин или имя. А в настройках поиск только по одному полю. Поэтому на выбор(логин или мыло) можно выбросить
25 июля, 201212 yr comment_8019 Там написано где находится файл внешней авторизации. В ipboard с этим по другому, как я понял с той же авторизации. Логин латинскими символами узнает, кирилическими нет. Не проходит авторизация с кириллическим логином???
25 июля, 201212 yr Author comment_8021 Там написано где находится файл внешней авторизации. Не нашел в нем что то ограничений по языку или вообще каких либо Не проходит авторизация с кириллическим логином??? именно в внешней авторизации - нет. В ней не проходит кирилический логин и мыло
26 июля, 201212 yr comment_8039 Я не знаю, проверить нет возможности, впервые с этим сталкиваюсь. Единственное что приходит в голову - кодировки Баз данных одинаковые?
26 декабря, 201310 yr comment_50025 Здравствуйте! Доброго времени суток! Простите если не там написал, очень важно!!! Интересует очень тема - внешняя авторизация! Искал в интернете, нигде не могу найти руссковразумительную инструкцию как объединить нескольких форумов IPB. Чтобы понятно и доступно начинающему веб-дизайнеру. У вас на ресурсе тоже ничего не нашел, может подскажите топик.
18 декабря, 20149 yr comment_76225 сделал по скрипту вот такие данные пришли: Начало тестирования подключения...Подключение установлено успешно!БД выбрана успешно!Тестирование получения данныхMySQL вернула пустой результат! что не так? Вообще скрипт отвтиел так: Начало тестирования подключения...Подключение установлено успешно!БД выбрана успешно!Тестирование получения данныхMySQL вернула пустой результат! декодером перевел. Как вариант может кодировки разные? БД на одном хосте. а если все же кодировки разные, то как пришить? База юзеров и база форума у меня в кодировке UTF-8, БД на скрипт отвечает в CP1251, пароль видимо приходит UTF-8. как наладить? сделал скрипт в CP1251, ответил нормальным русским языком. dologin может как-то исправить? чую что решение простое, но в кодировке без опыта совершенно. все на коленке делаю. гуру помогите что чем может Edited 18 декабря, 20149 yr by rustav
20 декабря, 20149 yr comment_76355 Ребят, подскажите пожалуйста. Уже за деньги готов решить вопрос. Очень нужно. старый форум на phpbb, нынешний на ipb обе БД на одном хосте обе на utf8 по скрипту выше БД почему-то возвращает пустой результат, пробовал и через мыло и по имени - результат один.
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.