如何停止PHP表单重定向中的XSS


How to stop XSS in PHP form redirect

我需要知道在我的网站上防止XSS问题的最佳方法。

<form action="<?php echo htmlspecialchars($page)?>" method="post">
<input class="btn btn-default" type="submit" value="Continue">
</form>

$page值取自url:

www.xyz.com/redirect.php?page=home.php

获取$page值的PHP代码:

$page=$_GET['page'];

导致XSS:的链接

www.xyz.com/redirect.php?page=javascript:alert(document.cookie)

感谢

<?php
$page= filter_input(INPUT_GET, 'page', FILTER_SANITIZE_SPECIAL_CHARS);
//or
// $page= strip_tags($_GET['page']);
?>
<form action="<?=$page?>" method="post">
<input class="btn btn-default" type="submit" value="Continue">
</form>