Интегриране на сайт и phpBB 2 форум

Идеята е сайта Ви и форум phpbb 2 да ползват един и същ login ( както в web-tourist.net ). Интегриране.
Няма в нета такъв урок и много потребители ме натискат от доста време да го напиша.
Смятам, че ако ползвате phpBB форум то няма нужда от каквато и да било
друга готова система за сайт.
Може да ползвате login системата на вашия вече развит форум и да създадете доста добър портал.

Урока е лесен и не се изискват някакви сериозни познания по PHP и MySQL .

Няма как да омажете нещо тъй като не се налага да пипате файловете или базата данни на форума
но не е зле да прочетете урока до край преди да започнете да тествате.

Прочетете също и уроците за уникален темплейт:

Уникален темплейт за phpBB /Урок1

С тяхна помощ сайта и форума ви ще изглеждат като едно цяло.

Да започваме.

Инсталирайте един phpBB в някаква директория (примерно /forum/) .
Ако имате вече инсталиран и работещ форум може да използвате него.
Следващата стъпка е да добавите във всеки един .php файл от вашия сайт следния код (най-отгоре):

<?
define('IN_PHPBB', true);
$phpbb_root_path ='forum/';
include($phpbb_root_path . 'config.php');
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
$userdata = session_pagestart($user_ip, PAGE_INDEX);
?>

$phpbb_root_path е пътя до папката на форума спрямо файла.

След това добавете в страницата и формуляра за логване (вход/изход) .

Примерен код за формуляра:

<?
if ($userdata['user_active']>0)
{

echo '
<!-- Информация за потребителя -->
<table border="0" style="font-size:12px;" cellpadding="0" cellspacing="0" >
<tr>
<td style="font-size:12px;" height="20"><b>Потребител:</b>
</td>
</tr>
<tr>
<td style="font-size:12px;" height="20"><a
href="'.$phpbb_root_path.'profile.php?mode=viewprofile&u='.$userdata['username'].' ">'. $userdata['username'].'</a>
</td>
</tr>
<tr>
<td height="20" ><a class="user" href="'.$phpbb_root_path.'login.php?logout=true&sid='.$userdata['session_id'].'">Изход</a></td>
</tr>
<tr>
<td height="5">
</td>
</tr>
</table>
<!-- /вход -->
';
}
else
{

echo '
<!-- Вход -->
<form action="'.$phpbb_root_path.'login.php" method="post" style="margin: 0px;">
<input type="hidden" name="redirect" value="../index.php" />
<table border="0" style="font-size:12px;" width="130" cellspacing="0" cellpadding="0">
<tr>
<td class="left" height="25">
<b>Потребител:</b>
</td>
</tr>
<tr>
<td class="left" height="25">
<input type="text" name="username" size="10" maxlength="25">
</td>
</tr>
<tr>
<td class="left" height="25">
<b>Парола:</b>
</td>
</tr>
<tr>
<td class="left" height="25">
<input type="password" name="password" size="10" maxlength="25">
</td>
</tr>
<tr>
<td>
автоматично: <input type="checkbox" name="autologin" checked >
</td>
</tr>
<tr>
<td class="left" height="35">
<input type="submit" name="login" value="Вход">
</td>
</tr>
<tr>
<td class="left" height="20" >
<a href="'.$phpbb_root_path.'profile.php?mode=register">Регистрация</a>
</td>
</tr>
<tr>
<td class="left" height="20">
<a href="'.$phpbb_root_path.'profile.php?mode=sendpassword" >Забравена парола</a>
</td>
</tr>
</table>
</form>
<!-- /вход -->
';

}

?>

Вече си имате .php файл, който ползва общ логин с вашия форум.

Щом потребителя се логне в сайта ще бъде логнат и във форума ( и обратното) .
Знаете всичко за потребителя от следните променливи:
$userdata[‘username’] – потребителското му име
$userdata[‘user_regdate’] – кога се е регистрирал
$userdata[‘user_level’] – дали е администратор или модератор (1 е админ/ 2 е мод)
$userdata[‘user_posts’] – брой мнения във форума
$userdata[‘user_style’] – кой темплейт ползва
$userdata[‘user_rank’] – какъв ранк е
$userdata[‘user_avatar’] – аватар на потребителя
$userdata[‘user_email’] – E-mail на потребителя
$userdata[‘user_icq’] – ICQ на потребителя

Останалите данни от таблицата user са от сорта на $userdata[‘името на полето’] .

Вече си имате сайт с всички екстри.

Урока е написан специално за web-tourist.net и преписването му е забранено.

Всички въпроси и проблеми свързани с урока се коментират ТУК

Вашият коментар