php - 在 PHP 中转义 MySQL 查询 - mysql_query() 更新不执行任何操作

标签 php mysql database

在我的画廊 php 脚本中,我需要更新我的表格。
我正在使用以下代码,但代码没有执行任何操作:

mysql_query(' "update gallery_photos set photo_caption = replace(photo_caption,"\\\'","\'") "');

您能告诉我如何让它发挥作用或为我指明正确的方向吗?

最佳答案

尝试

mysql_query("UPDATE gallery_photos SET photo_caption = REPLACE(photo_caption,'\\\'','\'') ");

您以错误的方式混合了转义和 ' 和 "。

问题是,有两个转义:一次在 PHP 中,然后在 MySQL 中。

因此 '\\\\' 在 PHP 中变为“\\”,然后在 MySQL 中变为“\”。

现在我发现甚至 StackOverflow 也为我们破坏了它,因为它也未转义。所以要在这里写 "\\" 我必须写 "\\\\" :)

关于php - 在 PHP 中转义 MySQL 查询 - mysql_query() 更新不执行任何操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17585598/

相关文章:

php - Laravel用groupBy()对每个组的 Eloquent 返回计数

php - 创建动态搜索结果和过滤器 - 我应该使用 Javascript 吗?

java - Hibernate 查询中的异常 - java.lang.IllegalArgumentException

sql - 在 SQLite 中分页结果的最佳方式

database - 将唯一的 Redis 实例推送到中央 Redis?

php - 使用 Ajax 在过滤器中显示结果数的最佳方法

mysql - 使用子字符串后mysql查询中出现多个警告

mysql - MySQL中按组计算总计

mysql - MySQL 中的用户是谁?

php - 这个查询有什么问题?我正在尝试根据第二个表中列的值更新列值