| C++ | PHP |Forum |
| AKTUALNOŚCI | ARTYKUŁY | FORUM | PLIKI | PORADY |
Koderzy.pl » PHP » Artykuły » Skrypty » Integracja logowania forum phpBB 2 z dowolną witryną
Twoje konto

auto ukryj
Losowe porady
·Jak zaokrąglić liczbę do 3 miejsc po przecinku?
·Jak usunąć zbędne spacje z początku i/lub końca tekstu?
·Jak zaokrąglać liczby i kiedy jakiej metody użyć?
·Jak zmienić Polskie znaki diakrytyczne w ich odpowiedniki bez “ogonków”?
·Jak wypisać listę plików z danego katalogu których nazwa zaczyna się na zadany znak?
·Jak zamienić tablicę na ciąg znaków oddzielonych przecinkiem?
·W jaki sposób usunąć znaki spoza określonego zestawu?
·W jaki sposób wstrzymać na określony czas wykonywanie skryptu?
·Jak zamienić w tablicy klucze z wartościami?
·W jaki sposób wykonać formularz z podstawową walidacją?
Buttony
koderzy.pl
xhtml
css


20 maja 2005 20:57 Integracja logowania forum phpBB 2 z dowolną witryną Integracja logowania forum phpBB 2 z dowolną witrynąPaweł Gniadkowski [Kardon]
Pierwszym krokiem przy integracji serwisu z phpBB jest dołączenie do każdej podstrony (na samym początku - przed wysłaniem czegokolwiek do przeglądarki!) następującego kodu: <?php
$folder 
"/home/konto/public_html/";
define('IN_PHPBB'true);
$phpbb_root_path $folder 'forum/';
include(
$phpbb_root_path 'extension.inc');
include(
$phpbb_root_path 'common.' $phpEx);
$userdata session_pagestart($user_ipPAGE_INDEX);
init_userprefs($userdata);
if (!
$userdata['session_logged_in']) $userdata['user_level'] = "0";
$redir '.././' 
str_replace ($folder""$_SERVER['DOCUMENT_ROOT'] . $_SERVER['REQUEST_URI']);
?>
Na uwagę zasługują dwie linijki, które należy dostosować do własnych potrzeb: $folder = "/home/konto/public_html/";Tutaj trzeba zdefiniować ścieżkę na serwerze wskazującą na folder, w którym znajduje się folder sktyptu phpBB. Kolejnej zmiany dokonujemy tutaj: $phpbb_root_path=$folder . 'forum/';Jeśli umieściłeś skrypt phpBB w folderze o innej nazwie, niż forum musisz to tutaj uwzględnić. Pamiętaj, że ten folder musi się znajdować w folderze, na który wskazuje ścieżka z pierwszej linijki, którą zmienialiśmy.

Zagmatwałem, ale myślę, że zrozumiecie. Powyższy kod jest poprawny, jeśli skrypt phpBB jest umieszczony w folderze /home/konto/public_html/forum/
Kolejny etap to stworzenie okna do logowania: <?php
if ($userdata['user_id'] > 1)
{
  echo 
'<span style="font-weight: bold;">' $userdata['username'] . '</span><br/>
  <a href="http://strona.pl/forum/privmsg.php?folder=inbox">
  Prywatne wiadomości: ' 
$userdata['user_unread_privmsg'] . '</a><br/>
  <a href="http://strona.pl/forum/login.php?logout=true">Wyloguj</a>'
;
}
else
{
  echo 
'<form action="http://strona.pl/forum/login.php" method="post">
  <input type="text" name="username" value="" tabindex="1" />
  <input type="password" name="password" tabindex="2" />
  <br/>
  <input type="hidden" name="autologin" value="on"/>
  <input type="hidden" name="login" value="Zaloguj"/>
  <input type="hidden" name="redirect" value="' 
$redir '"/>
  <input type="submit" name="login" value="Login" tabindex="3" />
  </form><br/>
  <a href="http://strona.pl/forum/profile.php?mode=register">Rejestracja</a>'
;
}
?>
Powyższy kod wyświetli okienko logowania (jeśli user jest niezalogowany) lub informację o użytkowniku. Należy w nim zmodyfikować odpowiednio ścieżki do plików phpBB.

Ostatnią rzeczą, która może Wam się przydać, jest ograniczanie dostępu do częsci serwisu dla niezalogowanych użytkowników: <?php
if ($userdata['user_level'] != "0")
{
  echo 
'To widzą tylko zalogowani!';
}
?>

© 2010 - Grupa BBN - wszelkie prawa zastrzeżone.
.