Кодировать строку, используя подготовленный оператор PDO - PullRequest
0 голосов
/ 12 февраля 2019

У меня есть строка с именем ' Today's ', которую нужно экранировать и вставить в базу данных MySQL с помощью подготовленного оператора PDO.Я прочитал подготовленные PDO заявления автоматически экранирует и вставляет строки.Но он всегда вставляется как Today's. Может кто-нибудь сказать мне, что не так в моем коде.

$string ="Today's";
$sql = 'INSERT INTO table_name values (:friendlyName)';
$statement = $database->prepare($sql);
$statement->bindParam(':friendlyName', $string, PDO::PARAM_STR);
return $statement->execute();

Я также пытался использовать addslashes() из PHP.Но бесполезно

1 Ответ

0 голосов
/ 15 февраля 2019

моя проблема была решена. Проблема связана с функцией filter_input (), которая очищает ввод и кодирует кавычки. Я добавил флаг FILTER_SANITIZE_MAGIC_QUOTES вместо FILTER_SANITIZE_STRING

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...