Jump to content

Featured Replies

Posted
comment_7995

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

comment_7997

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

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

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

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

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

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

  • Author
comment_8005

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

comment_8010

Адрес сервера должен быть localhost, порт оставить пустым.

  • Author
comment_8011

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

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 адреса, какая разница.

  • Author
comment_8017

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

  • Author
comment_8018

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

comment_8019

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

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

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

  • Author
comment_8021

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

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

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

именно в внешней авторизации - нет. В ней не проходит кирилический логин и мыло
comment_8039

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

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

  • 1 year later...
comment_50025

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

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

  • 11 месяцев спустя...
comment_76225

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

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

что не так?


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

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

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

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


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


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


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

Edited by rustav

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.


Guest
Ответить в этой теме...

Последние посетители 0

  • No registered users viewing this page.