Seite 2 von 2

Re: [3.3] $_GET im Template abfragen

Verfasst: 17.07.2020 13:14
von serpent_driver
oxpus hat geschrieben: 17.07.2020 13:04
serpent_driver hat geschrieben: 17.07.2020 12:32 Verzeih mir bitte Kritik, aber für so was eigentlich essentielles wie die Abfrage von $_GET extra eine Extension schreiben zu müssen, fehlt mir jeder Bezug. [...]
Öhm, mir fehlt das Verständnis nach einem Anwendungsfall, warum $_GET direkt im Template abgefragt werden sollte.
Zumal die direkte Verwendung von $_POST und $_GET sowie anderer Super Globals aus gutem Grund durch das phpBB im Standard unterbunden werden, egal ob bei der Verwendung im Template oder in einem PHP Script.
Was phpBB anbetrifft mag das sicherlich der Fall sein. Um ein tieferes Verständnis dafür zu bekommen, warum es aber trotzdem und vorzugsweise im Template braucht, bräuchte es ein tieferes Verständnis über ESI, aber das würde zu weit führen, weil ich gar nicht wüsste wo ich da anfangen soll, um zu vermeiden, dass daraufhin nicht 1000 Rückfragen kommen. Vor dem Hintergrund, dass Super Globals standardmäßig in phpBB unterbunden sind, kann ich aber reproduzieren, warum mein Bedarf so exotisch klingen mag.

Ich schau mir Deinen Schnipsel mal an. Vielen DanK dafür!

Die Handhabe von ESI bei Symfony ist fixiert auf <esi:include>, aber nicht <esi:inline>, wobei letzteres weit aus flexibler in der Handhabe ist. Javascript funktioniert in diesem Zusammenhang nicht.

Re: [3.3] $_GET im Template abfragen

Verfasst: 17.07.2020 14:41
von oxpus
Nun, mit Javascript könntest Du $_GET auslesen, welches in der Regel die URL der aufgerufenen Seite beinhaltet.
Da du $_GET im Template haben wolltest, wäre das also ein gangbarer Weg als Alternative zu einem zusätzlichen PHP Script im Forum.

Ansonsten wäre die Verwendung von ESI-Elementen in einem phpBB-Template für mich weiterhin weniger sinnvoll, da man dieses (in wesentlichen sind das Lastverteilungen durch dynamisch geladene Elemente) auch anderweitig im phpBB darstellen; im Extremfall auch über Servergrenzen hinweg, was allerdings wiederum erhöhte Sicherheitsrisiken darstellen kann.

Wie gesagt:
Solange du dich im phpBB bewegst, werden die Elemente der Forum-Seiten bereits dynamisch zusammengebaut.
Dazu kann man auch serverseitig auch einiges dafür tun, was ansonsten ESI erledigen soll.
Aber das ist alles Geschmacksache.

Empfehlen, $_GET direkt im phpBB Template zu nutzen, kann man jedoch absolut nicht, ohne die Sicherheit der eigenen Webseite damit zu gefährden.

Re: [3.3] $_GET im Template abfragen

Verfasst: 17.07.2020 15:07
von serpent_driver
Ich verstehe natürlich die Bedenken, kein Thema. Aber wüsstest Du die näheren Zusammenhänge, was es im konkreten Fall mit ESI auf sich hat, wärst Du vielleicht, ich betone vielleicht, auch bereit in eine andere Richtung zu denken. Vieles würde sicherlich klarer werden, wenn ich die Zusammenhänge beschreiben würde, aber das würde erstens den Rahmen sprengen und zweitens ich dann etwas preisgeben müsste, was mir 6 Monate Arbeit gekostet hat. ESI an sich ist vergleichsweise simple, jedoch in dem Zusammenhang wie und wofür und für was ich ESI benötige ist so exotisch, dass ich glaube behaupten zu können, dass das so noch nie angewendet wurde. Es gibt ncht viele, die das tatsächlich benötigen würden, aber die wenigen, die es brauchen, würde sonst was dafür geben, wenn sie es hätten. Zumal der Nutzen jede Applikation bis zum Faktor 100 und mehr beschleunigt, ohne dass man dafür sonst noch was besonderes brauchen würde.

Nur um mal eine grobe Orientierung zu geben. Wer Varnish braucht, zahlt für den uneingeschränkten Nutzen von Varnish 10.000/Jahr nur für Lizenzkosten und hast dann nur Varnish, aber nicht den ganzen Rotz den man sonst noch dafür braucht. Von den damit verbundenen Einschränkungen ganz zu schweigen. Um das Gleiche und das x-fache mehr zu bekommen, brauche ich 2 Code Schnipsel und einen Webserver, der ESI untersützt.

Re: [3.3] $_GET im Template abfragen

Verfasst: 17.07.2020 19:07
von oxpus
Ich verstehe natürlich die Bedenken, kein Thema. Aber wüsstest Du die näheren Zusammenhänge, was es im konkreten Fall mit ESI auf sich hat, wärst Du vielleicht, ich betone vielleicht, auch bereit in eine andere Richtung zu denken.
Es geht nicht um "Bedenken", sondern um eine Warnung, durch eine solche kleine "Anpassung" in den eigenen Webauftritt ein Sicherheitsloch zu reißen.
Mir persönlich wäre das egal und ESI hin oder her (ich weiß sehr wohl, was das ist und was man damit anstellen kann), aber Super Globals direkt zu verwenden, EGAL WO und WIE, ohne dabei für ausreichend Sicherheit zu sorgen, ist IMHO schlicht und ergreifend fahrlässig!!

Und bitte:
Deine ursprüngliche Frage zielte einzig darauf ab, ob und wie man $_GET im Template eines phpBB 3.3.x nutzen kann.
Kurzum; wie bereits nun auch schon mehrfach genannt:
Das geht im Standard phpBB 3.3.x nun mal (aus gutem Grund) nicht.

Re: [3.3] $_GET im Template abfragen

Verfasst: 17.07.2020 19:31
von serpent_driver
oxpus hat geschrieben: 17.07.2020 19:07 Das geht im Standard phpBB 3.3.x nun mal (aus gutem Grund) nicht.
Muss ich so wie es ist respektieren, zumal ich noch weitere Restriktionen gefunden habe. Das hat zwar unerwünschte Auswirkungen auf das Gesamtergebnis, aber nur teilweise. Kann damit aber leben, wenngleich ich es gerne perfekt gehabt hätte.

Nichtsdestotrotz, sakrischen Dank für Eure Hilfe!

Re: [3.3] $_GET im Template abfragen

Verfasst: 17.07.2020 21:17
von BNa
Hallo erstmal,

möglicherweise hab ich jetzt einen Knoten im Kopf aber die Lösung hier erlaubt doch $_GET:
viewtopic.php?p=1405094#p1405094

Es ist ja lediglich eine "Übersetzung" für $_GET und verhält sich wie das "echte" $_GET. Außerdem kann man im (aller)schlimmsten Falle eine "Übersetzer-PHP" bauen, die eine unsichere(!) mit einer sicheren $_GET-Umgebung ersetzt oder diese deutlich entschärft...

Aber warscheinlich bin ich nur ein Träumer :grin:

Re: [3.3] $_GET im Template abfragen

Verfasst: 17.07.2020 21:23
von oxpus
@BNa
Die von mir vorgestellte Methode ist die vorgegebene Vorgehensweise, um aus einer Super Global Werte zu übernehmen und weiter verwenden zu können.

Es ging in diesem Thema aber darum, direkt im Template auf $_GET zuzugreifen.
Und das ist definitiv (zum Glück) so nicht ohne weiteres möglich.

Re: [3.3] $_GET im Template abfragen

Verfasst: 17.07.2020 21:42
von BNa
@oxpus
könnte aber auch sein, das der OP nicht genug "um die Ecke denkt". :wink:
Aber egal, zur Not bastelt er in's phpBB eine PHP-Seite a la Wordpress ein, mit PHP/Html-Mix,
die sich voll integriert "anfühlt" und nur zum Auffangen des $_GET dient,
alle Werte aber syntaktisch "sicher und sauber" ans phpBB übergibt.