Usernamen auslesen (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.
-
- Mitglied
- Beiträge: 369
- Registriert: 28.11.2008 20:04
- Wohnort: Hamburg
- Kontaktdaten:
Usernamen auslesen (phpBB3)
Gibt es eine Variable, die den Usernamen ausliest? Ich möchte nämlich zwei Texte anzeigen, den einen wenn ein Gast auf die Seite kommt und
den anderen, wenn ein User auf die Seite kommt.
Welche Variable füge ich in den Text ein, damit dieser den Usernamen anzeigt? Z.B. Hans Müller, es tut mir leid etc.
Damit die ganze Info persönlich klingt.
EDIT: Wie kann man ein Link einfügen in ein Text, sodass er als Link und nicht ab dem "//" als Kommentar angesehen wird?
Zu dem letzten: Gelöst.
Einfach den gesamten Text in der Language-Datei abspeichern und schon kann man ohne Probleme einen Unterschied zwischen Gästen und Usern machen.
Das einzige, was mir noch nicht klar ist, ist wie ich einen Usernamen anzeigen lassen kann. Es gibt zwar schon viele dieser Beiträge zu phpBB2, aber noch keinen zu 3, deswegen bin ich mir nicht sicher, ob die Variablen aus 2 auch für 3 passen.
Bitte um schnelle Antwort.
den anderen, wenn ein User auf die Seite kommt.
Welche Variable füge ich in den Text ein, damit dieser den Usernamen anzeigt? Z.B. Hans Müller, es tut mir leid etc.
Damit die ganze Info persönlich klingt.
EDIT: Wie kann man ein Link einfügen in ein Text, sodass er als Link und nicht ab dem "//" als Kommentar angesehen wird?
Zu dem letzten: Gelöst.
Einfach den gesamten Text in der Language-Datei abspeichern und schon kann man ohne Probleme einen Unterschied zwischen Gästen und Usern machen.
Das einzige, was mir noch nicht klar ist, ist wie ich einen Usernamen anzeigen lassen kann. Es gibt zwar schon viele dieser Beiträge zu phpBB2, aber noch keinen zu 3, deswegen bin ich mir nicht sicher, ob die Variablen aus 2 auch für 3 passen.
Bitte um schnelle Antwort.
- djchrisnet
- Mitglied
- Beiträge: 1275
- Registriert: 29.06.2007 15:52
- Wohnort: Elmshorn
- Kontaktdaten:
- Metzle
- Ehemaliges Teammitglied
- Beiträge: 10435
- Registriert: 08.03.2008 02:50
- Wohnort: Waiblingen-Neustadt
- Kontaktdaten:
Hallo,
zu deiner Umfrage:
schau mal in die Sourcecodedoku von phpBB3.
http://area51.phpbb.com/docs/code/
zu deiner Umfrage:
schau mal in die Sourcecodedoku von phpBB3.
http://area51.phpbb.com/docs/code/
-
- Mitglied
- Beiträge: 369
- Registriert: 28.11.2008 20:04
- Wohnort: Hamburg
- Kontaktdaten:
Ich verstehe nicht so ganz, was ich da finden soll.Metzle hat geschrieben:schau mal in die Sourcecodedoku von phpBB3.
http://area51.phpbb.com/docs/code/
Hier das mit den Variablen wäre ja schön und gut, aber warum funktioniert das hier nicht:
Code: Alles auswählen
include($phpbb_root_path . 'common.' . $phpEx);
require($phpbb_root_path . 'includes/functions_user.' . $phpEx);
// Session auslesen und Benutzer-Informationen laden
$user->session_begin();
$user->setup('mods/error_404_lang');
$auth->acl($user->data);
//Angabe der Userdatenvariable
$name = $user->data['user_id']
//Angezeigte Fehlermeldung
$template->assign_vars(array(
'TEXT' => $user->lang['TEXT']
'BEGRUESSUNG' => $user->lang['BEGRÜßUNG'],
'SEITENNAME' => $user->lang['SEITENNAME']
'USER' => $name
));
//nötige Variablen für Funktion
$beg = $user->lang['BEGRÜßUNG']
$text = $user->lang['TEXT']
//Funktion zum wahlweisen Anzeigen von Text für einen Gast oder User
if ($user->data['user_id'] != ANONYMOUS)
{
print ($name.$beg)
}
else
{
print ($text)
}
- Metzle
- Ehemaliges Teammitglied
- Beiträge: 10435
- Registriert: 08.03.2008 02:50
- Wohnort: Waiblingen-Neustadt
- Kontaktdaten:
Vordefinierte Variablen bspw. bzw Funktionen usw.jimmartens hat geschrieben:Ich verstehe nicht so ganz, was ich da finden soll.Metzle hat geschrieben:schau mal in die Sourcecodedoku von phpBB3.
http://area51.phpbb.com/docs/code/

-
- Mitglied
- Beiträge: 369
- Registriert: 28.11.2008 20:04
- Wohnort: Hamburg
- Kontaktdaten:
Habe eine entsprechende Formel gefunden, aber ich weiß nicht was sie bedeutet:
Muss ich diese Sache einfach eingeben und ich erhalte den Usernamen, oder muss ich noch etwas anderes machen?
Code: Alles auswählen
string get_username_string (string $mode, int $user_id, string $username, [string $username_colour = ''], [string $guest_username = false], [string $custom_profile_url = false])
-
- Mitglied
- Beiträge: 369
- Registriert: 28.11.2008 20:04
- Wohnort: Hamburg
- Kontaktdaten:
Ich habe es z.B. so geschrieben:
$name = $user->data['username']
aber dann kommt immer das Problem, dass er das nicht akzeptiert. Weiß jemand Rat?
EDIT: Habe Problem gelöst, man darf in der php-Datei, keine if-Funktion, die Text anzeigt, verwenden, da dieser sonst über dem Header geschrieben wird. Um den Text nach User und Gast zu differenzieren muss man in der Template Datei folgendes vor den User Text schreiben:
<!-- IF not S_IS_BOT and S_USER_LOGGED_IN -->
Und danach natürlich <!-- ENDIF -->
Das gleiche mit dem Gast-Text nur, dass diesmal das davor kommt:
<!-- IF not S_USER_LOGGED_IN or S_IS_BOT -->
Wenn man das beachtet, zusätzlich zur Sprachdatei, sollte es kein Problem mehr sein eine Seite mit Userabghängigem Text zu schreiben.
Allerdings noch eine andere Frage: Wie kann ich bei dem eigenen Block php anschalten?
$name = $user->data['username']
aber dann kommt immer das Problem, dass er das nicht akzeptiert. Weiß jemand Rat?
EDIT: Habe Problem gelöst, man darf in der php-Datei, keine if-Funktion, die Text anzeigt, verwenden, da dieser sonst über dem Header geschrieben wird. Um den Text nach User und Gast zu differenzieren muss man in der Template Datei folgendes vor den User Text schreiben:
<!-- IF not S_IS_BOT and S_USER_LOGGED_IN -->
Und danach natürlich <!-- ENDIF -->
Das gleiche mit dem Gast-Text nur, dass diesmal das davor kommt:
<!-- IF not S_USER_LOGGED_IN or S_IS_BOT -->
Wenn man das beachtet, zusätzlich zur Sprachdatei, sollte es kein Problem mehr sein eine Seite mit Userabghängigem Text zu schreiben.
Allerdings noch eine andere Frage: Wie kann ich bei dem eigenen Block php anschalten?
http://wiki.phpbb.com kennst Du schon?
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Ich schmeiß' alles hin und...
... lasse es liegen
- djchrisnet
- Mitglied
- Beiträge: 1275
- Registriert: 29.06.2007 15:52
- Wohnort: Elmshorn
- Kontaktdaten:
include($phpbb_root_path . 'common.' . $phpEx);
require($phpbb_root_path . 'includes/functions_user.' . $phpEx);
// Session auslesen und Benutzer-Informationen laden
$user->session_begin();
$user->setup('mods/error_404_lang');
$auth->acl($user->data);
//Angabe der Userdatenvariable
$name = $user->data['user_id'];
//Angezeigte Fehlermeldung
$template->assign_vars(array(
'TEXT' => $user->lang['TEXT'],
'BEGRUESSUNG' => $user->lang['BEGRÜßUNG'], //<<<<<<< verwende wo du nur kannst bitte keine Üß nutze eher ss und ue
'SEITENNAME' => $user->lang['SEITENNAME'],
'USER' => $name,
));
//nötige Variablen für Funktion
$beg = $user->lang['BEGRÜßUNG'];
$text = $user->lang['TEXT'];
//Funktion zum wahlweisen Anzeigen von Text für einen Gast oder User
if ($user->data['user_id'] != ANONYMOUS)
{
print ($name.$beg);
}
else
{
print ($text);
}