Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Нужно соеденить PHP.SPB.CHAT с базой форума IPB 2.3.4. А точнее переделать этот скрипт. Скрипт расчитан на работу с одной таблицей, а в форуме данные раскиданы по трем таблицам.

// Данные для соединения

$export_dbhost="localhost"; // хост mysql сервера

$export_dbuser="root"; // имя юзера

$export_dbpass=""; // пароль

$export_dbbase="nuke2"; // имя базы

$export_dbtable="nuke_users"; // имя таблицы юзеров в базе

// Куда редиректить браузер, если юзер пытается регистрироваться в чате

// или использовать то, что не возможно из-за внешней базы данных.

// Подумайте и впишите правильные URL для каждого из случаев! По умолчанию

// они (ссылки) совершенно неправильные.

$export_url_reg="http://php.spb.ru/chat/"; // регистрация в чате (ЗАДАЙТЕ!)

$export_url_forget="http://php.spb.ru/chat/"; // "забыл пароль" (ЗАДАЙТЕ!)

$export_url_useredit="http://php.spb.ru/chat/"; // "изменить рег. инфо" (ЗАДАЙТЕ!)

$export_url_userdelete="http://php.spb.ru/chat/"; // "удалить юзера" (ЗАДАЙТЕ!)

$export_url_userpass="http://php.spb.ru/chat/"; // "сменить" (ЗАДАЙТЕ!)

$export_url_logout=""; // Выход / снять авторизацию. Если это поле пустое,

// то чат использует собственное снятие авторизации.

// Если поле задано - переброс на данный URL.

// В URL можно использовать ваши $wwwhost и $sess (номер сессии).

// Как импортировать данные из таблицы - описание структуры(полей) таблицы.

// Слева напишите названия полей в mysql базе, справа - переменные этого

// чата. Список обязательных переменных; nick и pass (логин и пароль).

// Если каких-то переменных нет в mysql, то удалите строки.

// Рекомендуется для большего соотвествия отредактировать регистрационную

// анкету пользователя в чате так, чтобы там добавить все поля,

// имеющиеся в Nuke/Форуме и удалить все лишние! Для этого

// смотрите http://$wwwhost/admin_loginform.php

// Важно: проверьте точное наличие перечисленных названий полей (левая

// колонка) с помощью менеджера mysql-базы.

// По-умолчанию даны настройки для phpNuke.org:

$export_field=array(

// SQL таблица Этот чат

"uname" => "nick" , // логин

"pass" => "pass" , // пароль

"name" => "name" , // реальное имя и фамилия

"url" => "url" , // URL

"user_icq" => "icq" , // ICQ

"email" => "mail" , // скрытый email

"femail" => "pubmail" , // открытый email

"user_from"=> "location", // город/страна

"user_sig" => "about" , // инфо о себе

);

// Кроме описания соотвествия необходимо в таблицу $export_dbtable

// ручками добавить добавить новое поле с любым название. Например,

// пуcть называется "info11". Тип поля: BLOB, not null, default "".

// В этом поле чат будет хранить свои данные. Итак, прямо сейчас,

// идите и добавьте новую колонку(поле) с именем из этой переменной

$export_info11="info11"; // название нового поля в таблице $export_dbtable

// Весьма вероятно, что пароль юзеров в форуме будет кодирован (вернее,

// хеширован). Опишите, как именно проверить, что введенный в чате пароль

// из переменной $chatpwd является идентичным паролю форума из переменной

// $forumpwd. В функции ниже раскомментируйте ОДИН из нужных вариантов,

// либо допишите свой. Внимание! Автор чата не может угадать, где какие

// проверки. Придется подумать. Обычно, это либо прямая

// регистро(не)зависимая проверка или просто md5-хеширование. Функция

// должна вернуть 1 если пароли совпадают и 0, в противном случае.

function check_extern_pass($chatpwd, $forumpwd) {

// Вариант 1. Нужно просто сравнить пароли, регистрозависимость.

// if ($chatpwd==$forumpwd) return 1;

// Вариант 2. Нужно просто сравнить пароли, регистроНЕзависимость.

// if (sl($chatpwd)==sl($forumpwd)) return 1;

// Вариант 3. В базе лежат хешированные пароли по md5 алгоритму,

// регистрозависимость.

if (sl(md5($chatpwd))==sl($forumpwd)) return 1;

return 0;

}

// Все форумы (phpBB.com, vBulletin.com, Phorum.org) и phpNuke.org

// используют регистрозависимое md5-хеширование, т.е. вероятнее всего вам

// нужно раскомментировать вариант 3.

?>

16 лет назад
sakhnet
51 годРоссия
16 лет в сервисе
Был
15 лет назад
Выбранный исполнитель
CalmNad
Денис 
46 летБеларусь
18 лет в сервисе
Был
3 года назад
16 лет назад
$50
1 день