|
$_GET übertragen
|
|
26.07.2008, 08:48
Beitrag #1
|
|||
|
|||
|
$_GET übertragen
Hallo,
lebt hier eigentlich noch irgendwer? Naja, ich hoffe schon, denn ich habe eine Frage: Ich habe eine Template-Engine auf PHP-Basis programmiert mit Themes und allem. Jetzt möchte ich, dass man das Theme per Eingabe bestimmter $_GET-Werte ändern kann (als User) und das dabei der eingegebene Wert bei einem Klick auf einen Link nicht verloren geht, da man ihn ja sonst jedes Mal neu eingeben müsste.. Ich habe zum Beispiel eine Seite mit der URI "index.php?id=portfolio" geöffnet. Nun klicke ich auf einen Link, der zu folgender Adresse führen soll: "index.php?id=portfolio&theme=liquid". Wie kann ich das machen? Eingeben ist ja klar, aber wie kann man einen Link so "bauen", dass bei der Auswahl des Themes die ID der Seite erhalten bleibt? Danke im Vorraus!
|
|||
|
26.07.2008, 10:14
Beitrag #2
|
|||
|
|||
|
RE: $_GET übertragen
Die Alte ID vorher aus der alten URL rausfischen?
|
|||
|
26.07.2008, 10:18
Beitrag #3
|
|||
|
|||
|
RE: $_GET übertragen
Glaub' schon.
|
|||
|
26.07.2008, 23:57
Beitrag #4
|
|||
|
|||
|
RE: $_GET übertragen
Also bei meiner Seitenfunktion hab ich folgendes eingebaut:
PHP-Code: if(isset($_GET["page"])){$str = preg_replace ("%page\=(\d+)%", "page=$i", $_SERVER["QUERY_STRING"]);}else{$str=$_SERVER["QUERY_STRING"]."".$and."page=".$i;}; Vlt bringt dich das etwas weiter
|
|||
|
29.07.2008, 11:08
Beitrag #5
|
|||
|
|||
|
RE: $_GET übertragen
Hallo,
also um dein Problem zu lösen könntest du noch folgende Lösungswege verwenden: 1. Sessions - Der Benutzer navigiert auf deiner Seite über einen $_GET-Parameter (bsp: index.php?id=portfolio) - Der Quellcodeteil der jetzt dafür zuständig ist, das der Inhalt der Portfolio Seite angezeigt wird wird um eine Session erweitert, dabei wird der aktuelle Wert aus $_GET['id'] in einer Session Variable gespeichert (wenn ein neuer Wert kommt, wird der alte natürlich überschrieben). - Wird jetzt einmal kein $_GET['id'] Parameter übergeben, aber es existiert ein alter Wert in der Session, weiß dein Script das es den Wert aus der Session nehmen soll. - Jetzt kannst du problemlos ohne auf die Übergabe der jeweiligen Seitenid andere $_GET - Parameter, in deinem Fall ein anderer Style übergeben. Die ID ist ja in der Session gespeichert. 2. make_link() - funktion Die zweite Möglichkeit ist einmalig eine "make_link()"-Funktion zu bauen, dort werden alle möglichen GET-Parameter überprüft und falls vorhanden zu einem Link zusammengebaut, diese Funktion gibt dann eine vollständige URL zurück, die du in deiner Ausgabe verwenden kannst. Du musst dann aber für jeden Link diese Funktion konsequent benutzen, damit nicht plötzlich hier oder da Parameter fehlen oder verloren gehen. Mit einer der beiden Lösungsvorschläge solltest du hoffentlich was anfangen können. Falls nicht, frag einfach! |
|||
|
|
Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste




