PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : GET Variablen für die URL definieren


Charma
14.05.2007, 17:47:58
Hallo,
Ich schreibe gerade an einer website. Dort werden zum beispiel die Seite oder andere dinge wie zum beispiel thread eines forums usw. durch GET-einträge aufgerufen. Ich mache das und speichere zum beispiel die aktuelle seite welche durch zB bla.php?page=beispiel aufgerufen wurde dann in einer session. Wenn man also innerhalb der seite "beispiel" irgendwas anklickt, dann bleibt der user selbst zwar auf der richtigen seite aber der GET-eintrag ist natürlich weg. Idealer wäre es aber eigentlich, wenn der GET-eintrag in der URL bleiben würde, damit die seitenbesucher zum beispiel sich die URLs gegenseitig schicken können. Wie bei einem Forum also. Wenn man nur den Link zur php-datei bekommt dann muss man sich ja durch alles wieder zur seite durchklicken. Und das problem ist ja nicht nur bei der seite, sondern auch bei sprache, forum, unterforum, thread usw. usw....

Leider fällt mir da keine gescheitere Lösung ein, als vor dem endgültigen "echoen" der seite nochmal alles durchzugehen und nach URLs zu suchen und zu testen ob nicht bereits ein get-eintrag vorhanden ist, wenn nicht einen hinzufügen usw. Das ist aber extrem aufwändig..

Gibt es da nicht vielleicht eine vordefinierte funktion für sowas oder eine bessere Methode? PHP kann ja schliesslich bereits von selbst zum beispiel get-einträge wie die session an die links einfügen. Geht das auch mit beliebigen variablen?

Vielen Dank im Vorraus für jede Hilfe!!!

MatMel
14.05.2007, 18:08:57
Schreib dir doch eine Funktion, die durch die du jede URL, die ausgegeben werden soll, erstmal durchjagst.
Dann kannst du zentral, ohne viel zu ändern, immer anpassen was denn jetzt übertragen wird.
Die mitgeschickten gets stehen sicher auch in irgendeiner Globalen Variable drin (=>Manual schauen). Es ist aber nicht unbedingt sinnvoll die ohne zu überlegen einfach immer zu übernehmen.

Charma
14.05.2007, 18:14:26
ja... dass die GET-variablen im globalen array $_GET stehen weiss ich ja selbst... und das mit der funktion ist ja genau das was ich doch gesagt habe... aber was ich doch suchte ist doch eben nicht DER weg sondern wie man das anders lösen könnte...

MatMel
14.05.2007, 18:32:01
ja... dass die GET-variablen im globalen array $_GET stehen weiss ich ja selbst...
Ich meinte jetzt $_SERVER['argv'], da hat man gleich alles am Stück und fertig zu dranhängen.

Naja als andere Methode könne ich mir höchstens noch vorstellen, die gesamte Ausgabe mit einem RegExp nach URLs zu durchsuchen und die dann zu ersetzen.
Aber ich denke mal nicht dass das viel besser geht als das andere.

Eine vorgefertigte Funktion ist mir jedenfalls nicht bekannt.

Charma
14.05.2007, 18:59:16
das problem hat sich erledigt... ich habe eine viel bessere und schönere und einfacher methode gefunden, danke trotzdem für die antworten...

MatMel
14.05.2007, 20:15:33
Dann könntest du die vielleicht für andere, die das Problem auch haben mal posten?