Interner Bereich mit Benutzerdaten von PHPBB3
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Hallo Kizu,
ich habe erst vor kurzem ein Beispiel hier gepostet, wie ein Counter eingebunden wird. Daraus kannst du gut erkennen, wie das mit den php, Template und Sprachdateien geht. Die deutsche Anleitung für eingebundene Seiten gibt es hier zu lesen.
Gruß Helmut
ich habe erst vor kurzem ein Beispiel hier gepostet, wie ein Counter eingebunden wird. Daraus kannst du gut erkennen, wie das mit den php, Template und Sprachdateien geht. Die deutsche Anleitung für eingebundene Seiten gibt es hier zu lesen.
Gruß Helmut

Ich bin nicht ganz dicht.... na und.
Die anleitung hats gebracht. danke. bei dieser hier war nähmlich gar nicht von der lang-Datei die Rede. Somit funktioniert jetzt auch fast alles.
Wenn ich nähmlich mit einem User auf die Seite gehe, der nicht in der Gruppe ist, wird trotzdem der HTML-Code angezeigt der für die Gruppenmitglieder angezeigt werden soll.
hier:
http://seriuskoesehome.se.funpic.de/intern/index.php
Benutzername: test
Passwort: testpass1
(der ist nicht in der Gruppe mit der ID 28)
Hier die Datei:
http://seriuskoesehome.se.funpic.de/intern/index.txt
hier habe ich die Template-Datei:
http://seriuskoesehome.se.funpic.de//in ... n.html.txt
Wenn ich nähmlich mit einem User auf die Seite gehe, der nicht in der Gruppe ist, wird trotzdem der HTML-Code angezeigt der für die Gruppenmitglieder angezeigt werden soll.
hier:
http://seriuskoesehome.se.funpic.de/intern/index.php
Benutzername: test
Passwort: testpass1
(der ist nicht in der Gruppe mit der ID 28)
Hier die Datei:
http://seriuskoesehome.se.funpic.de/intern/index.txt
hier habe ich die Template-Datei:
http://seriuskoesehome.se.funpic.de//in ... n.html.txt
Zuletzt geändert von Kizu am 24.03.2008 00:01, insgesamt 2-mal geändert.
Hallo Kizu,
ich habe die Abfrage für die Berechtigung mit den Code von Dr.Death gemacht und am Ende der funktions.php eingebunden, das funktioniert einwandfrei. Dann müsste deine intern/index.php etwa so aussehen:
In deine Sprachdatei oder in die language/de/common.php
kommt dan der Text für die Meldungen rein.
Damit müsstest du eigentlich klar kommen.
Gruß Helmut
ich habe die Abfrage für die Berechtigung mit den Code von Dr.Death gemacht und am Ende der funktions.php eingebunden, das funktioniert einwandfrei. Dann müsste deine intern/index.php etwa so aussehen:
Code: Alles auswählen
<?php
define('IN_PHPBB', true); // we tell the page that it's going to be using phpBB, this is important.
$phpbb_root_path = './../'; // See phpbb_root_path documentation
$phpEx = substr(strrchr(__FILE__, '.'), 1); // Set the File extension for page-wide usage.
include($phpbb_root_path . 'common.' . $phpEx); // include the common.php file, this is important, especially for database connects.
//Start session management -- This will begin the session for the user browsing this page.
$user->session_begin();
$auth->acl($user->data);
$user->setup();
if ($user->data['user_id'] == ANONYMOUS)
{
login_box();
}
// Die zu prüfenden Gruppen IDs müssen mit Komma getrennt eingetragen werden
$check_group = "5";
$is_in_group = get_group_auth($check_group);
// Wenn der User in dieser Gruppe ist, liefert die Funktion den Wert TRUE zurück.
if ($is_in_group == true)
{
// Teile dem Template System mit, das die Variable "S_IN_GROUP" den Wert TRUE bekommt
// In der html Datei kann mit <!-- IF S_IN_GROUP --> und <!-- ENDIF --> ein Bereich markiert werden.
$template->assign_var('S_IN_GROUP', true);
}
else
{
trigger_error($user->lang['NOT_AUTORIZED'] . '<br /><br />' . sprintf($user->lang['BACK_TO'], '<a href="' . append_sid("{$phpbb_root_path}" . 'index.' . $phpEx) . '">', '</a>', '<a href="' . append_sid("{$phpbb_root_path}" . 'ucp.' . $phpEx . '?mode=login') . '">', '</a>'));
}
/*-----------------------------------------*/
//Hier kommt dein weiterer Code rein
/*-----------------------------------------*/
// Output the page
page_header($user->lang['PAGE_INTERN']); // Page title, this language variable should be defined in the language file you setup at the top of this page.
// Set the filename of the template you want to use for this file.
$template->set_filenames(array(
'header' => 'overall_header.html',
'body' => 'intern.html',
));
// Finish the script, display the page
page_footer();
?>
kommt dan der Text für die Meldungen rein.
Code: Alles auswählen
'NOT_AUTORIZED' => 'Du bist nicht berechtigt, den internen Bereich zu betreten. Dieser Bereich kann nur von registrierten und eingeloggten Mitgliedern mit entsprechender Berechtigung betreten werden.',
'BACK_TO' => 'Zurück zum %1sForum%1s, oder gehe zur %2sLogin Seite%2s, um dich einloggen zu können.',
'PAGE_INTERN' => 'Interne Seite',
Gruß Helmut

Ich bin nicht ganz dicht.... na und.
funktioniert jetzt. danke. nur kommt bei der Fehlermeldung folgendes:
den Switsh habe ich auch in der overall Header eingesetzt:
allerdings wird im header das hier angezeigt:
warum kommen denn da Fragezeichen??? (hab die Seite mit Firefox geöffnet)Zur?ck zum Forum, oder gehe zur Login Seite, um dich einloggen zu k?nnen.
den Switsh habe ich auch in der overall Header eingesetzt:
Code: Alles auswählen
<!-- IF not S_IS_BOT and S_USER_LOGGED_IN -->
<ul class="linklist leftside">
<li class="icon-ucp">
<a href="{U_PROFILE}" title="{L_PROFILE}" accesskey="u">{L_PROFILE}</a>
<!-- IF S_DISPLAY_PM --> (<a href="{U_PRIVATEMSGS}">{PRIVATE_MESSAGE_INFO}</a>)<!-- ENDIF --> •
<a href="{U_SEARCH_SELF}">{L_SEARCH_SELF}</a>
<!-- IF U_RESTORE_PERMISSIONS --> •
<a href="{U_RESTORE_PERMISSIONS}">{L_RESTORE_PERMISSIONS}</a>
<!-- ENDIF -->
<!-- IF S_IN_GROUP -->
•<a href="http://seriuskoesehome.se.funpic.de/intern/index.php" title="">Interner Bereich</a>
<!-- ELSE -->
•
<!-- ENDIF -->
</li>
</ul>
<!-- ENDIF -->
warum wird der switsh als falsch erkannt?Persönlicher Bereich (1 neue Nachricht) • Eigene Beiträge •
- gn#36
- Ehrenadmin
- Beiträge: 9313
- Registriert: 01.10.2006 16:20
- Wohnort: Ganz in der Nähe...
- Kontaktdaten:
Zum Fragezeichen: Dein Editor muss das Format UTF8 ohne BOM wählen damit diese Fragezeichen nicht angezeigt werden. Also Datei noch mal bearbeiten und in UTF8 abspeichern.
Damit du das in jeder beliebigen Datei machen kannst, musst du das in der functions.php in der page_header Funktion einbauen (also die Gruppenprüfung und das setzen des Template Switches).
Damit du das in jeder beliebigen Datei machen kannst, musst du das in der functions.php in der page_header Funktion einbauen (also die Gruppenprüfung und das setzen des Template Switches).
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Hallo Kizu,
wenn du die Abfrage in die funktions.php einbaust, dann solltest du dort den Teil mit der Fehlermeldung weglassen und nur das hier einbauen, sonst kommt diese Meldung bei jeder Seite auch im Forum. In deiner intern.php würde ich die Fehlermeldung drinnen lassen, falls jemand die Seite vom Browser aus direkt aufruft.
Die Abfrage solltest du vor // The following assigns all _common_ variables that may be used at any point in a template. einbauen.
Gruß Helmut
wenn du die Abfrage in die funktions.php einbaust, dann solltest du dort den Teil mit der Fehlermeldung weglassen und nur das hier einbauen, sonst kommt diese Meldung bei jeder Seite auch im Forum. In deiner intern.php würde ich die Fehlermeldung drinnen lassen, falls jemand die Seite vom Browser aus direkt aufruft.
Code: Alles auswählen
// Die zu prüfenden Gruppen IDs müssen mit Komma getrennt eingetragen werden
$check_group = "5";
$is_in_group = get_group_auth($check_group);
// Wenn der User in dieser Gruppe ist, liefert die Funktion den Wert TRUE zurück.
if ($is_in_group == true)
{
// Teile dem Template System mit, das die Variable "S_IN_GROUP" den Wert TRUE bekommt
// In der html Datei kann mit <!-- IF S_IN_GROUP --> und <!-- ENDIF --> ein Bereich markiert werden.
$template->assign_var('S_IN_GROUP', true);
}
Gruß Helmut
Ich bin nicht ganz dicht.... na und.