我在html上的textBox上有一个值:
<input type="text" id="Key" name="Key" required />
然后我发送动作到php,我从php执行此操作:
<?php
header("location:./setupDatos.html");//echo "2"; //first time activation
echo '<input type="text" value="' . $varKey. '" />';
问题是,如果我删除此行
header("location:./setupDatos.html");//echo "2"; //first time activation
它显示了一个空白页面,其中包含我发送给php的密钥(正如预期的那样) 但是对于该行,它将更改为新的html,并且发送的密钥的输入无处可寻。如何将该值从第一个html发送到下一个html?
答案 0 :(得分:0)
HTTP协议是无状态的,这意味着它无法记住&#34;#34;较旧的帖子数据。但是,您可以使用会话来模拟状态。 尝试做类似的事情:
<?php
session_start();
$_SESSION["oldpostdata"] = $_POST;
header("location:./setupDatos.html");
不确定这里有什么意义。一个html页面通常不能进行任何服务器端处理。但是,如果您能够访问旧帖子数据,请执行以下操作:
。<强> setupDatos#&34; HTML&#34; 强>
<?php
session_start();
$oldPostData = $_SESSION["oldPostData"];
unset($_SESSION["oldPostData"]); // To only "flash" the data and not have it persist
$id = $oldPostData["Key"]; // Probably
&#34;转发&#34;的替代方式从this question获取的帖子数据:
<!DOCTYPE html>
<html>
<body onload="document.forms[0].submit()">
<form action="new-location.php" method="post">
<?php foreach( $_POST as $key => $val ): ?>
<input type="hidden" name="<?= htmlspecialchars($key, ENT_COMPAT, 'UTF-8') ?>" value="<?= htmlspecialchars($val, ENT_COMPAT, 'UTF-8') ?>">
<?php endforeach; ?>
</form>
</body>
</html>