我做了this小网站将值转换为md5。但我想保存在我的数据库中输入的所有单词,以创建一种我以后可以使用的字典。当用户点击转换按钮时,页面重定向以在表格中插入数据,当它重定向回索引页面时,md5值消失,用户必须单击后退按钮才能看到它。如何在页面重定向后将文本框中的值返回?
答案 0 :(得分:1)
你有几种方法可以做到这一点
将原始字符串和md5哈希保存在会话变量中。它会在重定向后持续存在。
不使用process.php,而是使用index.php作为表单的目标。您可以查看$ _POST超全局,看看您是第一次加载页面,还是显示以前发送的值。
将传递给process.php的值放在重定向网址的查询字符串中,而不是
标题("位置:index.php");
header("Location: index.php?string=$mystring&md5=$mymd5");
但是要小心,你需要消毒$ mystring或者你的表格将是一个简单的XSS诱饵。谢谢@machineaddict。
PD:c' mon S.O.,列出突破代码突出显示?
答案 1 :(得分:1)
这只是为了理解这样做的一种方法:
在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;
}
showmd5.php
文件:
<?php
$md5 = isset($_GET['md5']) ? $_GET['md5'] : '';
// check this md5 in database and show the value