Na začátek, jsou dvě takové "podmínky" pro správný chod takto upravených fór, první, že budete muset založit fóra nová, popř. k jednomu fóru přidávat další nová, nelze(resp. lze, ale jsou k tomu potřeba pokročilejší znalosti databází) sloučit dvě fóra dohromady. A druhá je ta, že fóra musejí být umístěny na stejné doméně(lze mít různé subdomény), jinak nebude fungovat sdílené přihlášení. Požadavky máme za sebou, ukažme si samotný postup:
Krok 1
Nainstalujte fóra, která budou součástí vašeho komplexu do stejné databáze, ale odlište je předponami tabulek, v našem příkladu to budou hlavni_, vedlejsi1_, vedlejsi2_, vedlejsiN_.
Krok 2
Nyní si vyberte, které z nainstalovaných fór bude hlavní, a u kterých upravíme tabulky pro uživatele(to bude další krok), u nás je to logicky, fórum s databází hlavni_
Krok 3
U naší "hlavní" instalace budeme muset upravit, konkrétně přejmenovat" čtyři tabulky, a to hlavni_users, hlavni_user_group, hlavni_groups a hlavni_sessions, viz. SQL příkaz pro ulehčení :o):
Kód: Vybrat vše
ALTER TABLE hlavni_users RENAME users;
ALTER TABLE hlavni_user_group RENAME user_group;
ALTER TABLE hlavni_groups RENAME groups;
ALTER TABLE hlavni_sessions RENAME sessions;
Krok 4
Tento krok je volitelný, jeho účelem je zpřehlednit už tak plnou databázi. Tento krok udělejte pro každou "vedlejší" instalaci. Smaž již nepotřebné tabulky uživatele, opět je tu SQL kód:
Kód: Vybrat vše
DROP TABLE vedlejsi1_users;
DROP TABLE vedlejsi1_user_group;
DROP TABLE vedlejsi1_groups;
DROP TABLE vedlejsi1_sessions;
Tento krok je nutný učinit u všech instalací, otevřete soubor includes/constnants.php a u těchto řádků:
Kód: Vybrat vše
define('GROUPS_TABLE', $table_prefix.'groups');
define('USER_GROUP_TABLE', $table_prefix.'user_group');
define('USERS_TABLE', $table_prefix.'users');
define('SESSIONS_TABLE', $table_prefix.'sessions');
Kód: Vybrat vše
define('GROUPS_TABLE', 'groups');
define('USER_GROUP_TABLE', 'user_group');
define('USERS_TABLE', 'users');
define('SESSIONS_TABLE', 'sessions');
Nyní musíme nastavit cookies na fórech, protože fóra sdílí i tabulku se sessions, takže když budete přihlášeni na jednom fóru, tak budete i na ostatních, cookies se nastavují v administraci, přesněji v Konfiguraci, dole. My budeme upravovat doménu(adresu) cookie, ta musí být nastavena na společnou část URL všech fór, takže např. máme fóra forum1.phpbb.cz/, forum2.phpbb.cz/ atd... tak bude cookie nastavena na phpbb.cz, cestu ke cookie je bezpečné nastavit na '/'
Dodatek
Na konec ještě připojím pár poznámek, na začátku jsem říkal, že fóra musejí být na stejné doméně, je možné je mít na jiných, jen nepude sdílené přihlášení, v tomto případě byste neupravovaly žádné cookies, a neupravovaly byste tabulku hlavni_sessions, potažmo vedlejsiN_sessions, toto rovněž můžete udělat pokud byste i přesto, že jsou fóra na stejné doméně, ale nefunguje přihlášení. Pokud byste našli nějaké chyby v článku, máte místo v komentářích, nebo na fóru v Diskuzi.
Ameeck