FIEO - 滤波器输入转义输出 - 使用FILTER和PDO

时间:2013-02-11 16:59:46

标签: php html

假设我有一个输入值为“test”的文本框。

过滤/清理后(例如FILTER_SANITIZE_STRING),该值将使用"test"转换为:PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8',相同的值将保存在数据库中,无需进一步更改。

那么,如果我使用utf8编码类型的html文件,我是否必须转义输出? 我想答案是:是的,你需要逃避它!

如果我使用htmlspecialchars();,则文本将呈现在数据库上,这是一个问题。嗯,根据我的经验,我发现在应用html_entity_decode()函数后,从数据库中检索的数据将转换为“test”。

这意味着如果我直接在数据库中保存了一些内容,如:

<script type="text/javascript">alert('test')</script>

将作为JavaScript处理。

0 个答案:

没有答案