SucheMitgliederKalenderHilfe Hallo, Gast! Registrieren
Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
$_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! Smile
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.07.2008, 10:14
Beitrag #2
RE: $_GET übertragen
Die Alte ID vorher aus der alten URL rausfischen?
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.07.2008, 10:18
Beitrag #3
RE: $_GET übertragen
Glaub' schon.
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
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 Smile
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
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!
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
KontaktWebhilfe.infoNach obenZum InhaltArchiv-ModusRSS-Synchronisation