PHP урегулирования $ _GET значение - PullRequest
0 голосов
/ 13 января 2011

Мне нужно установить значения $ _GET;я могу сделать это?

т.е. у меня есть пустой массив $ _GET.Как можно сделать его непустым с php?

Может быть, с помощью заголовков http?

Заранее спасибо;

Ответы [ 4 ]

3 голосов
/ 13 января 2011

Это можно сделать тремя способами.

Один:

<form method="get" action="file.php">
<input type="text" name="TextThing" />
</form>

В файле php:

$_GET["TextThing"]; //contains the text of the texbox TextThing...

Второй:

Используйте вопросительный знак за URL, например: http://domain.com/file.php?foo=bar&stack=overflow

Затем:

$_GET["foo"]; //contains bar
$_GET["stack"]; //contains overflow

Помните, что ваши пользователи легко могут изменять значения переменных.

Третий:

$_GET["foo"] = "bar";
$_GET["foo"]; //contains bar
1 голос
/ 13 января 2011

Вы можете попробовать обновить $ _GET

$_GET['test'] = 'abc';

, а затем перенаправить туда пользователей:

header('Location: ?' . http_build_query($_GET));

Вы просто должны убедиться, что перенаправить только при необходимости, так что вы неперевести пользователей в бесконечное перенаправление.

1 голос
/ 13 января 2011

Массив $_GET изначально заполняется из строки запроса, но вы можете перезаписать его, если хотите, без перенаправления.Если в какой-то момент в вашем коде вы установили $_GET['foo'] = 'bar';, то это будет установлено впоследствии, независимо от того, какая строка запроса.

1 голос
/ 13 января 2011

$_GET заполняется параметрами / значениями, отправленными в строке запроса URL-адреса, поэтому, если вы вызываете http://example.com/my.php?foo=bar&foo2=baz, то в my.php $_GET['foo'] => 'bar' и $_GET['foo2'] => 'baz'

...