gpt4 book ai didi

php - 如何自动重定向到另一个传递一些数据的 PHP 脚本?

转载 作者:行者123 更新时间:2023-12-04 06:35:59 25 4
gpt4 key购买 nike

我有一个处理一些数据的脚本,不呈现任何文本,然后将用户重定向到最终页面。
在最后一页上,用户应该能够看到一些数据。
我使用 SESSION 变量来传递它,但不知何故它丢失了。
它看起来像这样

$_SESSION['ses']['field1'] = $var1;
header("Location: http://page.com/another.php");
exit;

(我将 session_start() 放在两个文件的开头)。
该 header 重定向是否“丢失”了 session ID?
如果这是错误的,并且不起作用,那么另一种方式是什么?
我只能想象使用 $_GET 或 cookie,但两者都不太安全且易于操作。

最佳答案

在新页面上显式发送 session ID,如下所示:

session_start();
$_SESSION['ses']['field1'] = $var1;
header("Location: http://page.com/another.php?phpSESSID=".session­_id());

然后在新页面中,获取 session ID 并像这样使用它
<?php
session_id($_GET['phpSESSID']);
session_start();

...

这将起作用。这是一个 known PHP bug ,如果您使用的是古老的 PHP 版本。此外,有时在重定向时 session 真的丢失了,因此您需要获取 session ID,通过该 ID 可以恢复您的 session 。有些浏览器可以很好地进行重定向,但有些浏览器则不能,例如 IE6。

关于php - 如何自动重定向到另一个传递一些数据的 PHP 脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4871186/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com