Antworten
versuche mal anstatt $Get... oder $Post den gemeinsamen Befehl $Request. Wenn du nämlich auf einer auszusuchenden seite GET und POST zusammen hast, dann macht PHP bei der Auswertung Probleme.
Wenn du per Link übergeben willst (GET), dann wird der User(meiner Kenntnis nach) immer sehen, was übergeben wird. das lässt sich nur mittel POST verhindern.
Den Link, den du übergen willst, ist scheinbar (so wie du es schreibst) ein GET Befhel. Aber wie gesagt. Bei Unsicherheiten REQUEST !
2.
Es ist überhaupt nicht ratsam, stattdessen $_REQUEST zu benutzen. Vielmehr sollte man beachten, dass man Variablen auch wirklich so schreibt, wie sie lauten, nämlich $_GET und $_POST und nicht anders. Will man wirklich $_GET und $_POST zusammenfassen empfiehlt sich
Code: In Zwischenablage kopieren (nur IE)
[doc]array_merge[/doc]
3.
Na dann danke ich euch doch schon mal für die Antworten.
Nur für mich noch mal zum Verständnis:
register_globals in der php.ini steht auf On-> Variablen die per Link (index.php?VariablenName=test) übergeben werden können mit $VariablenName aufgerufen werden
-> Felder aus einem Formular können mit $VariablenNamen aufgerufen werden
-> Werte einer Variablen in einer SID können per URL (index.php?VariablenName=Wert) geändert werden
register_globals in der php.ini stehen auf Off-> Variablen die per Link (index.php?VariablenName=test) übergeben werden müssen mit $_GET['VariablenName'] aufgerufen werden
-> Felder aus einem Formular werden mit $_POST['VariablenNamen'] aufgerufen werden
-> Werte einer Variablen in einer SID können nur per PHP (also nur durch das Script) geändert werden.
Also ist die sicherste (so dass der User den Wert nicht ändern kann) Möglichkeit Variablen zu übergeben eine SID zu erstellen, und register_globals auf Off zu stellen.
Oder?
Gruß
Christian
4.
Schwarzweiß... Du kannst auch bei register_globals=on nur $_GET, $_POST und $_SESSION verwenden.
5.
Bei einer Session solltest Du beachten, dass diese bei ungeschickter Benutzung dann versagt, wenn der Benutzer Deine Seite mehrmals offen hat.
6.
Zitat:
Oliver Albers postete
Schwarzweiß... Du kannst auch bei register_globals=on nur $_GET, $_POST und $_SESSION verwenden.
HÄ? Also bei mir klappte es bisher immer mit $VariablenName.
@oimel: Danke für den Tipp! Ist mir gestern Nacht (war eigentlich schon wieder morgen) auch aufgefallen. Aber ich denke mir dass ich damit leben kann, bzw. ja auch muss.
Nochmals rechtherzlichen Dank für die vielen und hilfreichen Antworten.
Gruß
Christian
7.
Du verstehst mich falsch. Du
kannst dich auch wenn regsiter_globals on ist auf die Verwendung der "sichererern" Arrays beschränken.
8.
Ach so war dass gemeint. Jetzt hab ich es kapiert!