我有以下代码将一些数据发布到数据库中:
$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
在localhost和staging/production服务器上,但在这两个服务器上得到的输出是不同的。在本地主机上运行
PHP 5.3.2
,生产服务器具有
PHP 5.2.14
.
如果我想宣判
that's "ok"
,在生产时它节省
that\'s \"ok\"
,localhost生成正确的
that's "ok"
.
是什么导致的?可能是MySQL设置吗?我也试过用
mysqli
而不是
PDO
它也做同样的事情。