У меня есть следующий фрагмент кода, который отправляет некоторые данные в базу данных:
$post = trim( $post );
$post = htmlentities( $post, ENT_QUOTES, null, false );
$statement = "INSERT INTO table (row) VALUES (:message)";
$prepared_posts = $pdo->prepare( $statement );
$prepared_posts->execute( array( ':message' => $post ) );
У меня версия MySQL 5.1.47-community
как на локальном, так и на промежуточном / производственном сервере, но я получаю разные результаты на обоих из них. На локальном хосте у меня работает PHP 5.3.2
, рабочий сервер имеет PHP 5.2.14
.
Если я пытаюсь опубликовать предложение that's "ok"
, на производстве это экономит that\'s \"ok\"
, localhost выдает правильное that's "ok"
.
Что может быть причиной этого? Может ли быть какая-то настройка MySQL? Я также попытался использовать mysqli
вместо PDO
, и он делает то же самое.