从第1-2-3-4页传递数据。。。在PHP中(无会话/cookie)
我知道会话可能是最有效的方法,我已经找到了一些关于如何使用会话的答案,但是为了这个项目,我不允许这样做。我目前正在做的是使用从第1-2-3-4页传递数据。。。在PHP中(无会话/cookie),php,arrays,algorithm,serialization,http-headers,Php,Arrays,Algorithm,Serialization,Http Headers,我知道会话可能是最有效的方法,我已经找到了一些关于如何使用会话的答案,但是为了这个项目,我不允许这样做。我目前正在做的是使用http\u build\u query从$\u POST传递信息,并使用以下代码将一个单独的数组传递到下一页 if ($login[$user] == $pass) { $qstr = http_build_query( array( 'products
http\u build\u query
从$\u POST
传递信息,并使用以下代码将一个单独的数组传递到下一页
if ($login[$user] == $pass) {
$qstr = http_build_query(
array(
'products_array' => $products,
'quantity' => $_POST['quantity']
)
);
header('Location: display_invoice.php?' . $qstr);
这是可行的,我可以在重定向后访问
$\u GET array
中的数组,但如果我尝试使用相同的代码再次将信息传递到下一页,则$\u GET array
为空。我可以得到一些关于如何在不使用会话或cookie的情况下将数组信息从第1页传递到最后一页的信息吗?您可以将它们作为JSONJSON\u encode()
存储在一个隐藏数组中,然后使用JSON\u decode()还原它们
存储$\u进入第1页:
<input name="oldget" value="<?= json_encode($_GET)?>">
在数组中将$\u POST更改为$\u请求。这样,您将获得post和get的数量
$\u请求是一个关联数组,默认情况下包含$\u GET、$\u POST和$\u COOKIE的内容
您可以序列化()
您的数据,如本例所示。在页面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);
?>
<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>
<h1>Page 3</h1>
<?php
$values = $_GET['values'];
$info = unserialize($values);
foreach($info as $key => $value) {
echo $key . ' - ' . $value . '<br>';
}
?>
2.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);
?>
<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>
<h1>Page 3</h1>
<?php
$values = $_GET['values'];
$info = unserialize($values);
foreach($info as $key => $value) {
echo $key . ' - ' . $value . '<br>';
}
?>
第2页
3.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);
?>
<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>
<h1>Page 3</h1>
<?php
$values = $_GET['values'];
$info = unserialize($values);
foreach($info as $key => $value) {
echo $key . ' - ' . $value . '<br>';
}
?>
第3页
感谢您的回复,我将查看文档以了解您的所有建议@如果这个答案对你有帮助,请考虑接受。it@Imaqtpai如果你不知道“接受为正确”,请阅读