Parameter-Übergabe verstecken
-
Hallo zusammen. Mal wieder so ne Anfängerfrage....
Wenn ich eine PHP-Seite aufrufe kann ich ja Parameter übergeben, ala index.php?action=0
Wenn ich das ganze über ein Formular mache kann ich über method="post" das ganze ja auch nicht anzeigen. Wie mache ich das aber bei "normalen" Aufrufen.
Z.B. habe ich einen Link der Form:
echo("<a href='index.php?action=".$action."'>Bla</a>");
Ich hörte mal von einer Funktion o.ä., die das realisiert, da ich aber keine Ahnung mehr habe, wie sie heisst, fiel auch die Suche in FAQ etc. recht spärlich aus.
Und wo ich einmal dabei bin, Anfängerfragen zu stellen:
Ich habe bis jetzt die Übergabe folgendermassen benutzt:
Ich habe irgendwo obigen Link und in der index.php steht dann etwas wie:if($action=="0") { whatever }
Das funktioniert auch super. Jetzt habe ich aber an verschiedenen Stellen schon gelesen, dass bei "Übergabe-Auswertung" benutzt wird:
$_POST["alter"]
Besteht da ein Unterschied?
Vielen Dank..M
-
$_POST["alter"] gibt den wert des params alter aus der per post übergeben worden ist.
$_GET["alter"] macht das mit den get-params.
-
Ist prinzipiell klar. Aber wenn ich einfach nur $alter benutze kommt bei mir das gleiche raus.
-
MG80S schrieb:
Ist prinzipiell klar. Aber wenn ich einfach nur $alter benutze kommt bei mir das gleiche raus.
z.B. http://www.netz-id.de/article1823.html
Dieses Problem wurde bereits an vielen Stellen diskutiert.Zu deiner anderen Frage: Mithilfe von "normalen" Links lassen sich die Parameter IMHO nicht verstecken. Vllt. ist aber mod_rewrite (eine Apache-Erweiterung) etwas für dich. Einfach mal danach suchen.
-
Dasd schrieb:
z.B. http://www.netz-id.de/article1823.html
Dieses Problem wurde bereits an vielen Stellen diskutiert.Oh, das wusste ich nicht. Danke.
Dasd schrieb:
Zu deiner anderen Frage: Mithilfe von "normalen" Links lassen sich die Parameter IMHO nicht verstecken. Vllt. ist aber mod_rewrite (eine Apache-Erweiterung) etwas für dich. Einfach mal danach suchen.
Das klingt sehr gut. Ich denke, dass bringt mir was. Vielen Dank.
-
MG80S schrieb:
Hallo zusammen. Mal wieder so ne Anfängerfrage....
Wenn ich eine PHP-Seite aufrufe kann ich ja Parameter übergeben, ala index.php?action=0
Wenn ich das ganze über ein Formular mache kann ich über method="post" das ganze ja auch nicht anzeigen. Wie mache ich das aber bei "normalen" Aufrufen.
Z.B. habe ich einen Link der Form:
echo("<a href='index.php?action=".$action."'>Bla</a>");
Ich hörte mal von einer Funktion o.ä., die das realisiert, da ich aber keine Ahnung mehr habe, wie sie heisst, fiel auch die Suche in FAQ etc. recht spärlich aus.
Und wo ich einmal dabei bin, Anfängerfragen zu stellen:
Ich habe bis jetzt die Übergabe folgendermassen benutzt:
Ich habe irgendwo obigen Link und in der index.php steht dann etwas wie:if($action=="0") { whatever }
Das funktioniert auch super. Jetzt habe ich aber an verschiedenen Stellen schon gelesen, dass bei "Übergabe-Auswertung" benutzt wird:
$_POST["alter"]
Besteht da ein Unterschied?
Vielen Dank..M
Ich würde sagen, du meinst Register Globals. Normalerweise musst du die variable $action mittels $_GET['action'] aus der URL ziehen. nur $action zu verwenden wird - zu recht - als Sicherheitsrisiko betrachtet.
Betrachtest du ein Formular, in dem du die Varibalen mit der Methode post überträgst, könnte jemand die Zielseite direkt aufrufen und die Parameter einfach daranhängen, obwohl dies nicht gewünscht ist. Richtig risikoreich wird es aber wohl erst, wenns um Sessions geht.