PHP_SELF与htmlspecialchars的奇怪行为

PHP_SELF与htmlspecialchars的奇怪行为,php,htmlspecialchars,Php,Htmlspecialchars,我阅读了所有关于PHP_SELF和htmlspecialchars的帖子,并根据这些帖子进行了阅读。但我不确定我网站的行为是否正确 下面是我的代码 <form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>" method="post" id="enquiryform" name="enquiryform"> 您当前的实现是正确的。如果不使用htmlspecialchars,则可能会出现以下情况

我阅读了所有关于PHP_SELF和htmlspecialchars的帖子,并根据这些帖子进行了阅读。但我不确定我网站的行为是否正确

下面是我的代码

<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>" method="post" id="enquiryform" name="enquiryform">

您当前的实现是正确的。如果不使用
htmlspecialchars
,则可能会出现以下情况:

http://mydomain.com/enquiry.php/"><script>alert('hacked')</script>
http://mydomain.com/enquiry.php/“>警报('黑客')
在您的场景中,您所缺少的只是突破当前标记的
“>


htmlspecialchars所做的是转义潜在的恶意字符串,以便它不能被解释为原始HTML。

您正在检查
enquiry.php
index.php
?“当我键入url时”在哪里?
http://mydomain.com/enquiry.php/"><script>alert('hacked')</script>