【发布时间】:2020-07-24 22:31:33
【问题描述】:
我有两个文件,第一个是一个表单 (signup.php),它将用户插入的字段(名字、姓氏、用户名、电子邮件..等)发布到另一个包含错误处理程序 (Signup.chk. php) 使用 post 方法。如果输入出现错误,我希望 signup.chk.php 使用 GET 方法将用户插入的所有字段发送回 signup.php 文件,以重新显示带有错误和用户输入的表单。
我期待一个如下所示的 URL:
localhost/signup?signup=error&firstname=Joe&lastname=Doe&user=Jdoe1&email=Jdoe@abc.com
如果用户没有插入特殊字符作为输入,它可以正常工作。
如果用户插入 $ 或 & 作为输入的一部分,它将弄乱另一页上的 _GET 函数。
对 URL 值进行编码/解码以防止 XSS 并允许 signup.inc 文件正确接收 url 值并再次在表单字段中正确显示它的最佳方法是什么(即使包含 $&% ..等)
【问题讨论】:
-
不使用查询参数,而是将用户输入存储到会话变量中,然后在您的
signup.php上检索它。结帐these关于 W3Schools 课程的简单教程。