微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从第1-2-3-4页传递数据…在PHP中(没有会话/ cookie)

我知道会话可能是最有效的方法,我已经找到了一些关于如何做到这一点的答案,但是为了这个项目,我不允许这样做.我目前正在做的是使用http_build_query使用以下代码将信息从$_POST和单独的数组传递到下一页.

    if ($login[$user] == $pass) {
                            $qstr = http_build_query(
            array(
                'products_array' => $products,
                'quantity' => $_POST['quantity']
            )
    );
      header('Location: display_invoice.PHP?' . $qstr);

这有效,我可以在重定向后访问$_GET数组中的数组,但如果我尝试使用相同的代码将信息再次传递到下一页,则$_GET数组为空.我可以获得一些关于如何在不使用会话或cookie的情况下将数组信息从第1页传递到最终页面的输入吗?

解决方法:

您可以像这个示例那样序列化()数据.在页面1.PHP中,您有一个通过标题(位置:…)发送到第2.PHP页的数组.在2.PHP中,您可以看到收到的数组,并通过链接将信息发送到3.PHP.在3.PHP中,您可以看到来自1.PHP的数组

试试这个例子吧

1.PHP

<?PHP

    $bond = array (
    'Sean Connery' => 'Dr. No',
    'George Lazenby' => 'On Her Majesty\'s Secret Service',
    'Roger Moore' => 'Live and Let Die',
    'Timothy Dalton' => 'The Living Daylights',
    'Pierce brosnan' => 'GoldenEye',
    'Daniel Craig' => 'Casino Royal'
    );

$info = serialize($bond);

header('Location: 2.PHP?values=' . $info);

?>

2.PHP

<h1>Page 2</h1>
<?PHP

$values = $_GET['values'];
$info = unserialize($values);

foreach($info as $key => $value) {
  echo $key . ' - ' . $value . '<br>';
}   

?>

<p>
<a href="<?PHP echo '3.PHP?values=' . urlencode(serialize($info)); ?>">Send values to 3.PHP</a>
</p>

3.PHP

<h1>Page 3</h1>
<?PHP

$values = $_GET['values'];
$info = unserialize($values);

foreach($info as $key => $value) {
  echo $key . ' - ' . $value . '<br>';
}   

?>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐