php 是否可以 post 重定向 get with form action = $_SERVER['PHP_SELF']

php is it possible to post redirect get with form action = $_SERVER['PHP_SELF']

我在我的表单中使用此代码

form action="<?php $_SERVER['PHP_SELF']?>" method="post"

当用户提交表单数据时,我是否可以POST-Redirect-GET?我试图避免用户点击刷新时重复提交表单。

喜欢这个example .

如果我在表单操作中使用 PHP_SELF,我看不出这将如何工作。有什么想法吗?

  1. 这样使用 PHP_SELF 是可以利用的,it allows for XSS。只需将操作留空,如 action="",表单将提交到当前所在的页面。

  2. 如果您想防止通过刷新重复提交,请在收到表单提交后发出 302 重定向。

    header("Location: /somewhere_else.php", true, 302);