Sönke Tesch: Variablen leeren

Beitrag lesen

kann man mit einem PHP-Ausdruck alle Variablen im Head, also die, die mit dem Link übertragen, z.b. http://test.de/test.php?tes1=1&test2=2 werden löschen, dami nur noch http://test.de in der Adresszeile des Browsers steht?

Das macht so alleine nicht allzu viel Sinn, was genau bezweckst Du damit?

Die Reinlichkeit der Adressleiste auf irgendeinem von Millionenen fremden Computern braucht Dich eigentlich nicht zu interessieren, stecke Deine Energie lieber in die eigenen Seiten; schon gar nicht lohnt es sich, den "unsauberen" Benutzer dadurch zu nerven, daß die Seite wegen der Parameter nochmal komplett neu geladen werden muß. Das ist nämlich die einzige Möglichkeit, die Adressleiste zu beinflussen: in Deinem Fall eine Weiterleitung durch das Skript an sich selbst, wobei von der aktuellen URL die Parameter abgeschnitten werden.

Skriptmanipulationen durch "eingeschmuggelte" Variablen werden weiterhin schon seit Monaten von PHP selbst verhindert, indem seit Version 4.1 externe Parameter nicht mehr automatisch als eigenständige Variablen registriert werden, sondern nur noch in entsprechenden Feldern wie zum Beispiel $_GET[] (bzw. $HTTP_GET_VARS[]) auftauchen (siehe phpinfo()-Ausgabe).
Falls Dein Hoster sich nicht um seinen Server kümmert, kannst Du das auch selbst bewerkstelligen, indem Du (beim Apache-Server) in der obersten .htaccess eine Zeile

php_flag register_globals off

einträgst (oder besser gleich den Hoster wechselst).

Gruß,
  soenk.e