inloggen site koppelen aan userlist phpBB
Forumregels
Sinds 1 januari 2009 wordt phpBB2 niet meer ondersteund.
Onderstaande informatie is verouderd en dient uitsluitend als archief.
Sinds 1 januari 2009 wordt phpBB2 niet meer ondersteund.
Onderstaande informatie is verouderd en dient uitsluitend als archief.

inloggen site koppelen aan userlist phpBB
Hoi, ik heb op mijn site een beveiligd gedeelte voor leden. Ook heb ik het phpBB forum op de site, mijn vraag is nu of het mogelijk is de userlist van phpBB te gebruiken voor de beveiliging van de site. Nu werk ik voor de beveiliging van de site met htaccess, maar moeten de leden dubbel inloggen als ze vanuit het beveiligde gedeelte op het forum willen.
Ik hoop dat er een niet al te ingewikkelde oplossing is, alvast bedankt !
Ik hoop dat er een niet al te ingewikkelde oplossing is, alvast bedankt !
- WebSiteNet
- Berichten: 6524
- Lid geworden op: 20 okt 2003, 16:56
- Locatie: Wieringerwerf
- Contacteer:
Het hoeft ook niet persé gekoppeld te worden aan htaccess, ik betwijfel ook of dat wel kan. Ik heb niet veel verstand van php maar ik kan het natuurlijk altijd proberen. Als ik het login systeem koppel aan de mysql tabel van phpbb, kan ik dit dan ook koppelen aan een gebruikersgroep, want ik heb namelijk een private forum voor leden maar verder is het forum openbaar en die mensen mogen niet inloggen op het gedeelte van de site.
- WebSiteNet
- Berichten: 6524
- Lid geworden op: 20 okt 2003, 16:56
- Locatie: Wieringerwerf
- Contacteer:
- WebSiteNet
- Berichten: 6524
- Lid geworden op: 20 okt 2003, 16:56
- Locatie: Wieringerwerf
- Contacteer:
Zou iemand bij kunnen helpen met het maken dan wel aanpassen van een login script ? Ik snap nog niet zoveel van php code en al helemaal niet van een database. Als het zo mogelijk is, wil ik een loginpagina maken waar alleen mensen van een bepaalde gebruikersgroep kunnen inloggen, gebruikmakend van de database gegevens van phpBB. Na het inloggen moeten de bezoekers worden doorverwezen naar een html pagina.
Ik hoop dat er iemand is die wil helpen.
Ik hoop dat er iemand is die wil helpen.
Code: Selecteer alles
<?php
# waar gaat een succesvolle inlog heen?
$secure_page = '';
# welke groep mag erin?
$secure_group = 0;
define('IN_PHPBB', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
//
// Set page ID for session management
//
$userdata = session_pagestart($user_ip, PAGE_LOGIN);
init_userprefs($userdata);
//
// End session management
//
if( $userdata['session_logged_in'] )
{
$sql = "SELECT g.group_id
FROM " . GROUPS_TABLE . " g, " . USER_GROUP_TABLE . " ug
WHERE g.group_id = " . $secure_group . "
AND g.group_id = ug.group_id
AND g.group_single_user = 0
AND ug.user_id = " . $userdata['user_id'] . "
AND ug.user_pending = 0;";
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Error in obtaining group data', '', __LINE__, __FILE__, $sql);
}
if( $row = $db->sql_fetchrow($result) || $userdata['user_level'] == ADMIN )
{
redirect(append_sid($secure_page, true));
}
else
{
redirect(append_sid("index.$phpEx", true));
}
}
else
{
redirect(append_sid("login.$phpEx?redirect=secure.php", true));
}
?>
Wauw! Toppie een compleet script nog wel en het werkt perfect, precies wat mijn bedoeling was 8) . Heel erg bedankt mosymuis :thumb:
.
Nog een klein vraagje wat betreft dit script. Is het mogelijk een andere opmaak van de pagina (secure.php) te maken, alleen het logingedeelte en verder niet het forum eromheen ? Of wordt dat te ingewikkeld ?

Nog een klein vraagje wat betreft dit script. Is het mogelijk een andere opmaak van de pagina (secure.php) te maken, alleen het logingedeelte en verder niet het forum eromheen ? Of wordt dat te ingewikkeld ?

De grap is dat deze pagina helemaal geen layout heeft, maar gebruik maakt van je bestaande login.php. De layout is dus niet aan te passen, tenzij je een kopie van login.php gaat verwerken in secure.php en daar de layout in verandert.
Overigens, als men het adres van je geheime pagina kent is dit script waardeloos.
Overigens, als men het adres van je geheime pagina kent is dit script waardeloos.
Ok dan ga ik dat eens proberen.
Als men het adres kent kan men inderdaad op de beveiligde pagina komen, maar het is toch mogelijk doormiddel van een stukje code op de beveiligde pagina te controleren of men is ingelogd ? Als je op het forum naar bv. profiel gaat dan kan je daar ook niet opkomen, tenzij je bent ingelogd, klopt dat ? En welk script zou dat kunnen zijn, of waar kan ik het vinden ?
Als men het adres kent kan men inderdaad op de beveiligde pagina komen, maar het is toch mogelijk doormiddel van een stukje code op de beveiligde pagina te controleren of men is ingelogd ? Als je op het forum naar bv. profiel gaat dan kan je daar ook niet opkomen, tenzij je bent ingelogd, klopt dat ? En welk script zou dat kunnen zijn, of waar kan ik het vinden ?
behalve als je van dit script een pagina maakt, hij controleert dan of je in die usergroup zit, zo ja, hij laat de pagina zien, zo nee, je moet inloggen of je wordt doorverwezenmosymuis schreef:De grap is dat deze pagina helemaal geen layout heeft, maar gebruik maakt van je bestaande login.php. De layout is dus niet aan te passen, tenzij je een kopie van login.php gaat verwerken in secure.php en daar de layout in verandert.
Overigens, als men het adres van je geheime pagina kent is dit script waardeloos.

inderdaad, maar als je in plaats van
erneer zet kan je de informatie nooit zien als je niet in die group zit.
Code: Selecteer alles
if( $row = $db->sql_fetchrow($result) || $userdata['user_level'] == ADMIN )
{
redirect(append_sid($secure_page, true));
}
Code: Selecteer alles
if( $row = $db->sql_fetchrow($result) || $userdata['user_level'] == ADMIN )
{
?>
<html>
blabla
</html>
<?php
}
Ja, dat bedoelde ik dus ook met deze post:
De reden dat ik dat niet direct zo gedaan heb is dat MrX wou doorverwijzen naar een HTML pagina.mosymuis schreef:Op PHP pagina's heb je geen doorverwijs pagina nodig, daar plaats je gewoon overal de bovenstaande controle om te bekijken of diegene wel in de juiste groep zit.
Verander
naar
Code: Selecteer alles
$phpbb_root_path = './';
Code: Selecteer alles
$phpbb_root_path = './../';