我正在尝试将数据从一个网站填充到另一个网站: a.html:
<form action="b.php" method="post"> <textarea id="myProjects" name="mp"></textarea> <input id="submit" type="submit" value="Submit" /> </form>
在b.php中:
<?php $content=$_POST['mp']; echo "you entered ".$content; ?>
这以一种非常奇怪的方式工作,当我单击提交按钮时,我被定向到 b.php 页面,并且我可以看到我输入的内容。但是,如果我重新加载此页面,而不是刷新,我的内容就会消失,并抛出 Warning: Undefined array key "mp"
看起来从 $_POST 接收到的数据是“临时”存储的。我是 PHP 新手,所以我不知道如何弄清楚。
一般来说,您想要做的是将 $_POST['mp'] 的值存储到 $_SESSION 变量中,以便它从一个页面请求持续到下一个页面请求。
但是,直接操作这些变量通常是不好的做法。除非您清理用户输入,否则您将面临无数的脚本攻击。尽管涉及一些学习,但您最好使用已建立的 PHP 框架(例如 Laravel),该框架具有全套验证功能,并为您管理启动会话的过程。一个好的框架还会在许多其他方面为您提供帮助。
您可以使用 PHP SESSION 功能来保持数据持久性:
在b.php中: