相关疑难解决方法(0)

如何清理字符串以避免SQL注入和最常见的攻击类型?(在PHP中)

有没有办法以尽可能少的代码为SQL注入和最常见的攻击形式过滤字符串?

在我的脚本中我使用以下内容,我想知道它是否相当安全以及是否有其他人有建议:

$cleanName    = htmlspecialchars(addslashes($dirtyName));
Run Code Online (Sandbox Code Playgroud)

看看我如何过滤html字符和引号和双引号.

注意:我正在使用addslashes()而不是mysql_real_escape_string()因为我不想将我正在使用的数据库硬编码到我的代码中.

这个可以吗?

提前致谢

php security user-input sql-injection filter

2
推荐指数
1
解决办法
1937
查看次数

PHP转义输入变量

我正在使用以下功能来保护我的数据库免受注入攻击等gets.

function filter($data) {
    global $db;
    $data = trim(htmlentities(strip_tags($data)));
    if (get_magic_quotes_gpc())
        $data = stripslashes($data);

    $data = $db->real_escape_string($data);

    return $data;
}

foreach($_GET as $key => $value) {
    $data[$key] = filter($value);
}
Run Code Online (Sandbox Code Playgroud)

问题是,我想不仅过滤$_GET,但$_POST也.怎么做?

我可以重新分配值$_GET$_POST过滤后?我的意思是$_GET[$key] = filter($value);代替$data[$key] = filter($value);..

php

0
推荐指数
1
解决办法
887
查看次数

标签 统计

php ×2

filter ×1

security ×1

sql-injection ×1

user-input ×1