UWAGA: Pojawiła się nowa wersja systemu - phpBB 3.3.19. Ostatnie wydania (od wersji 3.3.17 do najnowszej) przynoszą kluczowe poprawki, które chronią Twoje forum przed zagrożeniami i dbają o spokój Twojej społeczności. Polecam nie odkładać tego na później, tyllko zaktualizować fora!

Polski pakiet językowy dla phpBB 3.3.19

Sprawdzenie czy użytkownik zalogowany na nadforum

Pomoc przy instalacji oraz użytkowaniu phpBB 3.2.x. Forum nie służy do zgłaszania znalezionych błędów, innowacji lub problemów związanych ze stylami i rozszerzeniami.
wiessiek
Posty: 1
Rejestracja: 15 marca 2020, 13:58

Sprawdzenie czy użytkownik zalogowany na nadforum

Post autor: wiessiek » 15 marca 2020, 14:27

Cześć
Nietypowa sprawa, i dawno nic nie pisałem w php więć proszę o wyrozumiałość oraz ewentualnie moderatora o przeniesienie tematu do innego działu :)
Forum phpbb 3.2.0 w którym jest utworzony katalog /archiwum i do niego zostało wrzucone stare forum phpbb by przemo w wersji 1.12.9
jedno i drugie samo w sobie działa. Ale chciałbym zrobić tak aby do forum /archiwum mieli dostep tylko osoby które już są zalogowane na forum w wersji 3.2.0 dalej zwanym bazowym, a jeszcze chętniej żeby od razu przenieść zalogowanie do pod-forum.
W danym momencie sprawdzam czy użytkownik jest zalogowany na forum bazowym w pliku /archiwum/index.php przez dodanie na początku pliku

Kod: Zaznacz cały

define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : '../';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
include($phpbb_root_path . 'includes/functions_display.' . $phpEx);

// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup();

if ( $user->data['is_registered'] )
{
//--->>>>>>>>>>>>początek pliku index.php z forum phpbb by przemo<<<<<<---------
//define('IN_PHPBB', true); // juz definiowane wyżej
//$phpbb_root_path = './'; // zmiana root path na to poniżej
$phpbb_root_path = $phpbb_root_path . '/archiwum/';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
include($phpbb_root_path . 'includes/functions_selects.'.$phpEx); 
//--->>>>>>>>>>>>tutaj dalsza część pliku index.php z forum phpbb by przemo<<<<<<---------
}
else 
{
    redirect(append_sid("../index.$phpEx", true));
}
i tutaj mam nastepujące problemy
1. przejscie na stronę /archiwum/index.php jako niezalogowany pamieta tą decyzję i przekierowuje mnie do bazowego forum nawet jeśli się zaloguje i dopiero wyczyszczenie danych w przegladarce pomaga czy da się to jakoś obejść.

2. jak już jestem na podforum jako zalogowany w forum bazowym to dostaje błąd:
Błąd ogólny
Illegal use of $_SERVER. You must use the request class to access input data. Found in /archiwum/common.php on line 117. This error message was generated by deactivated_super_global.
linia 117 wygląda następująco :
$PHP_SELF = ($HTTP_SERVER_VARS['PHP_SELF']) ? $HTTP_SERVER_VARS['PHP_SELF'] : $HTTP_ENV_VARS['PHP_SELF'];

Co robię nie tak z tym logowaniem jakieś sugestie?

3. Czy dało by się zmodyfikować tak podforum żeby przypisać od razu sesję z forum bazowego?

4. Mam też problem z ogonkami ale to pewnie kwestia importowania do bazy danych podczas przenoszenia.

Z góry dzieki za sugestie

ODPOWIEDZ

Wróć do „Użytkowanie”