PHP:过滤我的输入字段

标签 php mysql pdo

我如何过滤我的输入字段.. 例如传入的 $_POST、$_GETs 等..

我在 PDO 中使用准备好的语句,所以我只是将 $_POST 直接传输到 PDO(不再执行 mysql_real_escape_string)。

但是示例我将一个 $_POST var 传输到一个 $_SESSION 并且现在我直接这样做,但是我不应该以某种方式过滤它吗? PDO只是针对数据库的,那么“一般”呢?

最佳答案

也许你喜欢这个。不完美,但很好。

  function clear($data)
    {

        $data = addslashes($data);
        $data = strip_tags($data);
        $data = mysql_real_escape_string($data);
        $bir = array('/\//', '/\^/', '/\./', '/\$/', '/\|/', '/\(/', '/\)/', '/\[/', '/\]/',
            '/\*/', '/\+/', '/\?/', '/\{/', '/\}/', '/\,/');
        $iki = array('\/', '\^', '\.', '\$', '\|', '\(', '\)', '\[', '\]', '\*', '\+', '\?',
            '\{', '\}', '\,');
        $data = preg_replace($bir, $iki, $data);
        return $data;

    }

// USAGE
clear($_GET[]) or clear($_POST[])

此外,您必须使用 is_numeric、is_boolen、is_string 函数检查变量。

关于PHP:过滤我的输入字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4661789/

相关文章:

php - 将数据插入 Wordpress 数据库时出错。 SQLSTATE[HY093] : Invalid parameter number

php - SQL 性能 - SELECT COUNT 与 SELECT id 与 LIMIT 1

javascript - 50k 点的图形库? PHP 或 JavaScript

php - yii2 如何获取选定的下拉值

MySQL 左外连接返回 NULL 值

c# - 将属性添加到关联

php - 参数编号无效,联合选择

php - 写入数据库失败 : CakePhp Tuto

php - 使用 php (撇号)将 Textarea 中的文本保存到 mysql 数据库中

php - Symfony 3 Doctrine 未定义索引