Я хотел бы знать, как можно сохранить данные ввода в переменной PHP, чтобы показать их на следующей странице.
У меня есть веб-страница, которая выполняет расчет в JavaScript, и в конце одно из полей возвращает итог. После выполнения расчета единственное поле, которое мне нужно сохранить, — это общее поле, так как я хочу показать его на следующей странице.
Соответствующий HTML-код выглядит следующим образом:
<p class="auto-style4">
<span class="auto-style5">Tu pago total es de</span>
</p>
<div class="auto-style6">
<input type="text" id="valor5" value="0.00" disabled value="0" size="23" >
<span class="auto-style7">dólares</span>
</div>
Как я могу сделать так, чтобы я мог сохранить эти данные и отобразить их соответственно на другой странице?
Я оставляю здесь несколько вариантов передачи данных с одной страницы на другую. Все они имеют свои преимущества и недостатки, и выбор того или иного варианта будет зависеть от конкретного случая:
В случае, если вы представляете вопрос, я бы лично выбрал
SessionStorage
(в опции «Локальное хранилище») или напрямую передал значение как часть URL-адреса.Формы
Для передачи данных со страницы A на страницу B вы можете использовать формы (все сразу в одном поле или отформатированные в нескольких полях), а затем отправить форму. Например:
Если у вас уже есть форма для этого, рассмотрите возможность добавления скрытого поля со значением, которое вы хотите передать на вторую страницу.
Преимущество:
Недостатки:
Для вашего конкретного случая : это может быть вариант, он прост и легко реализуем. Обратите внимание, что если поля отключены, они не будут отправлены вместе с остальной частью формы.
Параметр в URL
В качестве альтернативы, без необходимости в форме, вы можете передать информацию в URL-адресе новой страницы (это было бы эквивалентно наличию формы с GET, но без создания формы).
Когда вы переходите на редирект на свою вторую страницу, включите параметр в ссылку на новую страницу:
Преимущество:
Недостатки:
Для вашего конкретного случая : это может быть вариант, его просто и легко реализовать (в основном это упрощенная версия форм с GET)
Локальное хранилище
В HTML5 был представлен API веб-хранилища, который включает два метода хранения информации в браузере пользователя: LocalStorage и SessionStorage . Разница между этими двумя методами заключается в том, как информация сохраняется: с помощью LocalStorage она сохраняется от сеанса к сеансу (и от вкладки к вкладке), а с SessionStorage она очищается при закрытии окна.
Код для его использования прост:
Преимущество:
Недостатки:
Для вашего конкретного случая : если вам не нужно отправлять информацию на сервер (чтобы хранить ее в базе данных или каким-либо образом обрабатывать), я бы выбрал этот вариант.
печенье
Подобно LocalStorage, файлы cookie — это классика. Они могут быть реализованы на стороне клиента (JavaScript) или на стороне сервера (например, PHP), и результат будет аналогичным. Пример того, как это будет выглядеть в PHP:
Преимущество:
Недостатки:
Для вашего конкретного случая : прежде чем использовать этот вариант, я бы придерживался LocalStorage.
ИндекседБД
Еще одной функцией, представленной в HTML5, была IndexedDB , позволяющая локально создавать объектно-ориентированную базу данных. Таким образом, вы можете хранить и извлекать объекты с помощью ключа.
Преимущество:
Недостатки:
Для вашего конкретного случая : я бы не стал использовать этот метод, потому что вы хотите передать мало информации, и использование чего-то подобного было бы отстрелом мух до смерти. Если бы у вас было много информации, это была бы другая история.
Вы можете передать значение переменных из javascript в PHP следующим образом.
Имея js-скрипт, в котором вы делаете расчеты:
Из php вы можете получить его следующим образом: