Seite 1 von 1

[3.3] IF Variabel Unterschied

Verfasst: 24.05.2020 02:09
von chris1278
Ich hätte mal eine Frage. Worin liegt der Unterschied zwischen

<!-- IF S_USER_LOGGED_IN -->

und

<!-- IF S_REGISTERED_USER -->

Für mich prüft beides das Gleiche ab. Weil einloggen kann man, nur wenn man registriert ist.

Re: [3.3] IF Variabel Unterschied

Verfasst: 24.05.2020 03:07
von vfrblue
Da gibt es Unterschiede.
<!-- IF S_USER_LOGGED_IN --> bedeutet, dass der User momentan eingeloggt sein muss.

<!-- IF S_REGISTERED_USER --> bedeutet, dass es registrierte User sein müssen.

https://wiki.phpbb.com/Global_Template_Variables

Re: [3.3] IF Variabel Unterschied

Verfasst: 24.05.2020 04:09
von chris1278
Klar das hab ich schon so verstanden.

Die Frage ist aber warum gerade doppelt. Weil ohne Registrierung kein einloggen und kein einloggen ohne Registrierung. Daher läuft nach meiner Ansicht beides auf dasselbe raus. Heißt 2 Variablen mit der gleichen Wirkung.

Re: [3.3] IF Variabel Unterschied

Verfasst: 24.05.2020 07:59
von Kirk
Hallo
Hier findest du die Erklärung: http://phpbb3-support.square7.ch/viewto ... f=11&t=302

Re: [3.3] IF Variabel Unterschied

Verfasst: 24.05.2020 12:31
von LukeWCS
Da es bei der Template Sprache - insbesondere bei Twig - um Programmierung geht, passt das in der Bastelstube besser.
chris1278 hat geschrieben: 24.05.2020 02:09 Für mich prüft beides das Gleiche ab. Weil einloggen kann man, nur wenn man registriert ist.
chris1278 hat geschrieben: 24.05.2020 04:09 Weil ohne Registrierung kein einloggen und kein einloggen ohne Registrierung.
Deine Gedankengänge sind schon richtig. Die offizielle Doku ist in dem Fall bei S_REGISTERED_USER nicht selbsterklärend, da ist Mahonys Auflistung schon hilfreicher. Insbesondere die folgende Erklärung, das Wichtige ist dabei unterstrichen:
<!-- IF S_REGISTERED_USER --> Wenn der Benutzer angemeldet/eingeloggt ist und kein Bot
Das Ganze wird erst verständlich, wenn man noch eine dritte Variable dazunimmt: S_IS_BOT.

S_USER_LOGGED_IN: ist 1 (TRUE), wenn der aktuelle "Benutzer" kein Gast (sondern Benutzer oder Bot) ist. Ansonsten leer (FALSE).
S_REGISTERED_USER: ist 1 (TRUE), wenn der aktuelle "Benutzer" ein registriertes Mitglied ist (kein Bot). Ansonsten leer (FALSE).
S_IS_BOT: ist 1 (TRUE), wenn der aktuelle "Benutzer" ein Bot ist (kein registriertes Mitglied). Ansonsten leer (FALSE).

Ergänzung: Auch ein Bot ist grundsätzlich ein angemeldeter "Benutzer" für phpBB, denn auch für Bots gibt es Accounts. Der Unterschied ist nur: ein registriertes Mitglied (also ein Mensch) muss sich mit Benutzername und Passwort anmelden. Ein Bot wird anhand seiner Kennung automatisch "angemeldet".

Re: [3.3] IF Variabel Unterschied

Verfasst: 24.05.2020 12:50
von chris1278
OK Luke mit deiner Erklärung kann ich jetzt was anfangen. Und ja dann ergibt es einen Sinn mit beiden Variablen.

Danke jetzt hab ich das Verstanden.