PHP和MySQL——在绑定查询中的变量之前,我应该转义引号吗?

PHP和MySQL——在绑定查询中的变量之前,我应该转义引号吗?,php,mysql,zend-framework,bind,Php,Mysql,Zend Framework,Bind,仅仅使用bindParam绑定变量还不够吗?我们也需要添加斜杠吗?如果我输入mike's,它将作为mike\\\\'s进入数据库。如何防止这种情况发生?绑定变量之前不需要转义引号。只需确保在PHP配置中禁用了,这可能是导致双重转义的原因 绑定变量之前不需要转义引号。只需确保在PHP配置中禁用了,这可能是导致双重转义的原因 您不需要转义,我建议将您的文本存储为编码的utf8_encode/decode您不需要转义,我建议将您的文本存储为编码的utf8_encode/decode没关系,代码中的某个

仅仅使用bindParam绑定变量还不够吗?我们也需要添加斜杠吗?如果我输入
mike's
,它将作为
mike\\\\'s
进入数据库。如何防止这种情况发生?

绑定变量之前不需要转义引号。只需确保在PHP配置中禁用了,这可能是导致双重转义的原因

绑定变量之前不需要转义引号。只需确保在PHP配置中禁用了,这可能是导致双重转义的原因

您不需要转义,我建议将您的文本存储为编码的utf8_encode/decode

您不需要转义,我建议将您的文本存储为编码的utf8_encode/decode

没关系,代码中的某个地方有一个额外的mysql_escape_字符串,这导致了问题:(

没关系,代码中的某个地方有一个额外的mysql\u escape\u字符串,这导致了问题:(

它被禁用。它仍然添加了双引号:(我还使用set\u magic\u quotes\u runtime(0)禁用了它);您的查询看起来像什么?使用引号,不需要引号。它被禁用。它仍然添加了双引号:(我还使用set_magic_quotes_运行时(0)禁用了它;您的查询是什么样子的?使用,不需要引号。