2016-06-06 6 views
1

Sagen wir, ich habe eine Webseite "abcde.com" mit zwei Submit-Buttons: "Set GET 1" und "Set GET 2".
Die Schaltfläche "Set GET 1" leitet den Benutzer an abcde.com?first=x weiter. Der Button "Set GET 2" leitet den Benutzer zu abcde.com?second=x.
Beide verwenden PHP's ('Ort:? First =') und ('Location:? Second =').

Wenn der Benutzer auf Set GET 1 klickt, wird der GET-Parameter in der URL festgelegt. Wenn der Benutzer jedoch direkt nach dem Festlegen des ersten GET-Parameters auf Set GET 2 klickt, wird die Schaltfläche ihn zum zweiten Parameter umleiten und den ersten von der URL entfernen.

Ist es möglich, das Setzen mehrerer GET-Parameter in der URL dividiert durch & in PHP zu erreichen, ohne if (isset($_GET["first"])) { ('Location: ?first=x&?second=x') } zu schreiben?
Ich meine, so kann es & hinzufügen und einen anderen Parameter einstellen, ohne die vorherige zu entfernen? Obwohl ich verstehe, dass PHP Benutzer ohne vorherigen GET-Parameter zu URL umleitet.Wie analysiert man mehrere GET-Parameter in URL, wenn man eine andere aufhebt?

Antwort

2

Verwenden $_GET in einem Array aktuellen Abfrage-String zu speichern, fügen Sie Ihre Werte, um es, bauen dann den neuen Abfragezeichenfolgeflag mit http_build_query:

$queryArray = $_GET; 
$queryArray['second']='x'; 
$urlWithQueryString = 'http://example.com/somepage/?' . http_build_query($queryArray); 

header('Location:'.$urlWithQueryString); 
Verwandte Themen