php过滤表单提交的html等危险代码,php过滤表单提交
Jun 13, 2016 am 09:22 AMphp过滤表单提交的html等危险代码,php过滤表单提交
PHP过滤提交表单的html代码里可能有被利用引入外部危险内容的代码。例如,有些时候用户提交表单中含有html内容,但这可能造成显示页面布局混乱,需要过滤掉。
方法一:
复制代码 代码如下:
//get post data
function PostGet($str,$post=0)
{
empty($str)?die('para is null'.$str.'!'):'';
if( $post )
{
if( get_magic_quotes_gpc() )
{
return htmlspecialchars(isset($_POST[$str])?$_POST
[$str]:'');
}
else
{
return addslashes(htmlspecialchars(isset($_POST[$str])?
$_POST[$str]:''));
}
}
else
{
if( get_magic_quotes_gpc() )
{
return htmlspecialchars(isset($_GET[$str])?$_GET[$str]:'');
}
else
{
return addslashes(htmlspecialchars(isset($_GET[$str])?
$_GET[$str]:''));
}
}
}
方法二:
复制代码 代码如下:
function uhtml($str)
{
$farr = array(
"/\s+/", //过滤多余空白
//过滤 <script>等可能引入恶意内容或恶意改变显示布局的代码,如果不需要插入flash等,还可以加入<object>的过滤 <br />
"/<(\/?)(script|i?frame|style|html|body|title|link|meta|\?|\%)([^>]*?)>/isU", <br />
"/(<[^>]*)on[a-zA-Z]+\s*=([^>]*>)/isU",//过滤javascript的on事件 <br />
); <br />
$tarr = array( <br />
" ", <br />
"<\1\2\3>",//如果要直接清除不安全的标签,这里可以留空 <br />
"\1\2", <br />
); <br />
$str = preg_replace( $farr,$tarr,$str); <br />
return $str; <br />
} <br />
</script>
很实用的方法吧,希望对大家能有所帮助
使用PHP,过滤表单的HTML与非法的字符
你没开启魔法函数, 你可以自己使用函数自动转义就可以了.
使用:addslashes 这个函数来转义一下客户端的数据,例如:
$post = addslashes($_POST['value']);
这个时候显示的就是转义后的文子了!
PHP提交html的表单
你的HTML代码有错。
。。。你不用

人気の記事

人気の記事

ホットな記事タグ

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法
