查询到PDO导致不需要的转义

我最近一直在将所有旧的mysql_query调用切换到PDO。 我遇到了mysql_query配置中不存在的问题。 当我尝试用引号将变量输入到数据库中时,它在我的数据库中显示为转义。 我在我的php.ini文件中禁用了魔术引号。

$myString = "Enter 'one' now";
$sql=$pdo->prepare("UPDATE $tbl_name SET string=:myString WHERE etc...);
$sql->execute(array(':myString' => $myString));

此更新为

Enter 'one' now

我需要的是

Enter 'one' now

在我切换到PDO之前,这并没有发生。 有没有办法解决这个问题而不会失去安全性?

谢谢!


您的服务器上启用了魔术引号,它的PHP文档告诉您可以关闭它的各种方法。

关于您的评论:您也可以尝试使用以下命令在您的主目录中创建一个php.ini文件:

magic_quotes_gpc = off
magic_quotes_runtime = off
magic_quotes_sybase = off

如果这不起作用,请联系您的主机以解决问题。

链接地址: http://www.djcxy.com/p/93663.html

上一篇: query to PDO causes unwanted escaping

下一篇: php pdo double quotes also getting escaped