2013-07-15 3 views
0

Это, вероятно, простой вопрос: как переопределенная переменная PHP $_POST ведет себя с PHP через несколько файлов за один сеанс?

Руководство по состояниях PHP.net этого: "This is a 'superglobal', or automatic global, variable. This simply means that it is available in all scopes throughout a script."

Вот моя конкретная ситуация: У меня есть одна страница, которая в основном содержит HTML с несколькими формами - которые обрабатываются с JQuery. Затем у меня есть «промежуточная» страница, которая вызывает мой класс PHP. Эти два файла продолжают текущий сеанс пользователя. Очевидно, что $_POST используется широко.

Мне интересно, если $_POST будет «обновляться» каждый раз при отправке формы или добавлении новых идентификаторов в массив.

Например,

Форма Подача Один =>$_POST = $POST['firstname'], $POST['lastname']... Форма Подача Два =>$_POST = $POST['firstname'], $POST['lastname']...+ $_POST['Id'], $_POST['whatever']...

Любой ввод ценится.

ответ

2

$_POST заносится из опубликованных переменных для этого конкретного HTTP-запроса. Если у вас несколько запросов, то у каждого из них будет свой собственный $_POST.

Ничего неявно разделяется между запросами. Для этого вы должны использовать данные сеанса.

1

Для каждого запроса создается переменная $_POST, основанная на содержимом, входящем в POST, в форме. Он не будет сохраняться между вызовами (это $_SESSION, и он ведет себя по-разному).

Это не значит, что $_POST обновляется на каждом сообщении формы, а скорее, что он создан уникально для каждой транзакции HTTP POST.

+0

Полезно знать. Благодарю. – Mlagma

Смежные вопросы