php - 保护我的 html 表单免受注入(inject)

标签 php mysql html

我的网站上有一个文本框,允许使用 html 格式来让用户使文本更美观。

我使用此代码来保护我的数据库的大部分输入。

function clean($str) {
    $str = @trim($str);
    if(get_magic_quotes_gpc()) {
        $str = stripslashes($str);
    }
    return mysql_real_escape_string($str);
}

我不希望它做的是删除 html 元素,如 <p><strong>

有没有更好的方法来保护文本区域中的输入?

最佳答案

我只用mysql_real_escape_string()将数据插入我的数据库并删除类似 <script> 的标签时(和其他一些)从数据库中提取后。我认为那里有一些正则表达式。

关于php - 保护我的 html 表单免受注入(inject),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8021609/

相关文章:

javascript - 如果其中的单元格包含特定单词,则隐藏表格行

php - 如何在代码点火器模型中跨多个函数实现数据库锁定?

html - 无法选择 3d css 立方体面内的元素。奇怪的

php - 这会让搜索引擎为我的内容编制索引吗?

php - 通过 KnpPaginatorBundle 使用多个模板

准备好的语句导致错误的 PHP MySQLi 问题

mysql - #1235 - 此版本的 MySQL 尚不支持 'LIMIT & IN/ALL/ANY/SOME subquery'

mysql - 设置列以便仅允许 2 个值中的 1 个

jQuery 使用 $(selector).each 在前面添加多个 div

javascript - 如何自定义对 window.location.href 的所有分配?