<form name="form1" method="post" action="">
<textarea name="content" cols="50" rows="10"></textarea>
內容
<input type="submit" name="Submit" value="提交">
</form>
<?
if( $_POST )
{
//輸入
//沒進行任何操作
$a = $_POST['content'];
echo $a;
/*
js css a等html標簽代碼<script>alert('輸出內容');</script>
這裡彈出的一個js對話框
這裡會影響網站的安全與用戶體驗
*/
//進行安全過濾的函數
$b = php_sava($_POST['content']);
echo $b;
/*
這裡直接被過濾了,輸出了html代碼,而這裡也正是我們想要的結果
js css a等html標簽代碼 <script>alert('輸出內容');</script>
*/
//echo '<br>',$b;
}
function php_sava($str)
{
$farr = array(
"/s+/",
"/<(/?)(script|i?frame|style|html|body|title|link|meta|?|%)([^>]*?)>/isU",
"/(<[^>]*)on[a-zA-Z]+s*=([^>]*>)/isU",
);
$tarr = array(
" ",
"<\1\2\3>", //如果要直接清除不安全的標簽,這裡可以留空
"\1\2",
);
$str = preg_replace( $farr,$tarr,$str);
return $str;
}
// 本站原創作品,轉載注明來源 www.111cn.net
?>