Get Variablen und Include

dsfad

Mitglied
also ich binde ein eine Seite per Include ein...
auf dieser Seite ist ein Fomular! wenn dieses Fomular abgesendet wird, soll zu kontrolle der inhalt ausgegeben werden (das funktionier auch gut ohne Inlcude)
Das Problem ist, wie ich die Seite so einbinde, dass die Funktion die gleiche bleibt?!

also das wenn man zum Beispiel "http://www.test.de/test.php?site=test2.php?test=test&test2=test" aufruft das dann die seite "test2.php?test=test&test2=test" eingebunden wird...
 
Zuletzt bearbeitet:
Wenn Du in einem Skript ein anderes einbindest, sind die Inhalte des superglobalen Arrays $_GET in beiden Skripten verfügbar.

s1.php:
PHP:
<?
include "s2.php";
?>
s2.php
PHP:
<?
echo (isset($_GET['foo'])?$_GET['foo']:'foo nicht verfügbar.');
?>
Rufst Du nun s1.php?foo=bar auf, so wird bar ausgegeben.
Beantwortet das Deine Frage?

Gruß hpvw
 
thx...

Jetzt stellt sich mir eine neue Frage:
Ich habe nen Forum Script, dort werden aber nicht die Getvariablen angeprochen sondern es gibt Variablen, die wie die Getvariablen heißen...werden die Werte automatisch übernommen oder muss ich das noch manuel machen?
 
Du solltest übergebene Variablen immer nur über den entsprechenden Index in dem entsprechenden superglobalen Array ansprechen, um Sicherheitsrisiken zu vermeiden.
Und, um dem Ganzen auch einen praktischen Sinn zu geben: Wenn Du Deine Seite online stellen willst, wirst Du dies in aller Regel bei einem Webhoster machen. Dort hast Du meistens keinen Einfluss auf die Einstellungen von PHP und mußt dann alle Deine Skripte umschreiben, weil Du keinen direkten Zugriff auf die Variablen hast.

Gruß hpvw
 
Ich kann mich nur hpvw anschliessen.
Das Ansprechen der Variablen mit dem Namen welcher als Index in $_GET dient funktioniert nur bei aktivem register_globals.

Wenn das aktiv ist kann auf $_GET['test'] auch mittels $test zugegriffen werden.

Da man aber nie weiss wie der Hoster der eigenen Wahl diese Einstellung gesetzt hat empfiehlt es sich grundsaetzlich mit den Arrays $_POST und $_GET zu arbeiten.
Damit ist man auf der sicheren Seite.

Ein kleines Script zum ueberpruefen der Einstellung register_globals hab ich mal auf meiner Website veroeffentlicht.
 
danke euch...jetzt klappt alles thx!

noch mal ne Frage^^:
wenn ich eine Seite include kann ich die davor noch bearbeiten? ich möchte alle Links auf der Seite noc h umändern...also dynamisch. Wie kann man sowas machen?
 
Wenn eine Seite includet wird wird sie so ausgefuehrt als waere der Code direkt an der Stelle wo er includet wird.
Du kannst aber mittels Output Control die Ausgabe abfangen, in eine Variable schreiben und dann noch bearbeiten bevor Du den Inhalt dann ausgibst.
 
Zurück