Как удалить обратную косую черту из пользовательского ввода - PullRequest
0 голосов
/ 29 ноября 2010

Я получаю размытие к этому: P

function escape($string)
{
    $string = stripslashes($string);

    if (function_exists('mysql_real_escape_string')) {
       return mysql_real_escape_string($string, $this->connection);
    } else {
        return mysql_escape_string($string);
    }
}

$content = '""""""test\'te%%%%st`test_huhu\'_';

echo '<br>output 1 = '.stripslashes($content);
echo '<br>output 2 = '.$db->escape($content);

Выход

output 1 =  """"""test'te%%%%st`test_huhu'_
output 2 =  \"\"\"\"\"\"test\'te%%%%st`test_huhu\'_ 

Как сделать output 2 таким же, как output 1, и почему output 2 будет таким?

1 Ответ

4 голосов
/ 29 ноября 2010

mysql_real_escape_string экранирует все " и ', поэтому вы получаете все эти слэши.Если вы удаляете косые черты перед тем, как поместить данные в базу данных, вы открыты для атак, что, на ваш взгляд, очень плохо для безопасности?

...