To jest tylko wersja do druku, aby zobaczyć pełną wersję tematu, kliknij TUTAJ
phpBB2 by Przemo
Support forów phpBB2 modified by Przemo

Ogólna pomoc dotycząca stylów - Czysta podstrona w stylu forum

strus - 16-05-2008, 19:09
Temat postu: Czysta podstrona w stylu forum
Albo zle szukam albo to ktos usunal :) Jestem niemalze pewny ze kiedys ktos o to pytal..
Jak zrobic czysta podstrone na forum, w stylu forum ? Tak aby na tej stronie mozna zaincludowac jakis plik i zeby to wygladalo jak jedna z podstron forum.

n!ck - 16-05-2008, 20:40

To jest modyfikacja nazywa się InfoPage, a tutaj masz link:
Kod:
http://www.przemo.org/phpBB2/forum/viewtopic.php?t=28876

strus - 16-05-2008, 23:19

Wiem, ja bardziej myslalem o zwyklym pliku php w ktorym moge zaincludowac inny plik php nie zwiazany z forum (jedynie pobiera login i haslo z bazy forum). Na infopage nie da sie includowac :)
joli - 16-05-2008, 23:30

Tworzysz plik php:
Kod:
<?php

define('IN_PHPBB', true);
define('ATTACH', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_REG);
init_userprefs($userdata);
//
// End session management
//

if ( $board_config['login_require'] && !$userdata['session_logged_in'] )
{
    $message = $lang['login_require'] . '<br /><br />' . sprintf($lang['login_require_register'], '<a href="' . append_sid("profile.$phpEx?mode=register") . '">', '</a>');
    message_die(GENERAL_MESSAGE, $message);
}

// Set vars to prevent naughtiness
$reg = array();



//
// Lets build a page ...
//
$page_title = $l_title;
include($phpbb_root_path . 'includes/page_header.'.$phpEx);

$template->set_filenames(array(
    'body' => 'plik.tpl')
);


$template->pparse('body');

include($phpbb_root_path . 'includes/page_tail.'.$phpEx);

?>
wrzucasz go do glownego katalogu forum, do niego dorabiasz plik tpl o nazwie plik.tpl, zawierajacy to, co chcesz tam miec wewnatrz (pomiedzy naglowkiem i stopka,) i ziu....

jangcy - 11-02-2019, 22:54

Witam

Do czego służy ten fragment?

Cytat:
if ( $board_config['login_require'] && !$userdata['session_logged_in'] )
{
$message = $lang['login_require'] . '<br /><br />' . sprintf($lang['login_require_register'], '<a href="' . append_sid("profile.$phpEx?mode=register") . '">', '</a>');
message_die(GENERAL_MESSAGE, $message);
}


Myślałem że sprawdza czy użytkownik jest zalogowany, ale strona się odpala dla zalogowanych i niezalogowanych

Dzięki za info.

xlesiu - 11-02-2019, 23:03

jangcy, a jak masz ustawione w PA- Ogólne - Konfiguracja - Dodatkowe
Restrykcja dostępu dla niezarejestrowanych
Niezarejestrowani użytkownicy nie mogą przeglądać listy użytkowników i profilów Tak Nie
Restrykcja całkowita dostępu dla niezarejestrowanych
Niezarejestrowani użytkownicy nie mogą w ogóle przeglądać żadnej części forum

jangcy - 11-02-2019, 23:15

Witam

Mam ustawione tę opcję:
"Restrykcja dostępu dla niezarejestrowanych
Niezarejestrowani użytkownicy nie mogą przeglądać listy użytkowników i profilów"

Czyli po wylogowaniu i kliknięciu na np "użytkownicy" mam taki komunikat:

"Dostęp do tej części forum wymaga zalogowania się.
Jeżeli nie jesteś jeszcze zarejestrowany, kliknij Tutaj żeby przejść do formularza rejestracyjnego."

xlesiu - 11-02-2019, 23:27

Sprawdź możliwość wejścia na nową stronę przy rożnych ustawieniach tak/nie przy "Restrykcja całkowita dostępu dla niezarejestrowanych".
jangcy - 12-02-2019, 00:03

Przy całkowitej restrykcji dla niezarejestrowanych dostęp do tej strony jest również zablokowany, natomiast przy częściowej strona jest widoczna. (np regulamin był widoczny nawet przy całkowitej restrykcji). Także ten kod działa, tylko nie tak jak potrzebuje.
xlesiu - 12-02-2019, 00:05

Jeżeli chcesz wymagać zalogowania niezależnie od zaznaczonych opcji w PA to może spróbuj usunąć
Kod:
$board_config['login_require'] &&

jangcy - 12-02-2019, 10:37

xlesiu napisał/a:
Jeżeli chcesz wymagać zalogowania niezależnie od zaznaczonych opcji w PA to może spróbuj usunąć
Kod:
$board_config['login_require'] &&

xlesiu jesteś wielki. Dzięki

[ Dodano: 12-02-2019, 10:55 ]
Dzięki pomocy kolegów a w szczególności kolegi xlesiu
pomyślałem że wkleję kody do 3 wersji takiej strony. Pamiętajcie że trzeba stworzyć plik tpl (np z kodem html),
podmienić nazwę tu:
Kod:
    'body' => 'nazwa_body.tpl')
oraz umieści plik ten w /templates/NAZWA STYLU/plik.tpl.
Plik .php umieszczamy w katalogu głównym

Kod własnej strony.php dostępnej dla każdego (zalogowani i niezalogowani) - niezależnie od ustawień restrykcji dostępu w PA
Kod:
<?php
define('IN_PHPBB', true);
define('ATTACH', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
//
// End session management
//
$page_title = 'Inne';
include($phpbb_root_path . 'includes/page_header.'.$phpEx);

$template->set_filenames(array(
    'body' => 'nazwa_body.tpl')
);

$template->pparse('body');
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
?>


Kod własnej strony.php dostępnej zalogowanych - jeżeli w PA restrykcja całkowita dla niezalogowanych jest ustawiona na TAK:
Kod:
<?php

define('IN_PHPBB', true);
define('ATTACH', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_REG);
init_userprefs($userdata);
//
// End session management
//

if ( $board_config['login_require'] && !$userdata['session_logged_in'] )
{
    $message = $lang['login_require'] . '<br /><br />' . sprintf($lang['login_require_register'], '<a href="' . append_sid("profile.$phpEx?mode=register") . '">', '</a>');
    message_die(GENERAL_MESSAGE, $message);
}

// Set vars to prevent naughtiness
$reg = array();

//
// Lets build a page ...
//
$page_title = $l_title;
include($phpbb_root_path . 'includes/page_header.'.$phpEx);

$template->set_filenames(array(
    'body' => 'nazwa_body.tpl')
);

$template->pparse('body');

include($phpbb_root_path . 'includes/page_tail.'.$phpEx);

?><?php
define('IN_PHPBB', true);
define('ATTACH', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
//
// End session management
//
$page_title = 'Inne';
include($phpbb_root_path . 'includes/page_header.'.$phpEx);

$template->set_filenames(array(
    'body' => 'nazwa_body.tpl')
);

$template->pparse('body');
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
?>


Kod własnej strony.php dostępnej zalogowanych - nawet jeżeli w PA restrykcja całkowita dla niezalogowanych jest ustawiona na NIE:
Kod:
<?php

define('IN_PHPBB', true);
define('ATTACH', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_REG);
init_userprefs($userdata);
//
// End session management
//

if ( !$userdata['session_logged_in'] )
{
    $message = $lang['login_require'] . '<br /><br />' . sprintf($lang['login_require_register'], '<a href="' . append_sid("profile.$phpEx?mode=register") . '">', '</a>');
    message_die(GENERAL_MESSAGE, $message);
}

// Set vars to prevent naughtiness
$reg = array();

//
// Lets build a page ...
//
$page_title = $l_title;
include($phpbb_root_path . 'includes/page_header.'.$phpEx);

$template->set_filenames(array(
    'body' => 'nazwa_body.tpl')
);

$template->pparse('body');

include($phpbb_root_path . 'includes/page_tail.'.$phpEx);

?>


W załaczniku wszystkie 3 pliki + plik .tpl

[ Dodano: 15-02-2019, 19:41 ]
Sprawdzając pliki np "grupy" zauważyłem, że efekt dostępu tylko dla zalogowanych można jeszcze osiągnąć poprzez użycie dłuższego kodu
Kod:
if ( $board_config['login_require'] && !$userdata['session_logged_in'] || ( $board_config['crestrict'] && !$userdata['session_logged_in'] ) )

wówczas dostęp będzie zależny od ustawień częściowej restrykcji dla niezalogowanych w PA.
Sugestia xlesiu powoduje że niezależnie od powyższych ustawień strona będzie dostępna tylko dla zalogowanych (czyli opcja preferowana przeze mnie:)

PS
A idąc za ciosem, czy ktoś wie jak ograniczyć dostęp (w moim przypadku do Download) tylko dla jednej grupy (lub kilku grup).
Chciałbym żeby zwykli użytkownicy nie mogli ściągać plików, tylko grupa o dodatkowych prawach. Ktoś może próbował takiej opcji?

xlesiu - 15-02-2019, 21:52

Stare rozwiązanie i nie wiem czy działa http://przemo.org/phpBB2/...pic.php?t=91178
jangcy - 15-02-2019, 23:15

Dzięki. Sprawdzę.

[ Dodano: 16-02-2019, 11:29 ]
Spróbowałem, ale tak jak pisał ktoś w tym wątku, niestety nie działa.
Ale co ciekawe. Jak wpisałem grupę 1 (u mnie to anonymous) co wnioskuje że jest grupą niezalogowanych, to można było wejść na download bez logowania, a nie można było po zalogowaniu.
Więc może kierunek jest dobry, tylko gdzieś jest błąd.



Powered by phpBB modified by Przemo © 2003 phpBB Group