我想知道如何将输入的数据保存在 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 中,引入了 Web Storage API,其中包括两种在用户浏览器中存储信息的方法:LocalStorage和SessionStorage。两种方法的区别在于信息是如何持久化的,使用 LocalStorage 是从会话到会话(以及从选项卡到选项卡)保存,而使用 SessionStorage 是在窗口关闭时清除。
使用它的代码很简单:
优势:
缺点:
对于您的特定情况:如果您不必将信息发送到服务器(将其存储在数据库中或以某种方式处理它),我会选择此选项。
饼干
与 LocalStorage 类似,cookie 是经典之作。它们可以在客户端(JavaScript)或服务器端(例如:PHP)实现,结果将是相似的。PHP 中的示例:
优势:
缺点:
对于您的特定情况:在使用此选项之前,我会坚持使用 LocalStorage。
索引数据库
HTML5 中引入的另一个特性是IndexedDB,它允许您在本地创建面向对象的数据库。因此,您可以使用密钥存储和检索对象。
优势:
缺点:
对于您的特殊情况:我不会采用这种方法,因为您想传递的信息很少,并且使用类似的方法会将苍蝇射死。如果你有很多信息,那就是另一回事了。
您可以将变量的值从 javascript 传递给 PHP,如下所示。
拥有在其中进行计算的 js 脚本:
从 php 你可以像这样检索它: