重定向后在页面中保留php值
我在一个小网站上把值转换成md5。但我想保存数据库中输入的所有单词,以创建一种我以后可以使用的词典。当用户单击convert按钮时,页面将重定向以在表中插入数据,当它重定向回索引页面时,md5值消失,用户必须单击back按钮才能看到它。如何在页面重定向后使值返回到文本框中?您有几种方法来实现这一点重定向后在页面中保留php值,php,Php,我在一个小网站上把值转换成md5。但我想保存数据库中输入的所有单词,以创建一种我以后可以使用的词典。当用户单击convert按钮时,页面将重定向以在表中插入数据,当它重定向回索引页面时,md5值消失,用户必须单击back按钮才能看到它。如何在页面重定向后使值返回到文本框中?您有几种方法来实现这一点 将原始字符串和md5哈希保留在会话变量中。即使在重定向之后,它也将持续存在 不要使用process.php,而是使用index.php作为表单的目标。您可以检查$\u POST supergloba
- 将原始字符串和md5哈希保留在会话变量中。即使在重定向之后,它也将持续存在
- 不要使用process.php,而是使用index.php作为表单的目标。您可以检查$\u POST superglobal以查看是否是第一次加载页面,或是否显示以前发送的值
- 将传递给process.php的值放入重定向url的查询字符串中,因此 标题(“Location:index.php”)
header("Location: index.php?string=$mystring&md5=$mymd5");
不过要小心,您需要清理$mystring,否则您的表单将很容易成为XSS诱饵。谢谢@machineaddict
- 因为您在前面生成md5哈希,所以使用js和ajax将值发送到process.php,而不必离开索引。如果您熟悉像jQuery这样的简单js库,那么这是最优雅的
PD:c'mon S.O.,列出中断代码突出显示?这只是为了了解一种方法: 在
process.php
文件中:
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['mott'])) {
$value = $_POST['mott'];
$md5 = md5($value);
// code to insert the value and the md5 in database. remember to escape the string
//redirect the user
header('Location: showmd5.php?md5=' . $md5);
exit;
}
<?php
$md5 = isset($_GET['md5']) ? $_GET['md5'] : '';
// check this md5 in database and show the value
您想保留人们作为潜在密码输入的值。。。?嗯,我想创建一种字典,我可以用它来为以后制作一个md5解密程序,这不是犯罪。我们都知道MD5和密码散列一样不安全,帮助人们证明不安全对每个人都有好处。好吧,你已经知道了MD5的价值和作用。您只需在url中使用md5重定向用户。+1这是我们希望看到其他s.O.成员的态度。请注意,在url中使用
$mystring
而不转义可能导致XSS。