为了账号安全,请及时绑定邮箱和手机立即绑定

通过 PHP Post 将 Javascript 变量传递到另一个页面

通过 PHP Post 将 Javascript 变量传递到另一个页面

SMILET 2023-03-10 14:42:57
我有两个 php 页面:第 1 页:<form class="form-horizontal"  role="form" method="post" action="Page2.php">      <button id="place-order" class="btn btn-lg btn-success">Place Order</button>      <div id="ajax-loader" style="display:none;"><img src="images/ajax-loader.gif" /></div></form><script>      var id = Math.random();      $(document).ready(function() {        $('#place-order').on('click', function() {            $(this).hide();            $('#ajax-loader').show();        });      });</script>在表单上,它重定向到 Page2.php,我想从 Page1 传递 Javascript 变量“id”以在 Page2 中接收它。我试过使用 cookie,但需要一种替代方法。我不理解从 PHP 到 JS 的转换,反之亦然。感谢帮助。提前致谢
查看完整描述

3 回答

?
三国纷争

TA贡献1804条经验 获得超7个赞

亲爱的,你可以用 ajax 很容易地做到这一点。Ajax 具有数据属性,可帮助您将数据从 javascript 传递到另一个页面。

此链接将对您有很大帮助 https://api.jquery.com/jquery.ajax/


查看完整回答
反对 回复 2023-03-10
?
牧羊人nacy

TA贡献1862条经验 获得超7个赞

您可以使用查询字符串将值传递到下一页。


在表单中添加 ID

<form class="form-horizontal"  role="form" method="post" action="Page2.php" id="order-form">

更新表单的操作以从我们的 JS 变量添加此查询字符串

var id = Math.random();

$('#order-form').attr('action', 'Page2.php?id=' + id);

在 PHP 中获取此变量(显然您可能想对其进行更多检查)

<? $id = $_GET['id'] ?>

我们现在可以$id在我们的 PHP 中的任何地方使用,我们将使用从 JS 生成的 ID。整洁,对吧?如果我们又想在 JS 中使用它怎么办?只需添加另一个脚本标签并在那里回显它!


<script type="text/javascript">

var id = <? echo $id ?>;

</script>

编辑:更新以添加一些关于它如何工作的内容,因为你说你不太确定 PHP 和 JS 之间的转换。


PHP在服务器上运行。对浏览器了解不多,对JS当然更不了解。它运行所有内容并在显示网页之前完成执行。我们可以通过创建脚本标签和创建一个新的 javascript 变量,echo将 PHP 值传递给 JS。


JS(JavaScript)在浏览器中运行。它不知道服务器上发生的任何事情;它只知道运行它的 HTML 文件(按 CTRL+U 可查看原始 HTML)。由于 JS 在与 PHP 完全不同的时间运行,因此没有简单的方法来传输变量(例如$phpVar = myJSVar)。因此,我们必须使用像POST或 之类的服务器方法GET。


我们可以通过两种主要方式创建GET或请求:POST


使用表格

使用 AJAX 请求

表单按照我概述的方式工作,或者您可以创建一个隐藏字段,设置您想要的值,然后检查它。这涉及重定向到另一个页面。


AJAX(异步 Javascript 和 Xml)的工作方式略有不同,因为用户不必离开页面即可发出请求。我会留给你去研究如何实际编程(jQuery 有一个很好的简单 API!),但它基本上作为后台请求工作——一个例子是在从另一个页面加载订单详细信息时显示加载微调器.


希望这会有所帮助,如果有不清楚的地方,请告诉我!


查看完整回答
反对 回复 2023-03-10
?
慕尼黑5688855

TA贡献1848条经验 获得超2个赞

您可以使用会话存储或 cookie。会话存储示例:


// First web page:

sessionStorage.setItem("myVariable", "myValue");

 

// Second web page:

var favoriteMovie = sessionStorage.getItem('myVariable');


查看完整回答
反对 回复 2023-03-10
  • 3 回答
  • 0 关注
  • 140 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信