Подтвердить что ты не робот

Установка переменной POST без использования формы

Есть ли способ установить $_POST['var'] без использования поля, связанного с формой (no type = 'hidden), и использовать только PHP. Что-то вроде

$_POST['name'] = "Denniss";

Есть ли способ сделать это?

EDIT: Кто-то попросил меня кое-что уточнить. Так, например, у меня есть страница с формой на ней. Форма выглядит примерно так.

<form method='post' action='next.php'>
<input type='text' name='text' value='' />
<input type='submit' name='submit' value='Submit'/>
</form>

После нажатия кнопки "Отправить" я хочу перенаправить на next.php. Есть ли способ установить переменную $_POST ['text'] в другое значение? Как сделать это постоянным, так что, когда я нажимаю на другую кнопку отправки (например), $_POST ['text'] будет тем, что я установил на next.php, не используя скрытое поле.

Сообщите мне, если это еще не ясно и спасибо за вашу помощь.

4b9b3361

Ответ 1

Да, просто установите его в другое значение:

$_POST['text'] = 'another value';

Это переопределит предыдущее значение, соответствующее клавише text массива. $_POST - суперглобальный ассоциативный массив, и вы можете изменить значения, как обычный PHP-массив.

Предостережение: Это изменение отображается только в пределах той же области выполнения PHP. После завершения выполнения и загрузки страницы массив $_POST очищается. В новом представлении формы будет создан новый массив $_POST.

Если вы хотите сохранить значение в представлениях формы, вам нужно будет поместить его в форму в качестве атрибута input tag value или получить его из хранилища данных.

Ответ 2

Если вы хотите установить $_POST ['text'] на другое значение, почему бы не использовать:

$_POST['text'] = $var;

на next.php?

Ответ 3

вы можете сделать это с помощью ajax или путем отправки http-заголовков + контента, например:

POST /xyz.php HTTP/1.1
Host: www.mysite.com
User-Agent: Mozilla/4.0
Content-Length: 27
Content-Type: application/x-www-form-urlencoded

userid=joe&password=guessme

Ответ 4

Вы можете сделать это, используя jQuery. Пример:

<script src="https://code.jquery.com/jquery-1.11.2.min.js"></script>

<script>
    $.ajax({
        url : "next.php",
        type: "POST",
        data : "name=Denniss",
        success: function(data)
        {
            //data - response from server
            $('#response_div').html(data);
        }
    });
</script>