【发布时间】:2014-04-14 01:51:53
【问题描述】:
通过研究清理 HTML 表单数据的最佳方法,我发现您应该“过滤输入”和“转义输出”。
不幸的是,关于这个主题的大部分信息都是旧信息(PHP 4.x、2009 等)。许多网页推荐mysql_real_escape_string,从 PHP 5.5.0 起已弃用。
我使用的是 PHP 5.5.x、Apache Web 服务器和 MySQL 数据库。我正在使用 PDO 准备好的语句。所有字符集都是 UTF-8。
我查看了 PHP Sanitize 过滤器(可在此处找到:http://www.php.net/manual/en/filter.filters.sanitize.php)。
我过滤了所有输入并转义了除我的文本区域之外的所有输出。文本区域供用户“描述事件”。它们相当大,有 500 个字符。这是我觉得最容易受到恶意代码攻击的地方。
我对所有输入做的第一件事是trim() 函数。
在输入上运行的最佳过滤器是什么?
我应该如何转义输出?
我希望输出可读。
提前谢谢你。
【问题讨论】:
-
这取决于您的需求。您是否将文本区域输入保存在数据库中,其他文本文件?您想将其显示为纯文本、HTML 还是使用自己的“代码”系统,如 BBCode?span>
标签: php html mysql forms sanitization