-2

我想在没有 pdo 或准备语句的情况下保护我的 sql 查询,
这个函数可以吗?

function sql_escape($string)
{
    $string =   iconv(mb_detect_encoding($string),'UTF-8//IGNORE',$string);
    $string =   addslashes($string);
    $string =   preg_replace('/[\x00-\x1F\x80-\xFF\0xB4\0x60\0x96\0x97\0x95\0x94\0x93\0x92\0x91\0x84\0x82\0x3B\0x8A]/', '', $string);
    $string =   addslashes($string);
    return $string;
}
4

2 回答 2

4

不,使用提供的转义函数。因为mysqli这是mysqli_real_escape_string.

不要重新发明轮子,特别是如果它是一个非常复杂的轮子,并且您不确定它是否适用于所有条件。

于 2013-07-02T17:19:34.410 回答
-1

像许多 PHP 人一样,您将转义与防止注入混淆。所以,总有一天你的网站会被黑,你最终会来这里学习一些有用的东西。

于 2013-07-02T20:40:49.970 回答