Dynamische Titel
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
ansatz
array
aufwand
code
extra datei
filter
header
http
langes url
manual
methode
null
parameter
setzen
simplen code
switch
url
vertrauen
verwenden
weiterer ansatz
-
Hallo
Bei meiner Seite wird der content durch eine GET-Abfrage aufgerufen. Dementsprechend möchte ich nun auch Dynamische Titel haben.
Mein Ansatz dazu ist:
$p = $_GET["p"]; if ($p == "1") {$ptitle = "1sdhg";} if ($p == "2") {$ptitle = "2xycg";} if ($p == "3") {$ptitle = "3tdszktu";} . . .
Das funktioniert auch wunderbar, bloß ist es ein wenig viel Text.
Gibt es da eine einfachere Möglichkeit das zu schreiben oder zu verwirklichen?
Der Content ist übrigens in PHP-Dateien gespeichert ( -> include).
mfg -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Du könntest den Titel als Wert für den GET-Parameter verwenden. Damit wird die URL klarer und der Titel lässt sich mit einem simplen
setzen.$titel = $_GET["p"];
Ein weiterer Ansatz wäre, den Titel in der einzubindenden Seite als Varibale/Konstante zu hinterlegen. Du musst dann nur das Include machen, bevor du das HTML-Gerüst ausgibst.
Und zu guter letzt wäre da noch die Möglichkeit, die Titel in einer extra Datei oder Datenbank abzulegen, und von dort abzufragen.
Wenn alle 3 dieser Varianten für dich ungeeignet sind, bleibt dir wohl nur noch ein langes switch-case oder if-else. -
metalmachine schrieb:
Du könntest den Titel als Wert für den GET-Parameter verwenden. Damit wird die URL klarer und der Titel lässt sich mit einem simplen
setzen.$titel = $_GET["p"];
Schonmal was von XSS Gehört?
Die Switch-Methode halte ich auch für am Sinnvollsten.
Eine andere möglichkeit wäre diese:
$titel = array( "1" => "Titel 1", "2" => "Titel 2", "3" => "Titel 3" // ... ); if(array_key_exists($_GET["p"], $titel) ) { echo($titel[$_GET["p"]]); }else{ echo("Kein Titel ^^"); }
-
Dann würde ich isset() vorziehen.
[...] if(isset($title[$page])) [...]
Sollte das Array so aussehen:
$title = array("Titel 1", "Tiitel 2", "Titel 3", null);
Würde array_key_exists(3, $title) (null) ganz treu sagen: Jow, hab was gefunden. Gut, dass dort null oder nichts drin steht mag unwahrscheinlich sein, sollte das Array von Hand gepflegt werden, aber wenn es irgendwann mal automatisch erzeugt wird, sollte man dem niemals vertrauen. Zudem ist isset() eine der schnellsten Such- und Prüffunktionen. Und ist weniger zu schreiben und einfacher zu merken. ;) -
Schonmal was von XSS Gehört?
Ja, aber es gibt ja die Filert-Methoden. Ich dachte, das müsste ich nicht noch extra erwähnen... -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage