使用超级全局有$_SERVER['PHP_SELF']
什么好处?
$_SERVER['PHP_SELF']
没有(或不应该)包含域名.它包括调用脚本的url的路径组件.
它的用途主要是引入跨站点脚本漏洞.
您可以使用它来填写表单标记的action属性:
如果我然后用以下内容调用您的页面
your-file-that-uses-php-self.php/(">)
在parens的所有东西都是urlencoded然后我可以将代码注入你的页面.如果我将该链接发送给其他人,那么我将在您的浏览器中从您的网站执行该代码.
编辑:
为了使其免受XSS攻击,请使用htmlspecialchars
:
编辑2:由于此$_SERVER
变量在跨网络的示例中经常被滥用,所以不要错过阅读HTML引用:由于该URI是最短的相对URI,您可以将action属性留空: