php - Double 转义字符串是否错误?

标签 php mysql string escaping

我有一个数据库类,它在使用 mysqli_real_escape_string() 构建查询之前自动转义输入字符串。 但可能是在脚本中,一个字符串被转义然后传递给再次转义它的数据库类。那会是错的吗?会发生什么?

最佳答案

由于您没有很好的方法来告诉其他端(当您从数据库中提取数据时)它被转义了多少次,不一致的双重转义字符串将会结束在你的最终数据中转义了以前没有的东西 - 因为你将添加两层转义但只取消转义一层。

基本上,您需要有一个恒定的转义水平 - 要么总是转义一次(并取消转义一次),要么总是转义两次(并取消转义两次)等等 - 但永远不要混合。

关于php - Double 转义字符串是否错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4171318/

相关文章:

php - 在 PHP AWS Elastic Beanstalk 上安装 ElastiCache 集群客户端(不创建资源)

php - jQuery/PHP/MySQL 提交隐藏的选择下拉列表

java - mysql 查询不是在 java 中执行而是在我的 SQLYog 中执行

iphone - 带数字的字符串排序 last objective c

java - 这个生成了多少 Java 对象 - new String ("abcd")

php - 用mysql数据替换函数中的数组

php - 如何使用php+mysql解码图像流并将流存储到数据库

MYSQL 排序和分隔

python - 如何使用python在mysql中使用rowcount

C - 结构体字符串元素被连接