2

在我的画廊 php 脚本中,我需要更新我的表格。
我正在使用以下代码,但代码什么也不做:

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

你能告诉我如何让它工作或指出我正确的方向吗?

4

3 回答 3

4

尝试

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

你有转义和 ' 和 " 以错误的方式混合。

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

所以'\\\\'在 PHP 中变成“\\”,然后在 MySQL 中变成“\”。

现在我发现即使是 StackOverflow 也为我们破坏了它,因为它也没有转义。所以要写"\\"在这里,我必须写"\\\\":)

于 2013-07-11T05:32:33.953 回答
1

尝试这样做

$que = mysql_query("select * from gallery_photos");
$fet = mysql_fetch_object($que);
$pc  = $fet->photo_caption;
$pc2 = replace($pc,"'\\\'","'\'") ;

$update = mysql_query("update gallery_photos set photo_caption='$pc2'");

if (!$update) {
  echo "Error : <br>";
  echo "".mysql_error()."";
}else {
  echo "Updated ..!!";
}
于 2013-07-11T07:35:59.527 回答
1

尝试在开头和结尾删除单引号。

mysql_query("update gallery_photos set photo_caption = replace( photo_caption,'\\\'','\'') ");
于 2013-07-11T05:25:54.510 回答