在 PHP 中通过同一页面上的不同链接传递数组中的不同值

Passing different values from an array through different links on the same page in PHP

本文关键字:链接 数组 PHP 一页      更新时间:2023-09-26

我正在努力为电子商务解决方案开发一个订单管理屏幕,当单击相对于特定订单的链接时,该屏幕将导出该订单的信息并填充托管在也归我公司拥有的不同域上的页面。

这是我的代码的简化、假设版本:

foreach ($orders as $order_number) {
   echo '<a href="http://www.anotherdomain.com/shipping_info.php">View shipping info for Order #' . $order_number . '</a>';
}

然后我还有一个名为$shipping_info的数组,其中包含每个订单的单独信息数组。

此循环将创建链接以查看数组中每个订单号的信息。当用户单击">查看订单 #100 的运输信息">的链接时,他们应该被带到填充了来自 $shipping_info[100] 的信息的 http://www.anotherdomain.com/shipping_info.php 页面,这也是一个数组。

实现这一目标的最佳方法是什么?

我可以想到两种方法

  1. 使用 POST,使按钮成为包含数据提交到其他域的表单。这既快速又简单,但它不允许您验证第二个域上的数据。

  2. 将运输信息保存到具有随机ID的数据库中,并使用该ID链接到http://www.anotherdomain.com/shipping_info.php?id=<random id>。这样,数据就不会被篡改,您可以将运输信息链接到其他人。这确实需要网站访问相同的数据库,并且可能比第一个解决方案复杂一些。

如果它跨服务器AFAIK,你唯一的希望就是在URL中$_GET变量。

<a href="http://anotherdomain.com/shipping_info.php?stuff=(info you need to pass)&morestuff=(more info you need to pass)&evenmorestuff=(you get the idea by now)>View shipping info</a>